snmp pollster is not thread safe
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ceilometer |
Fix Released
|
High
|
Mehdi Abaakouk |
Bug Description
Hi,
the snmp pollster uses pysnmp, more precisely oneliner.
This one is not threads safe. Currently we use one object for all query within a process.
On juno, this was resulting to the following backtrace because on eventlet:
;RuntimeError: Second simultaneous write on fileno 21 detected. Unless you really know what you're doing, make sure that only one greenthread can write any particular socket. Consider using a pools.Pool. If yo
u do know what you're doing and want to disable this error, call eventlet.
('write', 21, <built-in method switch of GreenThread object at 0x2da50f0>, <built-in method throw of GreenThread object at 0x2da50f0>)
2015-11-19 08:08:48.844 25809 ERROR ceilometer.
Now the issue is completely hidden because nothing warn us when we write with two threads into the same socket.
Cheers,
Changed in ceilometer: | |
importance: | Undecided → High |
Fix proposed to branch: master /review. openstack. org/311057
Review: https:/