TranslationHook middleware can lose track of its thread local storage
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Aodh |
Fix Released
|
High
|
Chris Dent | ||
Ceilometer |
Fix Released
|
High
|
Chris Dent |
Bug Description
In both aodh and ceilometer its possible for the following error to arise. This happens when an earlier exception may need to be translated. So not only is this error happening it is masking the one that actually matters.
2015-08-03 20:54:47.958508 Traceback (most recent call last):
2015-08-03 20:54:47.958533 File "/usr/local/
2015-08-03 20:54:47.958640 resp = self.call_func(req, *args, **self.kwargs)
2015-08-03 20:54:47.958651 File "/usr/local/
2015-08-03 20:54:47.958666 return self.func(req, *args, **kwargs)
2015-08-03 20:54:47.958673 File "/usr/local/
2015-08-03 20:54:47.958723 response = req.get_
2015-08-03 20:54:47.958733 File "/usr/local/
2015-08-03 20:54:47.959070 application, catch_exc_
2015-08-03 20:54:47.959082 File "/usr/local/
2015-08-03 20:54:47.959098 app_iter = application(
2015-08-03 20:54:47.959106 File "/usr/local/
2015-08-03 20:54:47.959117 resp = self.call_func(req, *args, **self.kwargs)
2015-08-03 20:54:47.959124 File "/usr/local/
2015-08-03 20:54:47.959134 return self.func(req, *args, **kwargs)
2015-08-03 20:54:47.959140 File "/usr/local/
2015-08-03 20:54:47.959335 response = req.get_
2015-08-03 20:54:47.959346 File "/usr/local/
2015-08-03 20:54:47.959367 application, catch_exc_
2015-08-03 20:54:47.959374 File "/usr/local/
2015-08-03 20:54:47.959384 app_iter = application(
2015-08-03 20:54:47.959390 File "/usr/local/
2015-08-03 20:54:47.959453 return self.applicatio
2015-08-03 20:54:47.959462 File "/opt/stack/
2015-08-03 20:54:47.959539 error = hook.local_
2015-08-03 20:54:47.959554 AttributeError: 'thread._local' object has no attribute 'translatable_
Since this is a pecan based middleware it's not clear why thread specific storage is required, doesn't pecan provide a pseudo-global request object that can be latched on to?
Changed in aodh: | |
assignee: | nobody → Julien Danjou (jdanjou) |
status: | New → Confirmed |
Changed in ceilometer: | |
status: | New → Confirmed |
assignee: | nobody → Julien Danjou (jdanjou) |
importance: | Undecided → High |
Changed in aodh: | |
importance: | Undecided → High |
Changed in ceilometer: | |
milestone: | none → liberty-3 |
status: | Fix Committed → Fix Released |
Changed in aodh: | |
milestone: | none → 1.0.0 |
status: | Fix Committed → Fix Released |
Changed in ceilometer: | |
milestone: | liberty-3 → 5.0.0 |
This has become something of a common problem in the gate for getting aodh functional tests running: http:// logs.openstack. org/40/ 207840/ 10/experimental /gate-aodh- dsvm-functional -mongodb/ 644081f/ logs/apache/ aodh.txt. gz