In the situation of configuration data, I was wondering why a callpoint cannot be refined with a datastore. Indeed, one can define a callpoint for configuration data, but there is no way to specify if we want it for the running datastore or the candidate datastore. Why such a limitation?
I have read that if confd owns the candidate (configured in confd.conf) then no transaction will be ever created toward the candidate. Does it mean the behavior between the running datastore and the candidate datastore is not symmetric? More specifically, if a dataprovider callpoint is used (registered to) in a daemon for configuration data (i.e CDB is not used for the configuration data of this node and its sub-children in the data model) then for the running datastore the data callback functions (set_elem, get_elem,…) and the transaction callbacks will be called (trans_lock, prepare, …) if registered but not for the candidate datastore ?
Regarding set and transaction hooks I read that in case candidate datastore is used then set hooks are called as soon as a write is performed (a write in the meaning of a write with maapi on a transaction opened on the candidate datastore) and transaction hooks are called when the candidate datastore is committed to the running datastore. Is-that correct?
Thanks a lot for your help,