Error "Failed to load xxx" during confd In-service Data Model Upgrade

The client notifies Confd to do in-service data model upgrade using maapi.
Here is the client log:
{“error”:“Failed to load /models-from-db/fxs/mycompany-udr.fxs: host-keys-ref: Unknown type in namespace ‘urn:ietf:params:xml:ns:yang:ietf-truststore’”,“message”:“Failed to upgrade”,“service_id”:“com-cm-yang-provider”,“severity”:“error”,“timestamp”:“2020-12-03T07:04:45.001Z”,“version”:“0.2.0”}

And the following is confd log:
3-Dec-2020::07:04:44.994 com-cm-yang-provider-6bd84f4f84-md9p7 confd[52]: - Loading file /models-from-db/fxs/mycompany-udr.fxs
3-Dec-2020::07:04:44.999 com-cm-yang-provider-6bd84f4f84-md9p7 confd[52]: - Upgrade aborted
3-Dec-2020::07:04:45.001 com-cm-yang-provider-6bd84f4f84-md9p7 confd[52]: audit user: yp_internal_user/14 terminated session (reason: normal)

Does the error show in client is the reason to abort the upgrade? If so, when loading mycompany-udr.fxs, why it is reported an unknown type of host-keys-ref defined in ietf-truststore.yang?

You would have made it a bit easier for us if you had posted more details about your data model, we can only speculate now. I guess that your mycompany-udr uses the type host-keys-ref from ietf-truststore; if that’s the case, it is no wonder that update failed given that ietf-truststore is still just a draft and in particular the type host-keys-ref has been removed from it recently. So yes, I believe the error message shows exactly the reason of why the upgrade was aborted.

1 Like

Thank you for the reply. I will provide more details later.
And do you think the following error reported by Confd is the same with the client error?
Loading file /models-from-db/fxs/mycompany-udr.fxs
=ERROR REPORT==== 3-Dec-2020::07:06:36.124697 ===
{confd_server,690,badarg,
[{fxs,new_internal,
[‘urn:rdns:com:mycompany:oammodel:mycompany-udr’,
[{default_cs,
{cs,undefined,undefined,undefined,undefined,undefined,[],6,
undefined,[],[],[],0,[],none,[],undefined,[],undefined,[],
0,undefined,[]}},
{default_exs,
{exs,undefined,undefined,undefined,undefined,[],1,1,[],0,[]}},
{exspos,6},
{read_concurrency,true},
named_table,
{keypos,2},
public]],
[]},
{confd_new_loading,load_fxs_fd,9,
[{file,“confd_new_loading.erl”},{line,58}]},
{confd_new_loading,load_fxs_file,7,
[{file,“confd_new_loading.erl”},{line,29}]},
{confd_server,’-load_new_user_fxs_files/1-fun-5-’,12,
[{file,“confd_server.erl”},{line,1232}]},
{lists,foldl,3,[{file,“lists.erl”},{line,1263}]},
{confd_server,load_new_user_fxs_files,1,
[{file,“confd_server.erl”},{line,1206}]},
{confd_server,load_system,2,[{file,“confd_server.erl”},{line,434}]},
{confd_server,handle_call,3,[{file,“confd_server.erl”},{line,681}]},
{gen_server,try_handle_call,4,[{file,“gen_server.erl”},{line,677}]},
{gen_server,handle_msg,6,[{file,“gen_server.erl”},{line,706}]},
{proc_lib,init_p_do_apply,3,[{file,“proc_lib.erl”},{line,249}]}]}

It might be related, the stacktrace corresponds to an error during a FXS load, but I am not able to tell for sure. If it goes away when you fix the upgrade problem, then it is likely the same problem.

1 Like

Thank you for your answer.
And would you please explain the mean of “{fxs,new_internal”? Does that mean the node in mycompany-udr.fxs is not defined?
BRs
Michael

fxs is a name of a code module and new_internal a name of a function in that module. The error says that loading of the module failed, but I am not able to tell the exact reason.