Oh so that’s really different than option 1 I wrote.
You are saying that I have a capability of creating shards by taking different 
yang trees and combining them into shards?.
My smallest unit of work is a yang tree ?

I still don’t see how it is done.
Let’s say I wanted to take the 2 trees in my example and put them in one shard 
only for them.
How will module-shards.conf look like and how will modules.conf will look like?
If you have an example of that in some WIKI, you can just point me to that.


From: Tom Pantelis [mailto:[email protected]]
Sent: Wednesday, January 11, 2017 4:58 PM
To: Sela, Guy <[email protected]>
Cc: Robert Varga <[email protected]>; Kochba, Alon <[email protected]>; Williams, Marcus 
<[email protected]>; Daniel Farrell <[email protected]>; odl netvirt 
dev <[email protected]>; 
[email protected]; [email protected]
Subject: Re: [netvirt-dev] [controller-dev] [mdsal-dev] Netvirt Scale tests: 
OutOfMemory from datastore

Shards are (currently) statically configured in module-shards.conf. There's 3 
OOB - "topology", "inventory", and "default". Anything not under topology and 
inventory go into the default shard.

On Wed, Jan 11, 2017 at 9:51 AM, Sela, Guy 
<[email protected]<mailto:[email protected]>> wrote:
So what you mean is that if I create a yang tree in a yang file, it will 
ultimately translate into maximum two shards?
One for the operational and one for the configuration?

So for example elan.yang:
    container elan-interface-forwarding-entries {
        config false;

        list elan-interface-mac {
            key "elan-interface";
            description "All the MAC addresses learned on a particular elan 
interface";
            max-elements "unbounded";
            min-elements "0";
            leaf elan-interface {
                type leafref {
                    path "/if:interfaces/if:interface/if:name";
                }
            }

            uses forwarding-entries;
        }
    }

container elan-tag-name-map {
        config false;

        list elan-tag-name {
            key elan-tag;
            leaf elan-tag {
                type uint32;
            }

            leaf name {
                type string;
                description
                "The name of the elan-instance.";
            }
        }
    }

These 2 only live in the operational (Because config false), so it means 2 
Shards ?

-----Original Message-----
From: Robert Varga [mailto:[email protected]<mailto:[email protected]>]
Sent: Wednesday, January 11, 2017 4:45 PM
To: Sela, Guy <[email protected]<mailto:[email protected]>>; Tom Pantelis 
<[email protected]<mailto:[email protected]>>; Kochba, Alon 
<[email protected]<mailto:[email protected]>>
Cc: Williams, Marcus 
<[email protected]<mailto:[email protected]>>; Daniel Farrell 
<[email protected]<mailto:[email protected]>>; odl netvirt dev 
<[email protected]<mailto:[email protected]>>;
 
[email protected]<mailto:[email protected]>;
 
[email protected]<mailto:[email protected]>
Subject: Re: [netvirt-dev] [controller-dev] [mdsal-dev] Netvirt Scale tests: 
OutOfMemory from datastore
On 01/11/2017 03:42 PM, Sela, Guy wrote:
> I have some blurriness about what a shard is, that I still didn’t
> figure out.
>
> I have some guesses:
>
> 1)      Every yang tree == one shard.
>
> 2)      Shard can be a collection of a number of yang trees.
>
> 3)      None of the above?
>

Mostly 1. Each shard encapsulates a single ShardDataTree, which encapsulates a 
single DataTree. The sum of shards is presented as the data store (CDS).

Regards,
Robert

_______________________________________________
controller-dev mailing list
[email protected]
https://lists.opendaylight.org/mailman/listinfo/controller-dev

Reply via email to