I've got the same problem. And here is how I fixed it.
The OVN named daemons are stored in /var/run/ovn
openvswitch -> /var/run/openvswitch/
ovnnb_db.ctl=
ovnnb_db.pid
ovnnb_db.sock=
ovn-northd.176946.ctl=
ovn-northd.pid
ovnsb_db.ctl=
ovnsb_db.pid
ovnsb_db.sock=
The OVS named daemons are stored in /var/run/openvswitch
br-ex.mgmt=
br-ex.snoop=
db.sock=
ovsdb-server.176376.ctl=
ovsdb-server.pid
ovs-vswitchd.176528.ctl=
ovs-vswitchd.pid
The problem lies with the use of $OVS_RUNDIR variable in the function start_ovn of the script lib/neutron_plugins/ovn_agent (lib/neutron_plugins/ovn_agent:start_ovn).
What I did was replace $OVS_RUNDIR with $OVN_RUNDIR within the function. Another fix I had to make before rerunning stack.sh was to manually remove (untack.sh would not do it) the link "/var/run/ovn/openvswitch".
So after fixing the script lib/neutron_plugins/ovn_agent, running unstack.sh and manually removing a stray link file I rerun stack.sh and after almost a week of trial and error I got devstack up and running.
This is the original code where I applied the substitution: (lib/neutron_plugins/ovn_agent:function start_ovn)
690 # Wait for the service to be ready
691 wait_for_sock_file $OVS_RUNDIR/ovnnb_db.sock
692 wait_for_sock_file $OVS_RUNDIR/ovnsb_db.sock
693
694 if is_service_enabled tls-proxy; then
695 sudo ovn-nbctl --db=unix:$OVS_RUNDIR/ovnnb_db.sock set-ssl $INT_CA_DIR/private/$DEVSTACK_CERT_NAME.key $INT_CA_DIR/$DEVSTACK_CERT_NAME.cr>
696 sudo ovn-sbctl --db=unix:$OVS_RUNDIR/ovnsb_db.sock set-ssl $INT_CA_DIR/private/$DEVSTACK_CERT_NAME.key $INT_CA_DIR/$DEVSTACK_CERT_NAME.cr>
697 fi
698 sudo ovn-nbctl --db=unix:$OVS_RUNDIR/ovnnb_db.sock set-connection p${OVN_PROTO}:6641:$SERVICE_LISTEN_ADDRESS -- set connection . inactivity_p>
699 sudo ovn-sbctl --db=unix:$OVS_RUNDIR/ovnsb_db.sock set-connection p${OVN_PROTO}:6642:$SERVICE_LISTEN_ADDRESS -- set connection . inactivity_p>
700 sudo ovs-appctl -t $OVS_RUNDIR/ovnnb_db.ctl vlog/set console:off syslog:$OVN_DBS_LOG_LEVEL file:$OVN_DBS_LOG_LEVEL
701 sudo ovs-appctl -t $OVS_RUNDIR/ovnsb_db.ctl vlog/set console:off syslog:$OVN_DBS_LOG_LEVEL file:$OVN_DBS_LOG_LEVEL