# Does get\_object callpoint do not suport augment?

**URL:** <https://dmap-community.ductus.global/t/does-get-object-callpoint-do-not-suport-augment/2365>\
**Category:** CDB and CDB API\
**Created:** [March 18, 2019, 7:53am UTC](https://dmap-community.ductus.global/t/does-get-object-callpoint-do-not-suport-augment/2365 "2019-03-18T07:53:32Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![jhu](https://avatars.discourse-cdn.com/v4/letter/j/f14d63/32.png) [@jhu](https://dmap-community.ductus.global/u/jhu)\
**Post date:** [March 18, 2019, 7:53am UTC](https://dmap-community.ductus.global/t/does-get-object-callpoint-do-not-suport-augment/2365/1 "2019-03-18T07:53:32Z")

</div>

**Confd version:6.7.**  
===igmp.yang  
_ **augment /exa:config/exa:system/exa:vlan** { / vlan is defined in the vlan.yang /_  
when “((exa:mode = ‘N2ONE’) or (exa:mode = ‘ONE2ONE’)) and (count(/exa:config/exa:system/exa:router/pim:pim) = 0)” {  
tailf:dependency “exa:mode”;  
tailf:dependency “/exa:config/exa:system/exa:router/pim:pim”;  
}  
**leaf igmp-profile {**  
type leafref {  
path “/exa:config/exa:profile/igmp-profile/name”;  
}  
}

**Confd developer log:**  
 18-Mar-2019::02:07:14.105 E7-2 confd[6227]: devel-c get\_object request for callpoint config\_cp path /exa:config/system/vlan{124}  
 18-Mar-2019::02:07:14.109 E7-2 confd[6227]: devel-c get\_object succeeded for callpoint config\_cp path /exa:config/system/vlan{124}  
 18-Mar-2019::02:07:14.110 E7-2 confd[6227]: devel-c bad get\_object() return value: /exa:config/system/vlan{124}: **igmp-profile is not a child element**

**The code is like below:**  
switch (sbt\_db\_get\_node\_type(child\_hdl)) {  
case snt\_leaf:  
s\_value = sbt\_db\_print\_value(child\_hdl);  
**CONFD\_SET\_TAG\_STR** (&confd\_elem[return\_count], confd\_str2hash(sbt\_db\_get\_name(child\_hdl)), s\_value);  
…  
}  
**confd\_data\_reply\_tag\_value\_array** (p\_confd\_trans\_ctx, confd\_elem, return\_count);

==  
However, if the leaf node is, instead of the augment, added directly to  
list , confd doesn’t deliver the error.

Much appreciated.

---

<div class="post-metadata">

**Author:** ![mvf](https://yyz2.discourse-cdn.com/flex010/user_avatar/dmap-community.ductus.global/mvf/32/182_2.png) [@mvf](https://dmap-community.ductus.global/u/mvf)\
**Post date:** [March 22, 2019, 2:22pm UTC](https://dmap-community.ductus.global/t/does-get-object-callpoint-do-not-suport-augment/2365/2 "2019-03-22T14:22:51Z")

</div>

This looks like an issue with namespace boundary, you may need to set the ns field for the tagged value using `CONFD_SET_TAG_NS`.

---

<div class="post-metadata">

**Author:** ![jhu](https://avatars.discourse-cdn.com/v4/letter/j/f14d63/32.png) [@jhu](https://dmap-community.ductus.global/u/jhu)\
**Post date:** [April 3, 2019, 6:48am UTC](https://dmap-community.ductus.global/t/does-get-object-callpoint-do-not-suport-augment/2365/3 "2019-04-03T06:48:54Z")

</div>

Thanks you @mvf . After using this function CONFD\_SET\_TAG\_NS, the namespace can be returned correctly, Much appreciated.  
But after the get-object callpoint function worked, I encounter another issue.  
Firstly, I didn’t return nodes with default values, so the netconf requests’ elapsed time were improved about 40%. But some netconf requests have the option “with-defaults”, and the confd doesn’t fill out the default value of the nodes according to yang file, which were omitted by our data provider since their values are default values… @mvf, Is this confd expected behavior? So I had to change the code to return all the nodes with the non-default values or default values. After the code changed, there was no 40% improvement any more. Some cases, the elapsed time was even as long as what get-elem callpoint did… @mvf , can you give me some guidance? Thanks a lot.

---

<div class="post-metadata">

**Author:** ![mvf](https://yyz2.discourse-cdn.com/flex010/user_avatar/dmap-community.ductus.global/mvf/32/182_2.png) [@mvf](https://dmap-community.ductus.global/u/mvf)\
**Post date:** [April 3, 2019, 9:21am UTC](https://dmap-community.ductus.global/t/does-get-object-callpoint-do-not-suport-augment/2365/4 "2019-04-03T09:21:47Z")

</div>

A data provider should return a C\_DEFAULT value (e.g. via the macro CONFD\_SET\_DEFAULT) for a leaf node with the default value - have a look at the confd\_lib\_dp manpage.

As for performance degradation - were you able to check which part performs worse, if it is the data provider or confd processing and rendering the NETCONF messages? If that’s the latter, there is some chance the performance improves again (at least in the `with-defaults="trim"` mode, if supported by your setting).

---

<div class="post-metadata">

**Author:** ![jhu](https://avatars.discourse-cdn.com/v4/letter/j/f14d63/32.png) [@jhu](https://dmap-community.ductus.global/u/jhu)\
**Post date:** [April 4, 2019, 12:55am UTC](https://dmap-community.ductus.global/t/does-get-object-callpoint-do-not-suport-augment/2365/5 "2019-04-04T00:55:20Z")

</div>

Thanks you @mvf. I’ll change my code with “C\_DEFAULT” and update the performance result. And There is an issue to retrieve all schema file in external data provider, so with-defaults = “report-all-tagged” have to be used in the netconf request currently.  
Thanks again.
