What is the max limit for concurrent rpc edit-config in confd6.6

as titled

what is the max limit for concurrent rpc edit-config(same tables) in confd6.6

See the confd.conf(5) man page under “/confdConfig/sessionLimits” where default is “unbounded”.

1 Like

Thanks for the reply, I also noticed that config variable, but we often met this exception when RPC to confd based on multi-threats:

<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
  <rpc-error>
    <error-type>application</error-type>
    <error-tag>in-use</error-tag>
    <error-severity>error</error-severity>
    <error-message unknown:lang="en">the configuration database is locked by session none </error-message>
  </rpc-error>
</rpc-reply>

any help is appreciated.

the request sample is as following:

<rpc message-id="1" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<edit-config>         
<target>           <running/>         </target>         
<config>
<tables>
<table1>xxxxx</table1>
<table2>xxxx</table2>
....
</tables>
</config>
</edit-config>
</rpc>

There are a few ways how there can be a lock by “session none”.

Here is an example of the most common one:

$ pwd
/Users/tailf/confd-7.3.1/examples.confd/intro/1-2-3-start-query-model
$ make all start
$ confd_cmd -dd -c "start_session;sleep 30" &
TRACE Connected (cdb) to ConfD
TRACE CDB_NEW_SESSION  --> CONFD_OK
TRACE Established new CDB session to ConfD
$ netconf-console --edit-config=-<<<'<dhcp xmlns="http://tail-f.com/ns/example/dhcpd"><default-lease-time>PT1S</default-lease-time></dhcp>'
<?xml version="1.0" encoding="UTF-8"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
  <rpc-error>
    <error-type>application</error-type>
    <error-tag>in-use</error-tag>
    <error-severity>error</error-severity>
    <error-message xml:lang="en">the configuration database is locked by session none </error-message>
  </rpc-error>
</rpc-reply>
$ netconf-console --rpc=-<<<'<get><filter xmlns:tfcm="http://tail-f.com/yang/confd-monitoring" type="xpath" select="/tfcm:confd-state/tfcm:internal/tfcm:cdb/tfcm:client[tfcm:lock]"/></get>'
<?xml version="1.0" encoding="UTF-8"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
  <data>
    <confd-state xmlns="http://tail-f.com/yang/confd-monitoring">
      <internal>
        <cdb>
          <client>
            <name>confd_cmd</name>
            <info>92658/3</info>
            <type>client</type>
            <datastore>running</datastore>
            <lock>read</lock>
          </client>
        </cdb>
      </internal>
    </confd-state>
  </data>
</rpc-reply>

Thanks a lot, this helps.