[ovs-dev] [PATCH] ovn-controller-vtep.at: Remove all 'Broken pipe' warning logs from ovsdb-server.log.
Alex Wang
alexw at nicira.com
Mon Aug 24 21:51:42 UTC 2015
On Mon, Aug 24, 2015 at 2:46 PM, Russell Bryant <rbryant at redhat.com> wrote:
> On 08/24/2015 05:37 PM, Alex Wang wrote:
> >
> >
> > On Mon, Aug 24, 2015 at 11:30 AM, Russell Bryant <rbryant at redhat.com
> > <mailto:rbryant at redhat.com>> wrote:
> >
> > On 08/22/2015 12:36 PM, Alex Wang wrote:
> > > This commit makes the OVN_CONTROLLER_VTEP_STOP remove all 'Broken
> > pipe'
> > > warning logs from ovsdb-server.log before running 'check_log'.
> > This is in
> > > that *ctl command (e.g. ovn-nbctl) exits right after committing
> > the change
> > > to database; however, in reaction, some daemon (e.g.
> > ovn-controller-vtep)
> > > may immediately update the database; this later update may cause
> > database
> > > sending update back to *ctl command if *ctl has not proceeded to
> > exit yet;
> > > and if *ctl command exits before database calling send, the send
> > will fail
> > > with 'Broken pipe' error.
> > >
> > > Signed-off-by: Alex Wang <alexw at nicira.com <mailto:
> alexw at nicira.com>>
> > > ---
> > > tests/ovn-controller-vtep.at <http://ovn-controller-vtep.at> |
> > 10 +++++++++-
> > > 1 file changed, 9 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/tests/ovn-controller-vtep.at
> > <http://ovn-controller-vtep.at> b/tests/ovn-controller-vtep.at
> > <http://ovn-controller-vtep.at>
> > > index 72ec6ae..9fc1526 100644
> > > --- a/tests/ovn-controller-vtep.at <http://ovn-controller-vtep.at>
> > > +++ b/tests/ovn-controller-vtep.at <http://ovn-controller-vtep.at>
> > > @@ -82,7 +82,15 @@ m4_define([OVN_CONTROLLER_VTEP_START],
> > > # So many exits... Yeah, we started a lot daemons~
> > > #
> > > m4_define([OVN_CONTROLLER_VTEP_STOP],
> > > - [AT_CHECK([check_logs $1])
> > > + [# removes all 'Broken pipe' warning logs from
> > ovsdb-server.log. this is in
> > > + # that *ctl command (e.g. ovn-nbctl) exits right after
> > committing the change
> > > + # to database. however, in reaction, some daemon (e.g.
> > ovn-controller-vtep)
> > > + # may immediately update the database. this later update may
> > cause database
> > > + # sending update back to *ctl command if *ctl has not
> > proceeded to exit yet.
> > > + # and if *ctl command exits before database calling send, the
> > send from
> > > + # database will fail with 'Broken pipe' error.
> > > + AT_CHECK([sed -i '/Broken pipe/d' ovsdb-server.log])
> > > + AT_CHECK([check_logs $1])
> > > AT_CHECK([ovs-appctl -t ovs-vtep exit])
> > > AT_CHECK([ovs-appctl -t ovn-northd exit])
> > > AT_CHECK([ovs-appctl -t ovn-controller-vtep exit])
> > >
> >
> > Acked-by: Russell Bryant <rbryant at redhat.com
> > <mailto:rbryant at redhat.com>>
> >
> > This looks fine to me. It makes me wonder whether this is worth a
> > warning at all. It's probably more appropriately a debug level
> thing.
> >
> >
> > Thx, applied to master,
> >
> > In production, ovn-*ctl commands (especially those that will cause this
> > issue)
> > are rarely used, so maybe we can wait and see if this can really cause
> some
> > false alarm, and then react?
>
> Yeah, that's fine. I'm not too worried about it. I was just thinking
> out loud
FWIW, the existing OpenStack OVS support still uses ovs-vsctl commands
> by default. Even if it's speaking the ovsdb protocol, it seems like
> there's a race any time the service gets restarted (to upgrade it or
> whatever). It just sounds like a totally normal condition.
>
>
I think ovs-vsctl is special, we actually have the 'next_cfg' to avoid such
race.
> --
> Russell Bryant
>
More information about the dev
mailing list