Subject: Re: [Netmod-ver-dt] What does it look like to treat the primary and secondary schema the same

From: "Reshad Rahman (rrahman)" <[email-masked]>
Date: Thu, 30 Jan 2020 02:27:53 +0000

Hi Rob,

Thanks for the good progress, I’ve just gone through it once, will try to go over it again before the meeting tomorrow.

Question on the vendor_versioning example: should vendor-schema@VersionA really be compatible with vendor-schema@VersionB and vendor-schema@VersionC? Only one of the 3 can be selected at any time.

Regards,
Reshad.

From: Netmod-ver-dt <[email-masked]> on behalf of "Rob Wilton (rwilton)" <rwilton=[email-masked]>
Date: Monday, January 27, 2020 at 1:31 PM
To: "[email-masked]" <[email-masked]>
Subject: [Netmod-ver-dt] What does it look like to treat the primary and secondary schema the same

I've updated the model and examples if the primary and secondary schema are logically the same, other than how they are selected (i.e. explicitly chosen by the client or implicit default).  I.e. this is what Jason was suggesting on Thursday's meeting.

- I've updated the schema-selection YANG module to reflect what this might look like.
- I renamed "primary" schema back to "default"
- The default schema can also be explicitly chosen by name
- I've added a flag to indicate that a schema is "partial", i.e. it does not represent a full configurable schema of the device.  I think that this information is important if we lose the split between primary and secondary schema.
- We should add an explicit statement that writing configuration in any selected schema-set MUST follow standard NETCONF/RESTCONF protocol configuration mechanisms?
- Writing configuration in one selected schema-set MAY modify configuration in a different schema-set (e.g. if two versions of a schema are being used)?
- Selectable schema-sets (including the default) may be explicitly configured, or set via the change-schema-set RPC that allows the selectable schema-sets to changed at the same time as providing configuration in the new schema.
  - Servers MUST reject changes to the selectable schema-sets if it would cause non schema-set configuration to change on the device.  However, the change-schema-set RPC can be used to both change a schema-set and update the configuration of the device at the same time.

Stuff that is outside the scope of the specification:
- How configuration is persisted.
- What happens if the software on the device is upgraded.

Basically, I think that this could work.  I’m not sure whether this ends up being better or simpler than the previous model + examples.  Thoughts welcome.

See attached for update examples, YANG model and YANG model tree output.

Thanks,
Rob

---

From: "Rob Wilton (rwilton)" <[email-masked]>
Date: Thu, 30 Jan 2020 11:03:11 +0000

Hi Reshad,

The example was intended to allow clients to choose one version as a primary schema, and the others as secondary schema.

If the device only wants to allow a single schema to be selected then yes, I think that the compatible-with entries would be removed, and perhaps it would limit the length of <schema-set-selection> to only 1 entry.

Another example that I gave with the previous model version was to allow a client to choose a single older version of the schema, but allow it to be read back configuration (but not write) using later versions of the schema.  The version of the model below can still support this, but it ends up being a bit more convoluted, and requires two entries for each schema-set, one that is writable, and one that is read-only.

Thanks,
Rob

From: Reshad Rahman (rrahman) <[email-masked]>
Sent: 30 January 2020 02:28
To: Rob Wilton (rwilton) <[email-masked]>; [email-masked]
Subject: Re: [Netmod-ver-dt] What does it look like to treat the primary and secondary schema the same

Hi Rob,

Regards,
Reshad.

From: Netmod-ver-dt <[email-masked]<mailto:[email-masked]>> on behalf of "Rob Wilton (rwilton)" <rwilton=[email-masked]<mailto:rwilton=[email-masked]>>
Date: Monday, January 27, 2020 at 1:31 PM
To: "[email-masked]<mailto:[email-masked]>" <[email-masked]<mailto:[email-masked]>>
Subject: [Netmod-ver-dt] What does it look like to treat the primary and secondary schema the same

Thanks,
Rob

---

From: "Reshad Rahman (rrahman)" <[email-masked]>
Date: Thu, 30 Jan 2020 13:55:34 +0000

Hi Rob,

Ack, I get the intent now. Maybe then the “compatible-with” isn’t the best term since 3.0.0 isn’t backwards-compatible with 1.4.5, so compatible-with can lead to confusion. And the current description says “…MAY be selected at the same time as this schema”, you can’t have multiple versions of same schema selected at the same time?

Regards,
Reshad.

From: "Rob Wilton (rwilton)" <[email-masked]>
Date: Thursday, January 30, 2020 at 6:03 AM
To: "Reshad Rahman (rrahman)" <[email-masked]>, "[email-masked]" <[email-masked]>
Subject: RE: [Netmod-ver-dt] What does it look like to treat the primary and secondary schema the same

Hi Reshad,

Thanks,
Rob

Hi Rob,

Regards,
Reshad.

Thanks,
Rob

---

From: "Rob Wilton (rwilton)" <[email-masked]>
Date: Thu, 30 Jan 2020 14:00:21 +0000

Hi Reshad,

Good points.  We should fix/clarify both of those.

You can’t have two schema selected within a given client session, but two separate client sessions, both connected to the server, can select different schema-sets.

Thanks,
Rob

From: Reshad Rahman (rrahman) <[email-masked]>
Sent: 30 January 2020 13:56
To: Rob Wilton (rwilton) <[email-masked]>; [email-masked]
Subject: Re: [Netmod-ver-dt] What does it look like to treat the primary and secondary schema the same

Hi Rob,

Regards,
Reshad.

From: "Rob Wilton (rwilton)" <[email-masked]<mailto:[email-masked]>>
Date: Thursday, January 30, 2020 at 6:03 AM
To: "Reshad Rahman (rrahman)" <[email-masked]<mailto:[email-masked]>>, "[email-masked]<mailto:[email-masked]>" <[email-masked]<mailto:[email-masked]>>
Subject: RE: [Netmod-ver-dt] What does it look like to treat the primary and secondary schema the same

Hi Reshad,

Thanks,
Rob

From: Reshad Rahman (rrahman) <[email-masked]<mailto:[email-masked]>>
Sent: 30 January 2020 02:28
To: Rob Wilton (rwilton) <[email-masked]<mailto:[email-masked]>>; [email-masked]<mailto:[email-masked]>
Subject: Re: [Netmod-ver-dt] What does it look like to treat the primary and secondary schema the same

Hi Rob,

Regards,
Reshad.

Thanks,
Rob