Enginefacade switch creates an exception on PeriodicTask

Bug #1781787 reported by Michel Peterson on 2018-07-15
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
networking-odl
Undecided
Unassigned

Bug Description

    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task [None req-28a9da32-7fae-4cb1-bb4e-03f6b0af238f None None] Failed during periodic task operation full_sync.: IndexError: tuple index out of range
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task Traceback (most recent call last):
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/opt/stack/networking-odl/networking_odl/journal/periodic_task.py", line 64, in _execute_op
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task operation(context=context)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/opt/stack/neutron/neutron/db/api.py", line 162, in wrapped
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task return method(*args, **kwargs)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/opt/stack/neutron/neutron/db/api.py", line 92, in wrapped
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task setattr(e, '_RETRY_EXCEEDED', True)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task self.force_reraise()
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task six.reraise(self.type_, self.value, self.tb)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/opt/stack/neutron/neutron/db/api.py", line 88, in wrapped
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task return f(*args, **kwargs)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 154, in wrapper
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task ectxt.value = e.inner_exc
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task self.force_reraise()
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task six.reraise(self.type_, self.value, self.tb)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 142, in wrapper
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task return f(*args, **kwargs)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/opt/stack/neutron/neutron/db/api.py", line 127, in wrapped
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task LOG.debug("Retry wrapper got retriable exception: %s", e)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task self.force_reraise()
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task six.reraise(self.type_, self.value, self.tb)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/opt/stack/neutron/neutron/db/api.py", line 123, in wrapped
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task return f(*dup_args, **dup_kwargs)
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task File "/usr/local/lib/python2.7/dist-packages/oslo_db/sqlalchemy/enginefacade.py", line 990, in wrapper
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task context = args[context_index]
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task IndexError: tuple index out of range
    Jul 12 09:04:34 ubuntu-xenial neutron-server[27584]: ERROR networking_odl.journal.periodic_task

Reviewed: https://review.openstack.org/582762
Committed: https://git.openstack.org/cgit/openstack/networking-odl/commit/?id=752f9d650ac48a8c7f2ddbc732ae4341459cf4f1
Submitter: Zuul
Branch: master

commit 752f9d650ac48a8c7f2ddbc732ae4341459cf4f1
Author: Michel Peterson <email address hidden>
Date: Sun Jul 15 14:27:51 2018 +0300

    Assure that PeriodicTask passes context as args

    Enginefacade expects that the first argument of functions are either
    self, cls or the context. At the same time, PeriodicTask was sending
    context as a kwargs called context. Because the introspection that
    enginefacade does only happens on args this was causing an error with
    PeriodicTask.

    This patch modifies the behavior of PeriodicTask so it only sends the
    context as enginefacade expects it -an args.

    Change-Id: I7edb4c3284a358fba80e4fe68a0cd0f08f809b1a
    Closes-Bug: #1781787

Changed in networking-odl:
status: New → Fix Released

This issue was fixed in the openstack/networking-odl 13.0.0.0rc1 release candidate.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers