Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
The FDP team is no longer accepting new bugs in Bugzilla. Please report your issues under FDP project in Jira. Thanks.

Bug 1831558

Summary: [Debugging] ovn-ctl: Allow wrappers (valgrind) for NB and SB ovsdb-servers
Product: Red Hat Enterprise Linux Fast Datapath Reporter: Ilya Maximets <i.maximets>
Component: OVNAssignee: lorenzo bianconi <lorenzo.bianconi>
Status: CLOSED ERRATA QA Contact: Ehsan Elahi <eelahi>
Severity: medium Docs Contact: Ehsan Elahi <eelahi>
Priority: medium    
Version: FDP 20.CCC: ctrautma, lorenzo.bianconi
Target Milestone: ---Keywords: FutureFeature
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ovn2.13-20.06.2-9.el7fdn Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-10-27 09:49:12 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Ilya Maximets 2020-05-05 09:28:51 UTC
ovs-ctl has following options:
  --ovsdb-server-wrapper
  --ovs-vswitchd-wrapper
These options allows user to start particular process under valgrind or strace.

ovn-ctl has similar options for ovn specific processes:
  --ovn-northd-wrapper
  --ovn-controller-wrapper
  --ovn-ic-wrapper

However, ovn-ctl starts other processes like a bunch of 'ovsdb-server's for
NB and SB databases.  And it starts these processes by itself without invoking
ovs-ctl.  So, user is not able to use something like --ovsdb-server-wrapper to
start databases under valgrind.

ovn-ctl should support --ovsdb-server-wrapper option or have two new options:
  --ovsdb-server-nb-wrapper
  --ovsdb-server-sb-wrapper

Comment 3 Jianlin Shi 2020-10-10 05:48:40 UTC
start ovn with: [root@wsfd-advnetlab18 ovn]# /usr/share/ovn/scripts/ovn-ctl --db-nb-addr=127.0.0.1 --db-nb-port=6641 --db-sb-addr=127.0.0.1 --db-sb-port=6642 --ovsdb-nb-wrapper=valgrind --ovsdb-sb-wrapper=valgrind start_northd

[root@wsfd-advnetlab18 ovn]# ps aux | grep ovn
root       60520  0.0  0.0 146980 52256 ?        Ss   01:44   0:00 valgrind -q --leak-check=full --time-stamp=yes --log-file=/var/log/ovn/ovsdb-nb.valgrind.log.%p ovsdb-server -vconsole:off -vfile:info --log-file=/var/log/ovn/ovsdb-server-nb.log --remote=punix:/var/run/ovn/ovnnb_db.sock --pidfile=/var/run/ovn/ovnnb_db.pid --unixctl=/var/run/ovn/ovnnb_db.ctl --detach --monitor --remote=db:OVN_Northbound,NB_Global,connections --private-key=db:OVN_Northbound,SSL,private_key --certificate=db:OVN_Northbound,SSL,certificate --ca-cert=db:OVN_Northbound,SSL,ca_cert --ssl-protocols=db:OVN_Northbound,SSL,ssl_protocols --ssl-ciphers=db:OVN_Northbound,SSL,ssl_ciphers /etc/ovn/ovnnb_db.db
root       60521  0.6  0.0 156524 65560 ?        S    01:44   0:01 valgrind -q --leak-check=full --time-stamp=yes --log-file=/var/log/ovn/ovsdb-nb.valgrind.log.%p ovsdb-server -vconsole:off -vfile:info --log-file=/var/log/ovn/ovsdb-server-nb.log --remote=punix:/var/run/ovn/ovnnb_db.sock --pidfile=/var/run/ovn/ovnnb_db.pid --unixctl=/var/run/ovn/ovnnb_db.ctl --detach --monitor --remote=db:OVN_Northbound,NB_Global,connections --private-key=db:OVN_Northbound,SSL,private_key --certificate=db:OVN_Northbound,SSL,certificate --ca-cert=db:OVN_Northbound,SSL,ca_cert --ssl-protocols=db:OVN_Northbound,SSL,ssl_protocols --ssl-ciphers=db:OVN_Northbound,SSL,ssl_ciphers /etc/ovn/ovnnb_db.db
root       60537  0.0  0.0 146980 52260 ?        Ss   01:44   0:00 valgrind -q --leak-check=full --time-stamp=yes --log-file=/var/log/ovn/ovsdb-sb.valgrind.log.%p ovsdb-server -vconsole:off -vfile:info --log-file=/var/log/ovn/ovsdb-server-sb.log --remote=punix:/var/run/ovn/ovnsb_db.sock --pidfile=/var/run/ovn/ovnsb_db.pid --unixctl=/var/run/ovn/ovnsb_db.ctl --detach --monitor --remote=db:OVN_Southbound,SB_Global,connections --private-key=db:OVN_Southbound,SSL,private_key --certificate=db:OVN_Southbound,SSL,certificate --ca-cert=db:OVN_Southbound,SSL,ca_cert --ssl-protocols=db:OVN_Southbound,SSL,ssl_protocols --ssl-ciphers=db:OVN_Southbound,SSL,ssl_ciphers /etc/ovn/ovnsb_db.db
root       60538  0.6  0.0 156684 70604 ?        S    01:44   0:01 valgrind -q --leak-check=full --time-stamp=yes --log-file=/var/log/ovn/ovsdb-sb.valgrind.log.%p ovsdb-server -vconsole:off -vfile:info --log-file=/var/log/ovn/ovsdb-server-sb.log --remote=punix:/var/run/ovn/ovnsb_db.sock --pidfile=/var/run/ovn/ovnsb_db.pid --unixctl=/var/run/ovn/ovnsb_db.ctl --detach --monitor --remote=db:OVN_Southbound,SB_Global,connections --private-key=db:OVN_Southbound,SSL,private_key --certificate=db:OVN_Southbound,SSL,certificate --ca-cert=db:OVN_Southbound,SSL,ca_cert --ssl-protocols=db:OVN_Southbound,SSL,ssl_protocols --ssl-ciphers=db:OVN_Southbound,SSL,ssl_ciphers /etc/ovn/ovnsb_db.db
root       60546  0.0  0.0  42112   996 ?        S<s  01:44   0:00 ovn-northd: monitoring pid 60547 (healthy)
root       60547  0.0  0.0  42772  4024 ?        S<   01:44   0:00 ovn-northd -vconsole:emer -vsyslog:err -vfile:info --ovnnb-db=unix:/var/run/ovn/ovnnb_db.sock --ovnsb-db=unix:/var/run/ovn/ovnsb_db.sock --no-chdir --log-file=/var/log/ovn/ovn-northd.log --pidfile=/var/run/ovn/ovn-northd.pid --detach --monitor
root       60639  0.0  0.0  12112  1056 pts/0    R+   01:47   0:00 grep --color=auto ovn

Comment 4 Jianlin Shi 2020-10-10 05:50:27 UTC
also verified on rhel7 version:

[root@wsfd-advnetlab16 bz1845109]# rpm -qa | grep -E "openvswitch|ovn"
kernel-kernel-networking-openvswitch-ovn-common-1.0-9.noarch
ovn2.13-20.09.0-1.el7fdp.x86_64
kernel-kernel-networking-openvswitch-ovn-basic-1.0-30.noarch
openvswitch-selinux-extra-policy-1.0-15.el7fdp.noarch
openvswitch2.13-2.13.0-51.el7fdp.x86_64
ovn2.13-central-20.09.0-1.el7fdp.x86_64
ovn2.13-host-20.09.0-1.el7fdp.x86_64

[root@wsfd-advnetlab16 bz1845109]# ps aux | grep ovn
root     114210  0.5  0.0 144836 46308 ?        Ss   01:49   0:00 valgrind -q --leak-check=full --time-stamp=yes --log-file=/var/log/ovn/ovsdb-nb.valgrind.log.%p ovsdb-server -vconsole:off -vfile:info --log-file=/var/log/ovn/ovsdb-server-nb.log --remote=punix:/var/run/ovn/ovnnb_db.sock --pidfile=/var/run/ovn/ovnnb_db.pid --unixctl=/var/run/ovn/ovnnb_db.ctl --detach --monitor --remote=db:OVN_Northbound,NB_Global,connections --private-key=db:OVN_Northbound,SSL,private_key --certificate=db:OVN_Northbound,SSL,certificate --ca-cert=db:OVN_Northbound,SSL,ca_cert --ssl-protocols=db:OVN_Northbound,SSL,ssl_protocols --ssl-ciphers=db:OVN_Northbound,SSL,ssl_ciphers /etc/ovn/ovnnb_db.db
root     114211  8.5  0.0 149556 53676 ?        S    01:49   0:00 valgrind -q --leak-check=full --time-stamp=yes --log-file=/var/log/ovn/ovsdb-nb.valgrind.log.%p ovsdb-server -vconsole:off -vfile:info --log-file=/var/log/ovn/ovsdb-server-nb.log --remote=punix:/var/run/ovn/ovnnb_db.sock --pidfile=/var/run/ovn/ovnnb_db.pid --unixctl=/var/run/ovn/ovnnb_db.ctl --detach --monitor --remote=db:OVN_Northbound,NB_Global,connections --private-key=db:OVN_Northbound,SSL,private_key --certificate=db:OVN_Northbound,SSL,certificate --ca-cert=db:OVN_Northbound,SSL,ca_cert --ssl-protocols=db:OVN_Northbound,SSL,ssl_protocols --ssl-ciphers=db:OVN_Northbound,SSL,ssl_ciphers /etc/ovn/ovnnb_db.db
root     114227  0.6  0.0 144836 46304 ?        Ss   01:49   0:00 valgrind -q --leak-check=full --time-stamp=yes --log-file=/var/log/ovn/ovsdb-sb.valgrind.log.%p ovsdb-server -vconsole:off -vfile:info --log-file=/var/log/ovn/ovsdb-server-sb.log --remote=punix:/var/run/ovn/ovnsb_db.sock --pidfile=/var/run/ovn/ovnsb_db.pid --unixctl=/var/run/ovn/ovnsb_db.ctl --detach --monitor --remote=db:OVN_Southbound,SB_Global,connections --private-key=db:OVN_Southbound,SSL,private_key --certificate=db:OVN_Southbound,SSL,certificate --ca-cert=db:OVN_Southbound,SSL,ca_cert --ssl-protocols=db:OVN_Southbound,SSL,ssl_protocols --ssl-ciphers=db:OVN_Southbound,SSL,ssl_ciphers /etc/ovn/ovnsb_db.db
root     114228 10.2  0.0 149572 53700 ?        S    01:49   0:00 valgrind -q --leak-check=full --time-stamp=yes --log-file=/var/log/ovn/ovsdb-sb.valgrind.log.%p ovsdb-server -vconsole:off -vfile:info --log-file=/var/log/ovn/ovsdb-server-sb.log --remote=punix:/var/run/ovn/ovnsb_db.sock --pidfile=/var/run/ovn/ovnsb_db.pid --unixctl=/var/run/ovn/ovnsb_db.ctl --detach --monitor --remote=db:OVN_Southbound,SB_Global,connections --private-key=db:OVN_Southbound,SSL,private_key --certificate=db:OVN_Southbound,SSL,certificate --ca-cert=db:OVN_Southbound,SSL,ca_cert --ssl-protocols=db:OVN_Southbound,SSL,ssl_protocols --ssl-ciphers=db:OVN_Southbound,SSL,ssl_ciphers /etc/ovn/ovnsb_db.db
root     114236  0.0  0.0  59792  1180 ?        S<s  01:49   0:00 ovn-northd: monitoring pid 114237 (healthy)
root     114237  0.0  0.0  60188  2384 ?        S<   01:49   0:00 ovn-northd -vconsole:emer -vsyslog:err -vfile:info --ovnnb-db=unix:/var/run/ovn/ovnnb_db.sock --ovnsb-db=unix:/var/run/ovn/ovnsb_db.sock --no-chdir --log-file=/var/log/ovn/ovn-northd.log --pidfile=/var/run/ovn/ovn-northd.pid --detach --monitor
root     114239  0.0  0.0 112812   968 pts/0    R+   01:49   0:00 grep --color=auto ovn

Comment 6 errata-xmlrpc 2020-10-27 09:49:12 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (ovn2.13 bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:4356