CESNET / netopeer2

NETCONF toolset
BSD 3-Clause "New" or "Revised" License
301 stars 189 forks source link

netopeer2 debian package fails to remove #1423

Closed koalo closed 1 year ago

koalo commented 1 year ago

The Debian package of netopeer2 has some cleanup routines that amongst other things try to remove models from sysrepo. However, this can easily fail e.g. due to dependencies to other models. For example:

root@d14d756ab51d:/app# sysrepoctl -i ieee1588-ptp.yang 
root@d14d756ab51d:/app# apt remove -y netopeer2
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages will be REMOVED:
  netopeer2
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 919 kB disk space will be freed.
(Reading database ... 26707 files and directories currently installed.)
Removing netopeer2 (2.1.62-1) ...
[ERR] Module "ietf-interfaces" cannot be removed because some other installed module depends on it.
sysrepoctl error: Failed to uninstall modules (Operation failed)
For more details you may try to increase the verbosity up to "-v3".
dpkg: error processing package netopeer2 (--remove):
 installed netopeer2 package post-removal script subprocess returned error exit status 1
dpkg: too many errors, stopping
Errors were encountered while processing:
 netopeer2
Processing was halted because there were too many errors.
E: Sub-process /usr/bin/dpkg returned an error code (1)

A full reproducer is possible with the following Dockerfile:

FROM debian:bullseye
WORKDIR /app
RUN apt update && apt install -y git python3-pip
RUN pip3 install apkg
RUN git clone https://github.com/CESNET/libyang
RUN cd libyang && apkg build --build-dep
RUN apt install /app/libyang/pkg/pkgs/debian-11/libyang2_*/libyang2_*.deb
RUN apt install /app/libyang/pkg/pkgs/debian-11/libyang2_*/libyang2-dev_*.deb
RUN git clone https://github.com/CESNET/libnetconf2
RUN cd libnetconf2 && apkg build --build-dep
RUN apt install /app/libnetconf2/pkg/pkgs/debian-11/libnetconf2_*/libnetconf2-3_*.deb 
RUN apt install /app/libnetconf2/pkg/pkgs/debian-11/libnetconf2_*/libnetconf2-dev_*.deb 
RUN git clone https://github.com/sysrepo/sysrepo
RUN apt install -y libc6-dev libsystemd-dev systemd
RUN cd sysrepo && apkg build --build-dep
RUN apt install /app/sysrepo/pkg/pkgs/debian-11/sysrepo_*/libsysrepo7_*.deb
RUN apt install /app/sysrepo/pkg/pkgs/debian-11/sysrepo_*/libsysrepo-dev_*.deb
RUN apt install /app/sysrepo/pkg/pkgs/debian-11/sysrepo_*/sysrepo-tools_*.deb
RUN git clone https://github.com/CESNET/netopeer2
RUN cd netopeer2 && apkg build --build-dep
RUN apt install /app/netopeer2/pkg/pkgs/debian-11/netopeer2_*/netopeer2_*_amd64.deb 
RUN curl -OJ https://raw.githubusercontent.com/YangModels/yang/main/standard/ieee/draft/1588/ieee1588-ptp.yang
RUN sysrepoctl -i ieee1588-ptp.yang
RUN apt remove -y netopeer2

Just building it with docker build . will fail with the error message shown above.

michalvasko commented 1 year ago

Right, should work in the current devel, the script has been updated. Note that the DEB scripts are not up-to-date because we are waiting for the unfreeze of Debian repos so that we can upload all the packages.

koalo commented 1 year ago

That was very fast, thanks a lot! :-) Unfortunately, after removing netopeer2, sysrepocfg -l now fails with

root@7cee3beb0fab:/app# sysrepocfg -l
[ERR] JSON DS file: Retrieving GID "1000" grp entry failed (No such GID).
free(): double free detected in tcache 2
Aborted (core dumped)

and sysrepoctl -l with

root@036f4afdf093:/app# sysrepoctl -l
[ERR] JSON DS file: Retrieving GID "1000" grp entry failed (No such GID).
[ERR] Callback "get_access" of plugin "JSON DS file" for module "ietf-netconf" failed.
sysrepoctl error: Failed to list modules (Item not found)
For more details you may try to increase the verbosity up to "-v3".

Shall I create a separate issue for that?

michalvasko commented 1 year ago

I suppose you do not have to but I am wondering what exactly happened there, have you removed the group that the datastore files belonged to?

koalo commented 1 year ago

I have not done it manually. Apparently that is what is happening automatically. The installation of netopeer2 seems to create the user netconf and it gets removed by apt remove netopeer2. So the models that did not get removed now reference a dangling user. Besides the fact of the user mixup, also the "double free" worries me (even though it is during program termination).

FROM debian:bullseye
WORKDIR /app
RUN apt update && apt install -y git python3-pip
RUN pip3 install apkg
RUN git clone https://github.com/CESNET/libyang -b devel
RUN cd libyang && apkg build --build-dep
RUN apt install /app/libyang/pkg/pkgs/debian-11/libyang2_*/libyang2_*.deb
RUN apt install /app/libyang/pkg/pkgs/debian-11/libyang2_*/libyang2-dev_*.deb
RUN git clone https://github.com/CESNET/libnetconf2 -b devel
RUN cd libnetconf2 && apkg build --build-dep
RUN apt install /app/libnetconf2/pkg/pkgs/debian-11/libnetconf2_*/libnetconf2-3_*.deb 
RUN apt install /app/libnetconf2/pkg/pkgs/debian-11/libnetconf2_*/libnetconf2-dev_*.deb 
RUN git clone https://github.com/sysrepo/sysrepo -b devel
RUN apt install -y libc6-dev libsystemd-dev systemd
RUN cd sysrepo && apkg build --build-dep
RUN apt install /app/sysrepo/pkg/pkgs/debian-11/sysrepo_*/libsysrepo7_*.deb
RUN apt install /app/sysrepo/pkg/pkgs/debian-11/sysrepo_*/libsysrepo-dev_*.deb
RUN apt install /app/sysrepo/pkg/pkgs/debian-11/sysrepo_*/sysrepo-tools_*.deb
RUN git clone https://github.com/CESNET/netopeer2 -b devel
RUN cd netopeer2 && apkg build --build-dep
RUN apt install /app/netopeer2/pkg/pkgs/debian-11/netopeer2_*/netopeer2_*_amd64.deb 
RUN curl -OJ https://raw.githubusercontent.com/YangModels/yang/main/standard/ieee/draft/1588/ieee1588-ptp.yang
RUN sysrepoctl -i ieee1588-ptp.yang
RUN apt remove -y netopeer2
RUN sysrepocfg -l

Before removal:

root@20c49393b0ea:/app# ls -l /etc/sysrepo/data/ 
total 264
-rw------- 1 root root        0 Jun 19 13:07 ieee1588-ptp.candidate.perm
-rw------- 1 root root      121 Jun 19 13:07 ieee1588-ptp.factory-default
-rw------- 1 root root        0 Jun 19 13:07 ieee1588-ptp.operational.perm
-rw------- 1 root root        0 Jun 19 13:07 ieee1588-ptp.running.perm
-rw------- 1 root root      121 Jun 19 13:07 ieee1588-ptp.startup
-r--r--r-- 1 root root        0 Jun 19 13:07 ietf-datastores.candidate.perm
-r--r--r-- 1 root root        2 Jun 19 13:07 ietf-datastores.factory-default
-r--r--r-- 1 root root        0 Jun 19 13:07 ietf-datastores.operational.perm
-r--r--r-- 1 root root        0 Jun 19 13:07 ietf-datastores.running.perm
-r--r--r-- 1 root root        2 Jun 19 13:07 ietf-datastores.startup
-rw------- 1 root root        0 Jun 19 13:07 ietf-factory-default.candidate.perm
-rw------- 1 root root        2 Jun 19 13:07 ietf-factory-default.factory-default
-rw------- 1 root root        0 Jun 19 13:07 ietf-factory-default.operational.perm
-rw------- 1 root root        0 Jun 19 13:07 ietf-factory-default.running.perm
-rw------- 1 root root        2 Jun 19 13:07 ietf-factory-default.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-interfaces.candidate.perm
-rw-rw---- 1 root netconf    33 Jun 19 13:07 ietf-interfaces.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-interfaces.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-interfaces.running.perm
-rw-rw---- 1 root netconf    33 Jun 19 13:07 ietf-interfaces.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-ip.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-ip.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-ip.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-ip.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-ip.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-keystore.candidate.perm
-rw-rw---- 1 root netconf    69 Jun 19 13:07 ietf-keystore.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-keystore.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-keystore.running.perm
-rw-rw---- 1 root netconf  2194 Jun 19 13:07 ietf-keystore.startup
-rw------- 1 root root        0 Jun 19 13:07 ietf-netconf-acm.candidate.perm
-rw------- 1 root root      469 Jun 19 13:07 ietf-netconf-acm.factory-default
-rw------- 1 root root        0 Jun 19 13:07 ietf-netconf-acm.operational.perm
-rw------- 1 root root        0 Jun 19 13:07 ietf-netconf-acm.running.perm
-rw------- 1 root root      469 Jun 19 13:07 ietf-netconf-acm.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf-monitoring.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-netconf-monitoring.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf-monitoring.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf-monitoring.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-netconf-monitoring.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf-nmda.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-netconf-nmda.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf-nmda.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf-nmda.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-netconf-nmda.startup
-rw-r--r-- 1 root root        0 Jun 19 13:07 ietf-netconf-notifications.candidate.perm
-rw-r--r-- 1 root root        2 Jun 19 13:07 ietf-netconf-notifications.factory-default
-rw-r--r-- 1 root root        0 Jun 19 13:07 ietf-netconf-notifications.operational.perm
-rw-r--r-- 1 root root        0 Jun 19 13:07 ietf-netconf-notifications.running.perm
-rw-r--r-- 1 root root        2 Jun 19 13:07 ietf-netconf-notifications.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf-server.candidate.perm
-rw-rw---- 1 root netconf    41 Jun 19 13:07 ietf-netconf-server.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf-server.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf-server.running.perm
-rw-rw---- 1 root netconf   594 Jun 19 13:07 ietf-netconf-server.startup
-r--r--r-- 1 root root        0 Jun 19 13:07 ietf-netconf-with-defaults.candidate.perm
-r--r--r-- 1 root root        2 Jun 19 13:07 ietf-netconf-with-defaults.factory-default
-r--r--r-- 1 root root        0 Jun 19 13:07 ietf-netconf-with-defaults.operational.perm
-r--r--r-- 1 root root        0 Jun 19 13:07 ietf-netconf-with-defaults.running.perm
-r--r--r-- 1 root root        2 Jun 19 13:07 ietf-netconf-with-defaults.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-netconf.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-netconf.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-netconf.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-network-instance.candidate.perm
-rw-rw---- 1 root netconf    46 Jun 19 13:07 ietf-network-instance.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-network-instance.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-network-instance.running.perm
-rw-rw---- 1 root netconf    46 Jun 19 13:07 ietf-network-instance.startup
-r--r--r-- 1 root root        0 Jun 19 13:07 ietf-origin.candidate.perm
-r--r--r-- 1 root root        2 Jun 19 13:07 ietf-origin.factory-default
-r--r--r-- 1 root root        0 Jun 19 13:07 ietf-origin.operational.perm
-r--r--r-- 1 root root        0 Jun 19 13:07 ietf-origin.running.perm
-r--r--r-- 1 root root        2 Jun 19 13:07 ietf-origin.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-ssh-server.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-ssh-server.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-ssh-server.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-ssh-server.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-ssh-server.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-subscribed-notifications.candidate.perm
-rw-rw---- 1 root netconf    93 Jun 19 13:07 ietf-subscribed-notifications.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-subscribed-notifications.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-subscribed-notifications.running.perm
-rw-rw---- 1 root netconf    93 Jun 19 13:07 ietf-subscribed-notifications.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-tcp-common.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-tcp-common.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-tcp-common.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-tcp-common.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-tcp-common.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-tls-server.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-tls-server.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-tls-server.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-tls-server.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-tls-server.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-truststore.candidate.perm
-rw-rw---- 1 root netconf    33 Jun 19 13:07 ietf-truststore.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-truststore.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-truststore.running.perm
-rw-rw---- 1 root netconf    33 Jun 19 13:07 ietf-truststore.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-x509-cert-to-name.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-x509-cert-to-name.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-x509-cert-to-name.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-x509-cert-to-name.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-x509-cert-to-name.startup
-rw-r--r-- 1 root root        0 Jun 19 13:07 ietf-yang-library.candidate.perm
-rw-r--r-- 1 root root        2 Jun 19 13:07 ietf-yang-library.factory-default
-rw-r--r-- 1 root root        0 Jun 19 13:07 ietf-yang-library.operational.perm
-rw-r--r-- 1 root root        0 Jun 19 13:07 ietf-yang-library.running.perm
-rw-r--r-- 1 root root        2 Jun 19 13:07 ietf-yang-library.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-yang-push.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-yang-push.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-yang-push.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 ietf-yang-push.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 ietf-yang-push.startup
-rw-r--r-- 1 root root        0 Jun 19 13:07 ietf-yang-schema-mount.candidate.perm
-rw-r--r-- 1 root root        2 Jun 19 13:07 ietf-yang-schema-mount.factory-default
-rw-r--r-- 1 root root        0 Jun 19 13:07 ietf-yang-schema-mount.operational.perm
-rw-r--r-- 1 root root        0 Jun 19 13:07 ietf-yang-schema-mount.running.perm
-rw-r--r-- 1 root root        2 Jun 19 13:07 ietf-yang-schema-mount.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 nc-notifications.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 nc-notifications.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 nc-notifications.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 nc-notifications.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 nc-notifications.startup
-rw-rw---- 1 root netconf     0 Jun 19 13:07 notifications.candidate.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 notifications.factory-default
-rw-rw---- 1 root netconf     0 Jun 19 13:07 notifications.operational.perm
-rw-rw---- 1 root netconf     0 Jun 19 13:07 notifications.running.perm
-rw-rw---- 1 root netconf     2 Jun 19 13:07 notifications.startup
-rw------- 1 root root        0 Jun 19 13:07 sysrepo-factory-default.candidate.perm
-rw------- 1 root root        2 Jun 19 13:07 sysrepo-factory-default.factory-default
-rw------- 1 root root        0 Jun 19 13:07 sysrepo-factory-default.operational.perm
-rw------- 1 root root        0 Jun 19 13:07 sysrepo-factory-default.running.perm
-rw------- 1 root root        2 Jun 19 13:07 sysrepo-factory-default.startup
-rw------- 1 root root        0 Jun 19 13:07 sysrepo-monitoring.candidate.perm
-rw------- 1 root root        2 Jun 19 13:07 sysrepo-monitoring.factory-default
-rw------- 1 root root        0 Jun 19 13:07 sysrepo-monitoring.operational.perm
-rw------- 1 root root        0 Jun 19 13:07 sysrepo-monitoring.running.perm
-rw------- 1 root root        2 Jun 19 13:07 sysrepo-monitoring.startup
-rw-r--r-- 1 root root        0 Jun 19 13:07 sysrepo-plugind.candidate.perm
-rw-r--r-- 1 root root      109 Jun 19 13:07 sysrepo-plugind.factory-default
-rw-r--r-- 1 root root        0 Jun 19 13:07 sysrepo-plugind.operational.perm
-rw-r--r-- 1 root root        0 Jun 19 13:07 sysrepo-plugind.running.perm
-rw-r--r-- 1 root root      109 Jun 19 13:07 sysrepo-plugind.startup
-rw-rw-rw- 1 root root    23361 Jun 19 13:07 sysrepo.startup
-r--r--r-- 1 root root        0 Jun 19 13:07 yang.candidate.perm
-r--r--r-- 1 root root        2 Jun 19 13:07 yang.factory-default
-r--r--r-- 1 root root        0 Jun 19 13:07 yang.operational.perm
-r--r--r-- 1 root root        0 Jun 19 13:07 yang.running.perm
-r--r--r-- 1 root root        2 Jun 19 13:07 yang.startup

After removal:

root@20c49393b0ea:/app# ls -l /etc/sysrepo/data/ 
total 132
-rw------- 1 root root    0 Jun 19 13:07 ieee1588-ptp.candidate.perm
-rw------- 1 root root  121 Jun 19 13:07 ieee1588-ptp.factory-default
-rw------- 1 root root    0 Jun 19 13:07 ieee1588-ptp.operational.perm
-rw------- 1 root root    0 Jun 19 13:07 ieee1588-ptp.running.perm
-rw------- 1 root root  121 Jun 19 13:07 ieee1588-ptp.startup
-r--r--r-- 1 root root    0 Jun 19 13:07 ietf-datastores.candidate.perm
-r--r--r-- 1 root root    2 Jun 19 13:07 ietf-datastores.factory-default
-r--r--r-- 1 root root    0 Jun 19 13:07 ietf-datastores.operational.perm
-r--r--r-- 1 root root    0 Jun 19 13:07 ietf-datastores.running.perm
-r--r--r-- 1 root root    2 Jun 19 13:07 ietf-datastores.startup
-rw------- 1 root root    0 Jun 19 13:07 ietf-factory-default.candidate.perm
-rw------- 1 root root    2 Jun 19 13:07 ietf-factory-default.factory-default
-rw------- 1 root root    0 Jun 19 13:07 ietf-factory-default.operational.perm
-rw------- 1 root root    0 Jun 19 13:07 ietf-factory-default.running.perm
-rw------- 1 root root    2 Jun 19 13:07 ietf-factory-default.startup
-rw-rw---- 1 root 1000    0 Jun 19 13:07 ietf-interfaces.candidate.perm
-rw-rw---- 1 root 1000   33 Jun 19 13:07 ietf-interfaces.factory-default
-rw-rw---- 1 root 1000    0 Jun 19 13:07 ietf-interfaces.operational.perm
-rw-rw---- 1 root 1000    0 Jun 19 13:07 ietf-interfaces.running.perm
-rw-rw---- 1 root 1000   33 Jun 19 13:07 ietf-interfaces.startup
-rw------- 1 root root    0 Jun 19 13:07 ietf-netconf-acm.candidate.perm
-rw------- 1 root root  469 Jun 19 13:07 ietf-netconf-acm.factory-default
-rw------- 1 root root    0 Jun 19 13:07 ietf-netconf-acm.operational.perm
-rw------- 1 root root    0 Jun 19 13:07 ietf-netconf-acm.running.perm
-rw------- 1 root root  469 Jun 19 13:07 ietf-netconf-acm.startup
-rw-r--r-- 1 root root    0 Jun 19 13:07 ietf-netconf-notifications.candidate.perm
-rw-r--r-- 1 root root    2 Jun 19 13:07 ietf-netconf-notifications.factory-default
-rw-r--r-- 1 root root    0 Jun 19 13:07 ietf-netconf-notifications.operational.perm
-rw-r--r-- 1 root root    0 Jun 19 13:07 ietf-netconf-notifications.running.perm
-rw-r--r-- 1 root root    2 Jun 19 13:07 ietf-netconf-notifications.startup
-r--r--r-- 1 root root    0 Jun 19 13:07 ietf-netconf-with-defaults.candidate.perm
-r--r--r-- 1 root root    2 Jun 19 13:07 ietf-netconf-with-defaults.factory-default
-r--r--r-- 1 root root    0 Jun 19 13:07 ietf-netconf-with-defaults.operational.perm
-r--r--r-- 1 root root    0 Jun 19 13:07 ietf-netconf-with-defaults.running.perm
-r--r--r-- 1 root root    2 Jun 19 13:07 ietf-netconf-with-defaults.startup
-rw-rw---- 1 root 1000    0 Jun 19 13:07 ietf-netconf.candidate.perm
-rw-rw---- 1 root 1000    2 Jun 19 13:07 ietf-netconf.factory-default
-rw-rw---- 1 root 1000    0 Jun 19 13:07 ietf-netconf.operational.perm
-rw-rw---- 1 root 1000    0 Jun 19 13:07 ietf-netconf.running.perm
-rw-rw---- 1 root 1000    2 Jun 19 13:07 ietf-netconf.startup
-r--r--r-- 1 root root    0 Jun 19 13:07 ietf-origin.candidate.perm
-r--r--r-- 1 root root    2 Jun 19 13:07 ietf-origin.factory-default
-r--r--r-- 1 root root    0 Jun 19 13:07 ietf-origin.operational.perm
-r--r--r-- 1 root root    0 Jun 19 13:07 ietf-origin.running.perm
-r--r--r-- 1 root root    2 Jun 19 13:07 ietf-origin.startup
-rw-r--r-- 1 root root    0 Jun 19 13:07 ietf-yang-library.candidate.perm
-rw-r--r-- 1 root root    2 Jun 19 13:07 ietf-yang-library.factory-default
-rw-r--r-- 1 root root    0 Jun 19 13:07 ietf-yang-library.operational.perm
-rw-r--r-- 1 root root    0 Jun 19 13:07 ietf-yang-library.running.perm
-rw-r--r-- 1 root root    2 Jun 19 13:07 ietf-yang-library.startup
-rw-r--r-- 1 root root    0 Jun 19 13:07 ietf-yang-schema-mount.candidate.perm
-rw-r--r-- 1 root root    2 Jun 19 13:07 ietf-yang-schema-mount.factory-default
-rw-r--r-- 1 root root    0 Jun 19 13:07 ietf-yang-schema-mount.operational.perm
-rw-r--r-- 1 root root    0 Jun 19 13:07 ietf-yang-schema-mount.running.perm
-rw-r--r-- 1 root root    2 Jun 19 13:07 ietf-yang-schema-mount.startup
-rw------- 1 root root    0 Jun 19 13:07 sysrepo-factory-default.candidate.perm
-rw------- 1 root root    2 Jun 19 13:07 sysrepo-factory-default.factory-default
-rw------- 1 root root    0 Jun 19 13:07 sysrepo-factory-default.operational.perm
-rw------- 1 root root    0 Jun 19 13:07 sysrepo-factory-default.running.perm
-rw------- 1 root root    2 Jun 19 13:07 sysrepo-factory-default.startup
-rw------- 1 root root    0 Jun 19 13:07 sysrepo-monitoring.candidate.perm
-rw------- 1 root root    2 Jun 19 13:07 sysrepo-monitoring.factory-default
-rw------- 1 root root    0 Jun 19 13:07 sysrepo-monitoring.operational.perm
-rw------- 1 root root    0 Jun 19 13:07 sysrepo-monitoring.running.perm
-rw------- 1 root root    2 Jun 19 13:07 sysrepo-monitoring.startup
-rw-r--r-- 1 root root    0 Jun 19 13:07 sysrepo-plugind.candidate.perm
-rw-r--r-- 1 root root  109 Jun 19 13:07 sysrepo-plugind.factory-default
-rw-r--r-- 1 root root    0 Jun 19 13:07 sysrepo-plugind.operational.perm
-rw-r--r-- 1 root root    0 Jun 19 13:07 sysrepo-plugind.running.perm
-rw-r--r-- 1 root root  109 Jun 19 13:07 sysrepo-plugind.startup
-rw-rw-rw- 1 root root 9027 Jun 19 13:46 sysrepo.startup
-r--r--r-- 1 root root    0 Jun 19 13:07 yang.candidate.perm
-r--r--r-- 1 root root    2 Jun 19 13:07 yang.factory-default
-r--r--r-- 1 root root    0 Jun 19 13:07 yang.operational.perm
-r--r--r-- 1 root root    0 Jun 19 13:07 yang.running.perm
-r--r--r-- 1 root root    2 Jun 19 13:07 yang.startup
michalvasko commented 1 year ago

Okay, I had to guess what the problem is because I could not reproduce it with debugging symbols and the packages are without them but I guessed right, the crash is fixed now. As for the error itself, there is little I can do. The error mentions what module has the problem and you can change the owner/group of it using sysrepoctl and then it will all work normally.

koalo commented 1 year ago

The main problem is solved, thanks a lot!

koalo commented 7 months ago

Any updates regarding the mentioned upload of the new Debian packages? Let me know if I can support somehow

michalvasko commented 7 months ago

Well, there are updates in the sense that we no longer have anyone handling official Debian package upload and so must leave it to the initiative of Debian maintainers. If you are one and are willing to handle this, I would provide assistance and even the scripts (in their basic working form, not strictly compliant with all the Debian requirements), we still try to maintain them in the repository directly.

koalo commented 7 months ago

We had a quick look and apparently there are a few bugs that are currently blocking further progress at Debian side for both netopeer2 and sysrepo:

Do some of these bugs trigger something in the back of your mind that is already handled in the GitHub issue tracker (or even already fixed)? I am happy to support with fixing (likely not immediately, but within the next months) and/or responding to the Debian bug tracker to enable further progress on Debian side.

michalvasko commented 7 months ago

Okay, those versions are really old and most of the problems have already been fixed, I will fix the rest. So please contact me once you would like to make some progress with this, the first step would be to upload the current versions of the projects.

koalo commented 7 months ago

Sounds good! I created https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1065080 and hope to get an answer from Ondřej, since he is the assigned Debian maintainer for the packages. If he does not respond or is busy, we should hopefully be able to take the next steps (like triggering a non-maintainer upload).

michalvasko commented 7 months ago

I doubt he will. He was the first maintainer we tried to have officially, it did not work out. Then there was another guy, which also cannot maintain it anymore so that is why I asked you.

koalo commented 7 months ago

I expected that, but Debian is quite strict with its maintainership, so at least we need to have it documented that we tried to contact him before proceeding. I also cannot promise yet that it will work out with us long term (I am also not a Debian maintainer, but we have one at our company), but one of our projects (https://github.com/Linutronix/detnetctl) heavily relies on YANG and sysrepo and we usually use Debian as distribution for our projects (we even have our own Debian-based build environment (https://elbe-rfs.org/)). So at least as long as we use YANG for our projects, we will have a motivation for up-to-date Debian packages for the YANG ecosystem.

michalvasko commented 7 months ago

Understood, that is more than we have now so no problem.