DB race when starting multiple neutron-servers with GRE
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Released
|
Undecided
|
Jakub Libosvar | ||
Juno |
Fix Released
|
Undecided
|
Jakub Libosvar |
Bug Description
If more neutron-servers are started at once, all of them are trying to make the same entries in ml2_gre_
2015-01-09 14:28:25.768 24538 INFO neutron.
2015-01-09 14:28:39.072 24538 ERROR neutron.service [-] Unrecoverable error: please check log for details.
2015-01-09 14:28:39.072 24538 TRACE neutron.service Traceback (most recent call last):
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service service.start()
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self.wsgi_app = _run_wsgi(
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service app = config.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service app = deploy.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return loadobj(APP, uri, name=name, **kw)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return context.create()
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return self.object_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service **context.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service val = callable(*args, **kw)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service app = loader.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service name=name, global_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return self.object_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service **context.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service val = callable(*args, **kw)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service app = loader.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service name=name, global_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return self.object_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return fix_call(
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service val = callable(*args, **kw)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return cls(**local_config)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service plugin = manager.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return weakref.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service cls._create_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return f(*args, **kwargs)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service cls._instance = cls()
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service plugin_provider)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return plugin_class()
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self.type_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service driver.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self._initializ
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self.sync_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib/
2015-01-09 14:28:39.072 24538 TRACE neutron.service session.add(alloc)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self.rollback()
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service compat.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self.commit()
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self._prepare_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self.session.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self._flush(
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service transaction.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service compat.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service flush_context.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service rec.execute(self)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service uow
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service mapper, table, insert)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service execute(statement, multiparams)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return meth(self, multiparams, params)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service return connection.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service compiled_sql, distilled_params
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service context)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service util.raise_
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service reraise(
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service context)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service rowcount = cursor.
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service r = r + self.execute(query, a)
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service self.errorhandl
2015-01-09 14:28:39.072 24538 TRACE neutron.service File "/usr/lib64/
2015-01-09 14:28:39.072 24538 TRACE neutron.service raise errorclass, errorvalue
2015-01-09 14:28:39.072 24538 TRACE neutron.service DBDuplicateEntry: (IntegrityError) (1062, "Duplicate entry '10' for key 'PRIMARY'") 'INSERT INTO ml2_gre_allocations (gre_id, allocated) VALUES (%s, %s)' ((10, 0), (11, 0), (12, 0), (13, 0), (14, 0), (15, 0), (16, 0), (17, 0) ... displaying 10 of 9991 total bound parameter sets ... (9999, 0), (10000, 0))
Changed in neutron: | |
assignee: | nobody → Jakub Libosvar (libosvar) |
Changed in neutron: | |
milestone: | none → kilo-3 |
status: | Fix Committed → Fix Released |
Changed in neutron: | |
milestone: | kilo-3 → 2015.1.0 |
Fix proposed to branch: master /review. openstack. org/152598
Review: https:/