ISC Open Source Projects issueshttps://gitlab.isc.org/groups/isc-projects/-/issues2018-12-10T16:20:58Zhttps://gitlab.isc.org/isc-projects/kea/-/issues/277Finalize whether Congestion Handling is enabled or disabled by default.2018-12-10T16:20:58ZThomas MarkwalderFinalize whether Congestion Handling is enabled or disabled by default.Based on Beta2 results, we need to decide whether Congestion Handling is enabled or disabled by default.Based on Beta2 results, we need to decide whether Congestion Handling is enabled or disabled by default.Kea1.5-finalThomas MarkwalderThomas Markwalderhttps://gitlab.isc.org/isc-projects/kea/-/issues/271Trouble building 1.5.0beta1 kea-netconf plugin2018-12-12T23:13:30ZGhost UserTrouble building 1.5.0beta1 kea-netconf pluginDuplicated from my post on the isc forum...
Hi,
I’ve been trying to build this to test Sysrepo integration, and the build fails as follows:
make[2]: Entering directory ‘/root/kea-1.5.0-beta1/src/bin/netconf’
CXX control_socket.lo
CXX ...Duplicated from my post on the isc forum...
Hi,
I’ve been trying to build this to test Sysrepo integration, and the build fails as follows:
make[2]: Entering directory ‘/root/kea-1.5.0-beta1/src/bin/netconf’
CXX control_socket.lo
CXX http_control_socket.lo
CXX stdout_control_socket.lo
CXX unix_control_socket.lo
CXX netconf.lo
In file included from netconf.cc:12:0:
…/…/…/src/bin/netconf/netconf.h:17:10: fatal error: sysrepo-cpp/Session.h: No such file or directory
#include <sysrepo-cpp/Session.h>
^~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
The referenced Session.h is not part of the Kea source. I’m also unable to find the file in the source for sysrepo, netopeer2 or any of the other dependencies.
Any help on how to build greatly appreciated.
Thanks,
IanKea1.5-finalhttps://gitlab.isc.org/isc-projects/kea/-/issues/258kea-netconf crashes when user attempt to update running datastore2018-11-22T10:27:36ZWlodzimierz Wencelkea-netconf crashes when user attempt to update running datastore1. uploading yang configuration to 'startup' datastore (this config was previously uploaded to running datastore, but since kea wasn't running it wasn't applied):
```
<?xml version="1.0" ?>
<config xmlns="urn:ietf:params:xml:ns:yang:kea-...1. uploading yang configuration to 'startup' datastore (this config was previously uploaded to running datastore, but since kea wasn't running it wasn't applied):
```
<?xml version="1.0" ?>
<config xmlns="urn:ietf:params:xml:ns:yang:kea-dhcp4-server">
<interfaces-config>
<interfaces>enp0s9</interfaces>
</interfaces-config>
<client-classes/>
<expired-leases-processing/>
<option-data-list>
<option-data>
<code>2</code>
<space>dhcp4</space>
<data>55</data>
<name>time-offset</name>
</option-data>
</option-data-list>
<control-socket>
<socket-name>/home/wlodek/installed/git/var/kea/control_socket</socket-name>
<socket-type>unix</socket-type>
</control-socket>
<lease-database>
<database-type>memfile</database-type>
<name>/home/wlodek/installed/git/var/kea/kea-leases4.csv</name>
</lease-database>
<subnet4>
<subnet4>
<id>1</id>
<subnet>10.0.0.0/24</subnet>
<valid-lifetime>4000</valid-lifetime>
<renew-timer>1000</renew-timer>
<rebind-timer>2000</rebind-timer>
<interface>enp0s9</interface>
<option-data-list/>
<relay>
<ip-addresses>192.12.11.4</ip-addresses>
</relay>
<pools>
<pool>
<start-address>10.0.0.50</start-address>
<end-address>10.0.0.54</end-address>
<option-data-list/>
</pool>
</pools>
</subnet4>
</subnet4>
</config>
```
2. Starting Kea with simple config:
```
{"Dhcp4":
{"control-socket":
{"socket-type":"unix",
"socket-name":"/home/wlodek/installed/git/var/kea/control_socket"}
},
"Logging":
{"loggers":[
{"name":"kea-dhcp4",
"output_options":[
{"output":"/home/wlodek/installed/git/var/kea/kea.log"}],
"debuglevel":99,
"severity":"DEBUG"}]
}
}
```
3. starting kea-netconf with:
```
{
"Netconf":
{
"managed-servers": {
"dhcp4": {
"model": "kea-dhcp4-server",
"comment": "DHCP4 server",
"boot-update": true,
"subscribe-changes": true,
"validate-changes": true,
"control-socket": {
"socket-name": "/home/wlodek/installed/git/var/kea/control_socket",
"socket-type": "unix"
}
}
}
},
"Logging":
{
"loggers": [
{
"name": "kea-netconf",
"output_options": [
{
"output": ""
}
],
"severity": "DEBUG",
"debuglevel":99
}
]
}
}
```
Starts successfully:
```
wlodek@debian9-64-2:~/installed$ sudo git/sbin/kea-netconf -c kea-netconf.conf -d
2018-11-07 14:04:08.956 INFO [kea-netconf.dctl/29229] DCTL_STARTING Netconf starting, pid: 29229, version: 1.4.0-git
2018-11-07 14:04:08.956 DEBUG [kea-netconf.dctl/29229] DCTL_INIT_PROCESS Netconf initializing the application
2018-11-07 14:04:08.957 DEBUG [kea-netconf.dctl/29229] DCTL_STANDALONE Netconf skipping message queue, running standalone
2018-11-07 14:04:08.957 DEBUG [kea-netconf.dctl/29229] DCTL_CONFIG_START parsing new configuration: { "managed-servers": { "dhcp4": { "boot-update": true, "control-socket": { "socket-name": "/home/wlodek/installed/git/var/kea/control_socket", "socket-type": "unix" }, "model": "kea-dhcp4-server", "subscribe-changes": true, "user-context": { "comment": "DHCP4 server" }, "validate-changes": true } } }
2018-11-07 14:04:08.958 INFO [kea-netconf.dctl/29229] DCTL_CONFIG_COMPLETE server has completed configuration: dhcp4, 0 lib(s):
```
4. at this point Kea is being reconfigured and logs (and it's able to assign addresses from 10.0.0.0/24 pool)
```
2018-11-07 14:04:08.995 INFO [kea-dhcp4.dhcpsrv/29227] DHCPSRV_CFGMGR_SOCKET_TYPE_SELECT using socket type raw
2018-11-07 14:04:08.995 INFO [kea-dhcp4.dhcpsrv/29227] DHCPSRV_CFGMGR_ADD_IFACE listening on interface enp0s9
2018-11-07 14:04:08.996 INFO [kea-dhcp4.dhcpsrv/29227] DHCPSRV_CFGMGR_NEW_SUBNET4 a new subnet has been added to configuration: 10.0.0.0/24 with params: t1=1000, t2=2000, valid-lifetime=4000
2018-11-07 14:04:08.997 INFO [kea-dhcp4.dhcp4/29227] DHCP4_CONFIG_COMPLETE DHCPv4 server has completed configuration: added IPv4 subnets: 1; DDNS: disabled
2018-11-07 14:04:08.999 INFO [kea-dhcp4.dhcpsrv/29227] DHCPSRV_MEMFILE_DB opening memory file lease database: lfc-interval=3600 max-reconnect-tries=0 name=/home/wlodek/installed/git/var/kea/kea-leases4.csv persist=true readonly=false reconnect-wait-time=0 tcp-keepalive=0 tcp-nodelay=true type=memfile universe=4
```
5. Upload new config:
```
<?xml version="1.0" ?>
<config xmlns="urn:ietf:params:xml:ns:yang:kea-dhcp4-server">
<interfaces-config>
<interfaces>enp0s9</interfaces>
</interfaces-config>
<client-classes/>
<expired-leases-processing/>
<option-data-list>
<option-data>
<code>2</code>
<space>dhcp4</space>
<data>55</data>
<name>time-offset</name>
</option-data>
</option-data-list>
<control-socket>
<socket-name>/home/wlodek/installed/git/var/kea/control_socket</socket-name>
<socket-type>unix</socket-type>
</control-socket>
<lease-database>
<database-type>memfile</database-type>
<name>/home/wlodek/installed/git/var/kea/kea-leases4.csv</name>
</lease-database>
<subnet4>
<subnet4>
<id>1</id>
<subnet>192.168.51.0/24</subnet>
<valid-lifetime>4000</valid-lifetime>
<renew-timer>1000</renew-timer>
<rebind-timer>2000</rebind-timer>
<interface>enp0s9</interface>
<option-data-list/>
<relay>
<ip-addresses>192.12.11.4</ip-addresses>
</relay>
<pools>
<pool>
<start-address>192.168.51.50</start-address>
<end-address>192.168.51.54</end-address>
<option-data-list/>
</pool>
</pools>
</subnet4>
</subnet4>
</config>
```
6. Attempt to reconfigure Kea using 'running' datastore:
```
wlodek@debian9-64-2:~/installed$ sudo sysrepocfg -l 4 -d running -f xml -i /home/wlodek/installed/git/etc/kea/yang.xml kea-dhcp4-server
[DBG] (sr_log_stderr:141) Setting log level for stderr logs to 4.
[DBG] (sr_connect:380) Connecting to Sysrepo Engine.
[DBG] (cl_socket_connect:376) Connecting to socket=/tmp/sysrepod.sock
[INF] (sr_connect:435) Connected to daemon Sysrepo Engine at socket=/tmp/sysrepod.sock
[DBG] (cl_version_verify:431) Sending version-verify request.
[DBG] (cl_version_verify:442) version-verify request sent, waiting for response.
[DBG] (cl_version_verify:454) version-verify response received, processing.
[DBG] (cl_request_process:493) Sending session-start request.
[DBG] (cl_request_process:506) session-start request sent, waiting for response.
[DBG] (cl_request_process:519) session-start response received, processing.
[DBG] (cl_request_process:493) Sending check-enabled-running request.
[DBG] (cl_request_process:506) check-enabled-running request sent, waiting for response.
[DBG] (cl_request_process:519) check-enabled-running response received, processing.
[DBG] (srcfg_ly_init:189) Loading module schema: '/opt/sysrepo-0.7.5/build/repository/yang/kea-dhcp4-server@2018-09-14.yang'.
[DBG] (cl_request_process:493) Sending discard-changes request.
[DBG] (cl_request_process:506) discard-changes request sent, waiting for response.
[DBG] (cl_request_process:519) discard-changes response received, processing.
[DBG] (cl_request_process:493) Sending get-items request.
[DBG] (cl_request_process:506) get-items request sent, waiting for response.
[DBG] (cl_request_process:519) get-items response received, processing.
[DBG] (cl_request_process:493) Sending get-items request.
[DBG] (cl_request_process:506) get-items request sent, waiting for response.
[DBG] (cl_request_process:519) get-items response received, processing.
[DBG] (sr_get_item_next:1095) All items has been read for xpath '/kea-dhcp4-server:*//.'
[DBG] (srcfg_import_datastore:887) <LYD_DIFF_CHANGED> orig: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/subnet, new: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/subnet
[DBG] (cl_request_process:493) Sending set-item request.
[DBG] (cl_request_process:506) set-item request sent, waiting for response.
[DBG] (cl_request_process:519) set-item response received, processing.
[DBG] (srcfg_import_datastore:881) <LYD_DIFF_DELETED> node: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/pools/pool[start-address='10.0.0.50'][end-address='10.0.0.54']
[DBG] (cl_request_process:493) Sending delete-item request.
[DBG] (cl_request_process:506) delete-item request sent, waiting for response.
[DBG] (cl_request_process:519) delete-item response received, processing.
[DBG] (srcfg_import_datastore:895) <LYD_DIFF_CREATED> parent: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/pools, new node: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/pools/pool[start-address='192.168.51.50'][end-address='192.168.51.54']
[DBG] (cl_request_process:493) Sending set-item request.
[DBG] (cl_request_process:506) set-item request sent, waiting for response.
[DBG] (cl_request_process:519) set-item response received, processing.
[DBG] (srcfg_convert_lydiff_created:613) Skipping default node 'option-data-list'.
[DBG] (srcfg_import_datastore:899) <LYD_DIFF_MOVEDAFTER2> after: (null), this new node was inserted: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/pools/pool[start-address='192.168.51.50'][end-address='192.168.51.54']
[DBG] (cl_request_process:493) Sending move-item request.
[DBG] (cl_request_process:506) move-item request sent, waiting for response.
[DBG] (cl_request_process:519) move-item response received, processing.
[DBG] (cl_request_process:493) Sending commit request.
[DBG] (cl_request_process:506) commit request sent, waiting for response.
[DBG] (cl_request_process:519) commit response received, processing.
[ERR] (cl_request_process:543) Error by processing of the commit request (session id=82104949): Timeout has expired.
[ERR] (sr_commit:2078) Commit operation failed with 0 error(s).
[ERR] (srcfg_import_datastore:921) Error returned from sr_commit: Timeout has expired.
[ERR] (srcfg_import_datastore:924) (null) : Timeout has expired
Errors were encountered during importing. Cancelling the operation.
[DBG] (cl_request_process:493) Sending session-stop request.
[DBG] (cl_request_process:506) session-stop request sent, waiting for response.
[DBG] (cl_request_process:519) session-stop response received, processing.
```
Timeout? what happened with kea-netconf? It crashed:
```
terminate called after throwing an instance of 'sysrepo_exception'
what(): Request contains unknown element
Aborted
```
Another important note, when I try to upload config to 'running' datastore after kea-netconf crashed:
```
wlodek@debian9-64-2:~/installed$ sudo sysrepocfg -l 4 -d startup -f xml -i /home/wlodek/installed/git/etc/kea/yang.xml kea-dhcp4-server
[DBG] (sr_log_stderr:141) Setting log level for stderr logs to 4.
[DBG] (sr_connect:380) Connecting to Sysrepo Engine.
[DBG] (cl_socket_connect:376) Connecting to socket=/tmp/sysrepod.sock
[INF] (sr_connect:435) Connected to daemon Sysrepo Engine at socket=/tmp/sysrepod.sock
[DBG] (cl_version_verify:431) Sending version-verify request.
[DBG] (cl_version_verify:442) version-verify request sent, waiting for response.
[DBG] (cl_version_verify:454) version-verify response received, processing.
[DBG] (cl_request_process:493) Sending session-start request.
[DBG] (cl_request_process:506) session-start request sent, waiting for response.
[DBG] (cl_request_process:519) session-start response received, processing.
[DBG] (srcfg_ly_init:189) Loading module schema: '/opt/sysrepo-0.7.5/build/repository/yang/kea-dhcp4-server@2018-09-14.yang'.
[DBG] (cl_request_process:493) Sending discard-changes request.
[DBG] (cl_request_process:506) discard-changes request sent, waiting for response.
[DBG] (cl_request_process:519) discard-changes response received, processing.
[DBG] (cl_request_process:493) Sending get-items request.
[DBG] (cl_request_process:506) get-items request sent, waiting for response.
[DBG] (cl_request_process:519) get-items response received, processing.
[DBG] (cl_request_process:493) Sending get-items request.
[DBG] (cl_request_process:506) get-items request sent, waiting for response.
[DBG] (cl_request_process:519) get-items response received, processing.
[DBG] (sr_get_item_next:1095) All items has been read for xpath '/kea-dhcp4-server:*//.'
[DBG] (srcfg_import_datastore:887) <LYD_DIFF_CHANGED> orig: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/subnet, new: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/subnet
[DBG] (cl_request_process:493) Sending set-item request.
[DBG] (cl_request_process:506) set-item request sent, waiting for response.
[DBG] (cl_request_process:519) set-item response received, processing.
[DBG] (srcfg_import_datastore:881) <LYD_DIFF_DELETED> node: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/pools/pool[start-address='10.0.0.50'][end-address='10.0.0.54']
[DBG] (cl_request_process:493) Sending delete-item request.
[DBG] (cl_request_process:506) delete-item request sent, waiting for response.
[DBG] (cl_request_process:519) delete-item response received, processing.
[DBG] (srcfg_import_datastore:895) <LYD_DIFF_CREATED> parent: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/pools, new node: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/pools/pool[start-address='192.168.51.50'][end-address='192.168.51.54']
[DBG] (cl_request_process:493) Sending set-item request.
[DBG] (cl_request_process:506) set-item request sent, waiting for response.
[DBG] (cl_request_process:519) set-item response received, processing.
[DBG] (srcfg_convert_lydiff_created:613) Skipping default node 'option-data-list'.
[DBG] (srcfg_import_datastore:899) <LYD_DIFF_MOVEDAFTER2> after: (null), this new node was inserted: /kea-dhcp4-server:config/subnet4/subnet4[id='1']/pools/pool[start-address='192.168.51.50'][end-address='192.168.51.54']
[DBG] (cl_request_process:493) Sending move-item request.
[DBG] (cl_request_process:506) move-item request sent, waiting for response.
[DBG] (cl_request_process:519) move-item response received, processing.
[DBG] (cl_request_process:493) Sending commit request.
[DBG] (cl_request_process:506) commit request sent, waiting for response.
[DBG] (cl_request_process:519) commit response received, processing.
The new configuration was successfully applied.
[DBG] (cl_request_process:493) Sending session-stop request.
[DBG] (cl_request_process:506) session-stop request sent, waiting for response.
[DBG] (cl_request_process:519) session-stop response received, processing.
```
it worked ```The new configuration was successfully applied``` but kea-netconf is dead so actually nothing happens.Kea1.5-finalFrancis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/253it is possible to add unsupported args to all class-* command2018-12-04T17:11:28ZMichal Nowikowskiit is possible to add unsupported args to all class-* commandExample:
{"command": 'class-list', "extra_redundant_arg": {}}
It should be rejected as incorrectly formatted request.Example:
{"command": 'class-list', "extra_redundant_arg": {}}
It should be rejected as incorrectly formatted request.Kea1.5-finalMarcin SiodelskiMarcin Siodelskihttps://gitlab.isc.org/isc-projects/kea/-/issues/204checking version of yang models2018-12-11T17:08:44ZWlodzimierz Wencelchecking version of yang modelsDo we plan for a tool/extension that will check version of an installed yang models? Something similar to kea-admin checking db schema.Do we plan for a tool/extension that will check version of an installed yang models? Something similar to kea-admin checking db schema.Kea1.5-finalFrancis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/203sysrepo/netconf documentation improvements2018-12-12T23:14:46ZWlodzimierz Wencelsysrepo/netconf documentation improvementsSome of yang models have to be installed by hand and some of them are installed automatically as dependencies of those manually installed. So it would be nice that users guide would list every model that have to be installed by hand. I t...Some of yang models have to be installed by hand and some of them are installed automatically as dependencies of those manually installed. So it would be nice that users guide would list every model that have to be installed by hand. I think those models are: ietf-dhcpv6-server.yang
kea-dhcp4-server.yang
kea-dhcp6-server.yang
kea-dhcp-ddns.yang
kea-ctrl-agent.yang
ietf-inet-types.yang
ietf-yang-types.yang
for testing:
keatest-module.yang
Also docs is missing simple example how to start kea using sysrepocfg, it says ```Such changes can be done using sysrepocfg tool or remotely using any NETCONF client. For details, please see Sysrepo documentation``` and I really don't like the fact we are sending user to different documentation instead of having couple lines like:
```
sudo sysrepocfg -l 4 -d startup -f xml -i startup-4.xml kea-dhcp4-server
sudo sysrepocfg -l 4 -d running -f xml -i twopools-4.xml kea-dhcp4-server
```
with couple sentences explaining what "running" and "startup" datastores really are.Kea1.5-finalhttps://gitlab.isc.org/isc-projects/kea/-/issues/198User's guide update: JSON section needs a refresh2018-12-11T17:45:23ZTomek MrugalskiUser's guide update: JSON section needs a refreshThe section 5.1.2: JSON syntax (https://oldkea.isc.org/docs/kea-guide.html#json-format) mentions putting all configuration in one file. This is no longer recommended way, as it causes issues with config-write. The text should be rephrase...The section 5.1.2: JSON syntax (https://oldkea.isc.org/docs/kea-guide.html#json-format) mentions putting all configuration in one file. This is no longer recommended way, as it causes issues with config-write. The text should be rephrased to say that entries other than Dhcp4, Dhcp6 may be present (ca, d2, netconf).Kea1.5-finalMarcin SiodelskiMarcin Siodelskihttps://gitlab.isc.org/isc-projects/kea/-/issues/186add kea-netconf daemon to keactrl2018-12-10T21:38:57ZWlodzimierz Wenceladd kea-netconf daemon to keactrlI don't really know if it's planned or not but kea-netconf should be usable from keactrl.I don't really know if it's planned or not but kea-netconf should be usable from keactrl.Kea1.5-finalFrancis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/174Warning for unused trace levels2019-07-25T14:27:21ZFrancis DupontWarning for unused trace levelsSome compilers and static analyzers emit this kind of warnings:
```
In file included from eval_log.cc:11:0:
../../../src/lib/eval/eval_log.h:22:11: warning: 'isc::dhcp::EVAL_DBG_TRACE' defined but not used [-Wunused-variable]
const int ...Some compilers and static analyzers emit this kind of warnings:
```
In file included from eval_log.cc:11:0:
../../../src/lib/eval/eval_log.h:22:11: warning: 'isc::dhcp::EVAL_DBG_TRACE' defined but not used [-Wunused-variable]
const int EVAL_DBG_TRACE = isc::log::DBGLVL_TRACE_BASIC;
^
```
A simple solution should be to make them extern for the declaration and move the definition to the xxx_log.cc as it is done for MessageIDs.
I'd like to get an opinion from QA people as they are impacted by this. BTW if adopted it should be a good item for a final milestone.Kea1.5-finalFrancis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/173Kea guide documentation correction needed2018-12-10T16:08:52ZGhost UserKea guide documentation correction neededHere is my setup for DB in **kea-dhcp4.conf **
Case : I have kea server running with below DB config but when my DB crashes[Manually i stopped db for test]. Kea log shows DB connection error and it started retrying for 50 tries as i co...Here is my setup for DB in **kea-dhcp4.conf **
Case : I have kea server running with below DB config but when my DB crashes[Manually i stopped db for test]. Kea log shows DB connection error and it started retrying for 50 tries as i configured but when i DB crash recover [Manually i started db]. kea unable to connect with DB still showing below mentioned error messages and not assigning lease to client !
```
}]
}],
"lease-database": {
"type": "mysql",
"name": "kea",
"user": "root",
"password": "",
"host": "10.25.133.13",
"port": 3306,
"max-reconnect-tries" : 50,
"reconnect-wait-time": 2000,
"connect-timeout": 5000,
"request-timeout": 12000,
"tcp-keepalive": 1,
"tcp-nodelay": true
},
"hosts-database": {
"type": "mysql",
"name": "kea",
"user": "root",
"password": "",
"host": "10.25.133.13",
"port": 3306,
"max-reconnect-tries" : 50,
"reconnect-wait-time": 2000,
"connect-timeout": 5000,
"request-timeout": 12000,
"tcp-keepalive": 1,
"tcp-nodelay": true
},
```
**Once kea started with DB Log output : [1st start ]**
```
DHCPSRV_MYSQL_DB opening MySQL lease database: connect-timeout=5000 host=10.25.133.13 **max-reconnect-tries=50 name=kea port=3306 reconnect-wait-time=2000 request-timeout=12000 tcp-keepalive=1 tcp-nodelay=true type=mysql universe=4 user=root**
2018-10-16 23:26:47.385 INFO [kea-dhcp4.hosts/12919] DHCPSRV_MYSQL_HOST_DB opening MySQL hosts database: connect-timeout=5000 host=10.25.133.13 max-reconnect-tries=50 name=kea port=3306 reconnect-wait-time=2000 request-timeout=12000 tcp-keepalive=1 tcp-nodelay=true type=mysql universe=4 user=root
2018-10-16 23:26:47.398 INFO [kea-dhcp4.ha-hooks/12919] HA_LOCAL_DHCP_DISABLE local DHCP service is disabled while the is in the WAITING state
2018-10-16 23:26:47.398 INFO [kea-dhcp4.ha-hooks/12919] HA_SERVICE_STARTED started high availability service in load-balancing mode as primary server
2018-10-16 23:26:47.399 INFO [kea-dhcp4.dhcp4/12919] DHCP4_STARTED Kea DHCPv4 server version 1.4.0 started
```
**Once DB crashed log output : [DB stopped ] **
```
ERROR [kea-dhcp4.dhcpsrv/12919] DHCPSRV_MYSQL_FATAL_ERROR Unrecoverable MySQL error occurred: unable to execute for <SELECT address, hwaddr, client_id, valid_lifetime, expire, subnet_id, fqdn_fwd, fqdn_rev, hostname, state FROM lease4 WHERE state != ? AND expire < ? ORDER BY expire ASC LIMIT ?>, reason: MySQL server has gone away (error code: 2006).
2018-10-16 23:33:49.235 INFO [kea-dhcp4.dhcpsrv/12919] DHCPSRV_MYSQL_DB opening MySQL lease database: connect-timeout=5000 host=10.25.133.13** max-reconnect-tries=50 name=kea port=3306 reconnect-wait-time=2000 request-timeout=12000 tcp-keepalive=1 tcp-nodelay=true type=mysql universe=4 user=root**
2018-10-16 23:33:49.236 ERROR [kea-dhcp4.dhcp4/12919] DHCP4_DB_RECONNECT_ATTEMPT_FAILED database reconnect failed: Can't connect to MySQL server on '10.25.133.13' (111)
2018-10-16 23:33:49.236 INFO [kea-dhcp4.dhcp4/12919] DHCP4_DB_RECONNECT_ATTEMPT_SCHEDULE** scheduling attempt 2 of 50 in 2000 seconds**
2018-10-16 23:33:49.236 ERROR [kea-dhcp4.dhcpsrv/12919] DHCPSRV_TIMERMGR_CALLBACK_FAILED running handler for timer reclaim-expired-leases caused exception: fatal database errror or connectivity lost
2018-10-16 23:33:53.240 ERROR [kea-dhcp4.alloc-engine/12919] ALLOC_ENGINE_V4_RECLAIMED_LEASES_DELETE_FAILED deletion of expired-reclaimed leases failed: no current lease manager is available
```
**Once DB recovered log output : [DB up and running ]
Still kea not connecting with db **
```
2018-10-16 23:35:33.359 ERROR [kea-dhcp4.alloc-engine/12919] ALLOC_ENGINE_V4_RECLAIMED_LEASES_DELETE_FAILED deletion of expired-reclaimed leases failed: no current lease manager is available
2018-10-16 23:35:58.390 ERROR [kea-dhcp4.alloc-engine/12919] ALLOC_ENGINE_V4_RECLAIMED_LEASES_DELETE_FAILED deletion of expired-reclaimed leases failed: no current lease manager is available
2018-10-16 23:36:23.419 ERROR [kea-dhcp4.alloc-engine/12919] ALLOC_ENGINE_V4_RECLAIMED_LEASES_DELETE_FAILED deletion of expired-reclaimed leases failed: no current lease manager is available
2018-10-16 23:36:48.449 ERROR [kea-dhcp4.alloc-engine/12919] ALLOC_ENGINE_V4_RECLAIMED_LEASES_DELETE_FAILED deletion of expired-reclaimed leases failed: no current lease manager is available
2018-10-16 23:37:13.479 ERROR [kea-dhcp4.alloc-engine/12919] ALLOC_ENGINE_V4_RECLAIMED_LEASES_DELETE_FAILED deletion of expired-reclaimed leases failed: no current lease manager is available
2018-10-16 23:37:38.499 ERROR [kea-dhcp4.alloc-engine/12919] ALLOC_ENGINE_V4_RECLAIMED_LEASES_DELETE_FAILED deletion of expired-reclaimed leases failed: no current lease manager is available
2018-10-16 23:38:03.528 ERROR [kea-dhcp4.alloc-engine/12919] ALLOC_ENGINE_V4_RECLAIMED_LEASES_DELETE_FAILED deletion of expired-reclaimed leases failed: no current lease manager is available
2018-10-16 23:38:28.557 ERROR [kea-dhcp4.alloc-engine/12919] ALLOC_ENGINE_V4_RECLAIMED_LEASES_DELETE_FAILED deletion of expired-reclaimed leases failed: no current lease manager is available
```
I believe Kea should automatically connect with lease DB once DB came UP/running !
**Is something am missing on conf or bug ?**Kea1.5-finalhttps://gitlab.isc.org/isc-projects/kea/-/issues/125Implement system tests for NETCONF backend2018-12-06T10:40:49ZStephen MorrisImplement system tests for NETCONF backendImpement the tests described in the [NETCONF test plan](https://gitlab.isc.org/isc-projects/kea/wikis/Test-Plans/NETCONF)Impement the tests described in the [NETCONF test plan](https://gitlab.isc.org/isc-projects/kea/wikis/Test-Plans/NETCONF)Kea1.5-finalWlodzimierz WencelWlodzimierz Wencelhttps://gitlab.isc.org/isc-projects/kea/-/issues/122Performance test packet discard code (congestion control)2018-12-06T10:40:33ZStephen MorrisPerformance test packet discard code (congestion control)As referenced in the [test plan](https://gitlab.isc.org/isc-projects/kea/wikis/Test-Plans/Packet-Discarding), set up two jobs in perflab, both with Kea connected to a MySQL database. The first job should use the existing master code, the...As referenced in the [test plan](https://gitlab.isc.org/isc-projects/kea/wikis/Test-Plans/Packet-Discarding), set up two jobs in perflab, both with Kea connected to a MySQL database. The first job should use the existing master code, the second the code in the trac5555 branch (which implemented packet discarding). Results will be reported on this ticket.Kea1.5-finalMichal NowikowskiMichal Nowikowskihttps://gitlab.isc.org/isc-projects/kea/-/issues/121System test for packet discard code2018-12-06T10:17:48ZStephen MorrisSystem test for packet discard codeImplement the system tests for the "packet discard" code described in the [test plan](https://gitlab.isc.org/isc-projects/kea/wikis/Test-Plans/Packet-Discarding)Implement the system tests for the "packet discard" code described in the [test plan](https://gitlab.isc.org/isc-projects/kea/wikis/Test-Plans/Packet-Discarding)Kea1.5-finalWlodzimierz WencelWlodzimierz Wencelhttps://gitlab.isc.org/isc-projects/kea/-/issues/86Case sensitivity discrepancy between Option4ClientFqdn and Option6ClientFqdn2018-12-04T16:21:49ZGhost UserCase sensitivity discrepancy between Option4ClientFqdn and Option6ClientFqdnThere is a discrepancy between on Option4ClientFqdn and Option6ClienFqdn when it comes to constructing them from strings. The latter uses a lib::dns::Name() constructor variant which accepts a boolean flag as to whether or not it should...There is a discrepancy between on Option4ClientFqdn and Option6ClienFqdn when it comes to constructing them from strings. The latter uses a lib::dns::Name() constructor variant which accepts a boolean flag as to whether or not it should
"downcase" the string, the former does not do this.
This means a the FQDN sent by a V4 client will have its case preserved while
one sent by a v6 client will not.
We need to determine what the proper behavior should be and proceed accordingly.Kea1.5-finalMarcin SiodelskiMarcin Siodelskihttps://gitlab.isc.org/isc-projects/kea/-/issues/84Update KB article AA-01323 with Kea 1.4.0 supported additional DHCPv4 and DHC...2018-12-06T00:43:32ZGhost UserUpdate KB article AA-01323 with Kea 1.4.0 supported additional DHCPv4 and DHCPv6 OptionsKea 1.4 added back RFC7598 options in Trac Item #5514, which suggests these should be included in the knowledge base overview page of supported Options at https://kb.isc.org/article/AA-01323
RFC7598 - DHCPv6 options
* 89 OPTION_S4...Kea 1.4 added back RFC7598 options in Trac Item #5514, which suggests these should be included in the knowledge base overview page of supported Options at https://kb.isc.org/article/AA-01323
RFC7598 - DHCPv6 options
* 89 OPTION_S46_RULE [RFC 7598] -
* 90 OPTION_S46_BR [RFC 7598] -
* 91 OPTION_S46_DMR [RFC 7598] -
* 92 OPTION_S46_V4V6BIND [RFC 7598] -
* 93 OPTION_S46_PORTPARAMS [RFC 7598] -
* 94 OPTION_S46_CONT_MAPE [RFC 7598] -
* 95 OPTION_S46_CONT_MAPT [RFC 7598] -
* 96 OPTION_S46_CONT_LW [RFC 7598] -
A related option should also be mentioned, if supported
111 OPTION_S46_PRIORITY [RFC 8026] - Kea1.5-finalhttps://gitlab.isc.org/isc-projects/kea/-/issues/81RADIUS hook issue? Duplicated attributes in RADIUS requests after reloading ...2019-01-01T14:16:36ZGhost UserRADIUS hook issue? Duplicated attributes in RADIUS requests after reloading configItay Rozenburg reports to us:
> Greetings Support
>
> 1) I think I found a bug in the radius hook.
>
> When I reload the configuration via rest api,
> The radius requests looks weird,
> You can see Some of the attributes twice ...Itay Rozenburg reports to us:
> Greetings Support
>
> 1) I think I found a bug in the radius hook.
>
> When I reload the configuration via rest api,
> The radius requests looks weird,
> You can see Some of the attributes twice in each request.
> Access-Request (1), id: 0x54, Authenticator: ****
> User-Name Attribute (1), length: 20, Value: xxxyyy
> User-Password Attribute (2), length: 18, Value: ***
> User-Password Attribute (2), length: 18, Value: ***
> Calling-Station-Id Attribute (31), length: 19, Value: aa:bb:cc:dd:ee:ff
> NAS-Identifier Attribute (32), length: 5, Value: kea
> NAS-Identifier Attribute (32), length: 5, Value: kea
> Connect-Info Attribute (77), length: 41, Value: ***xxx***
> Connect-Info Attribute (77), length: 41, Value: ***xxx***
> NAS-Port Attribute (5), length: 6, Value: 1480
> NAS-IP-Address Attribute (4), length: 6, Value: 10.1.1.1
>
> If I reload the process everything looks fine.Kea1.5-finalFrancis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/55legldb_create.* legldb_drop.* scripts in premium repo2018-12-10T21:52:56ZGhost Userlegldb_create.* legldb_drop.* scripts in premium repothere are 6 new databases scripts in premium repo:
* legldb_create.mysql legldb_drop.mysql
* legldb_create.cql legldb_drop.cql
* legldb_create.psql legldb_drop.psql
1. is there a typo in names? shouldn't it be legal_db* ?
2. why do we ...there are 6 new databases scripts in premium repo:
* legldb_create.mysql legldb_drop.mysql
* legldb_create.cql legldb_drop.cql
* legldb_create.psql legldb_drop.psql
1. is there a typo in names? shouldn't it be legal_db* ?
2. why do we need 6 scripts to add/remove one table from db schema? couldn't it be integrated to main kea db schema?
3. those scripts are not being installed - that have to be fixed.Kea1.5-finalFrancis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/kea/-/issues/45fromJSON does not handle Unicode escapes.2018-12-11T15:24:31ZGhost UserfromJSON does not handle Unicode escapes.The corresponding code is missing but can be copied from flex scanners.
Note Unicode escapes are used too to encode control characters so are not limited to real Unicode input.The corresponding code is missing but can be copied from flex scanners.
Note Unicode escapes are used too to encode control characters so are not limited to real Unicode input.Kea1.5-finalFrancis DupontFrancis Duponthttps://gitlab.isc.org/isc-projects/bind9/-/issues/773BIND 9.13.5 Release2018-12-13T05:21:46ZOndřej SurýBIND 9.13.5 Release## Release Checklist
- [x] (Manager) Check for the presence of a milestone for the release:
- If there is a milestone, are all the issues for the milestone resolved? (other than this checklist).
- [x] (Manager) Inform Support/Mark...## Release Checklist
- [x] (Manager) Check for the presence of a milestone for the release:
- If there is a milestone, are all the issues for the milestone resolved? (other than this checklist).
- [x] (Manager) Inform Support/Marketing of impending release (and give estimated release dates).
- (SwEng) Prepare the sources for tarball generation:
- [x] Check perflab to ensure there has been no unexplained drop in performance for the version being released.
- [x] Ensure that there are no outstanding merge requests in the private repository (subscription version only).
- [x] Update API files for libraries with new version information.
- [x] Change software version and library versions in configure.in (new major release only).
- [x] Rebuild configure using autoconf on docs.isc.org.
- [x] Update CHANGES.
- [x] Update "version".
- [x] Update "readme.md".
- Check the release notes are correct:
- [ ] Compare content with merge requests for the release.
- [ ] Check formatting.
- [x] Build documentation on docs.isc.org.
- [x] Commit changes and make sure the gitlab-ci tests are passing.
- [x] Push the changes and tag ("alphatag" is an optional string such as "b1", "rc1" etc.). (```git tag -u <DEVELOPER_KEYID> -a -s -m "BIND 9.X.Y[alphatag]" v9_X_Y[alphatag]```)
- [ ] If this is the first tag for a release (e.g. beta), create a release branch named `release_v9_X_Y` (this allows development to continue on the release branch whilst release engineering continues).
- [x] (SwEng) Run the "make release" Jenkins job to produce the tarballs and zips.
- [x] (SwEng) Ask QA to sanity check the tarball and zips (passing to them the number of the Jenkins job).
- [x] (QA) Sanity check the tarballs.
- [x] (QA) Request the signature on the tarballs.
- [ ] (QA) Check signatures on tarballs.
- [ ] (QA) Tell Support to handle notification of release.
- [x] (Manager) Inform Marketing of the release
- [x] (Manager) Update the internal [BIND release dates wiki page](https://wiki.isc.org/bin/view/Main/BindReleaseDates) when public announcement has been made.
- [ ] (SwEng) Update DEB and RPM packages
- [ ] (SwEng) Merge the automatically prepared `prep 9.X.Y` commit which updates `version` and documentation on the release branch into the relevant maintenance branch (`v9_X`)
## Support
- [x] Make tarballs and signatures available to download.
- [x] Write release email to bind9-announce.
- [ ] Write email to bind9-users (if a major release).
- [x] Update tickets in case of waiting support customers.
## Marketing
- [x] Post short note to Twitter.
- [x] Update [Wikipedia entry for BIND](http://en.wikipedia.org/wiki/BIND).
- [x] Write blog article (if a major release). (I would love a blog from Witold on the networking refactoring, but I don't have it and can't make it up)BIND-9.13.5Curtis BlackburnCurtis Blackburnhttps://gitlab.isc.org/isc-projects/bind9/-/issues/744Fix a race in socket code2018-12-05T12:19:33ZWitold KrecickiFix a race in socket codein socket.c we have:
```
if (SOCK_DEAD(sock)) { /* Sock is being closed, bail */
goto unlock_fd;
}
isc_refcount_increment(&sock->references);
```
However, if between SOCK_DEAD and isc_refcount_inc...in socket.c we have:
```
if (SOCK_DEAD(sock)) { /* Sock is being closed, bail */
goto unlock_fd;
}
isc_refcount_increment(&sock->references);
```
However, if between SOCK_DEAD and isc_refcount_increment something will close the socket (decreasing refcount to 0) we'll have an ugly race.
The proper way to fix it should be to hold a reference for socket in thread->fds[fd].BIND-9.13.5Witold KrecickiWitold Krecicki