Issue using maapi diff iterate in tailf:validate

Hi All!

I have a model as below…

list node {
key name;
leafref name {
path “/profile/access/name”
}
}

container profile {
list access {
tailf:validate vpoint {
tailf:dependency ".’;
}
key name;
leaf name {
type string;
}
}
}

With above code my expectation is validation vpoint when I call and do diff iterate I will get only those entries of this list. But I was surprised on doing load merge of the saved config it iterates through full config including the aaa authentication…

/aaa/authentication/users/user{admin} was one of the iteration element for this diff iterate. So the issue here is because its iterating the complete config we are blocked for 5 secs… Any pointers on the same would be helpful…

rgds
Balaji Kamal Kannadassan

@bkannadassan, Do you find a solution? I have also this issue using when statement.

nope note yet jhu, as of now I am trying to tweak my application code. But It would be good if their is someway to do the same. Lets wait for some response on the same…

Hi,
From the confd_lib_maapi(3) man page on maapi_diff_iterate():

“The purpose of the function is to iterate through the transaction diff”

So the diff in the transaction is iterated.
If you want to iterate through the changes below a specific path, see maapi_keypath_diff_iterate()

Thanks this should help, will test the same and update you…