Andy,

On Wed, Sep 24, 2014 at 08:47:18AM -0700, Andy Bierman wrote:
> I think the concept of "shadowing the local config" makes this behavior
> confusing.
> If the ephemeral datastore instances remains after the config datastore
> instances are deleted, how is that really shadowing?
> 
> IMO, shadowing only occurs when the ephemeral datastore is edited.
> It is used as a snapshot to reduce the I2RS payload size (shadow patch?.
> But the data that gets created in the ephemeral datastore is complete and
> self-contained.  The actual data structures are implementation details.
> Maybe the local config is cloned, maybe it is shadowed.

I agree that this begs the semantics a bit.  Is it a shadow or a snapshot?
Each one has impact.

In the snapshot case, if you delete stuff from the local config, do we
effectively "reapply the ephemeral patch" on top of it?  Does the ephemeral
datastore get notified that the local config has changed and is permitted to
let that operation fail?

Part of the motivation will come from where your box gets its state from.
If it's from reading the ephemeral config, then local config semantics with
regard to snapshot vs. shadow become very important.

> 
> -----
> >
> > My second thought is would we ever want to provide filtering in the
> > conditional checks (must/when) in the ephemeral datastore based on the
> > underlying source of the data?  Since local config would be shadowed into
> > the ephemeral datastore, do we want the ability to match on the source of
> > the node set under evaluation?
> >
> 
> Each datastore should only validated against itself, or else the
> XPath implementation would be even more complicated.  If the ephemeral
> datastore
> is supposed to be fast (I remember 5000 updates a second from the BoF)
> then running validation tests across multiple datastores constantly will
> not help.
> 
> Or do you mean flag a must/when as "do-not-use" in the ephemeral datastore?
> If that were possible it would help speed up the server.

I'm thinking of it as a form of meta-data, just like creator (user) would
be.  Thus, "datastore='ephemeral'" or "datastore='config'" type semantics.

I'm not currently arguing that this has a use case yet.

-- Jeff

_______________________________________________
i2rs mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/i2rs

Reply via email to