DB2 error occurs when neutron server enables multiple api workers
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Released
|
Undecided
|
Gong Zhang | ||
Kilo |
New
|
Undecided
|
Unassigned |
Bug Description
When neutron server enables multiple api workers, it will use os.fork to start multiple neutron server process. During this period, some DB2 error will occur as below, which shows we are trying to close a closed connection. It seems like that pooled connection is shared by processes.
2015-04-29 22:27:39.330 567 ERROR sqlalchemy.
2015-04-29 22:27:39.330 567 TRACE sqlalchemy.
2015-04-29 22:27:39.330 567 TRACE sqlalchemy.
2015-04-29 22:27:39.330 567 TRACE sqlalchemy.
2015-04-29 22:27:39.330 567 TRACE sqlalchemy.
2015-04-29 22:27:39.330 567 TRACE sqlalchemy.
2015-04-29 22:27:39.330 567 TRACE sqlalchemy.
2015-04-29 22:27:39.330 567 TRACE sqlalchemy.
2015-04-29 22:27:39.330 567 TRACE sqlalchemy.
Currently neutron is using dispose() in child process to release the connnection and create new one. Actually we should dispose the pool before os.fork in father process.
Reference to sqlalchemy doc(http://
Changed in neutron: | |
assignee: | nobody → Zhang Gong (zhanggbj) |
summary: |
- DB2 error occurs when neutron server enables multiple api works + DB2 error occurs when neutron server enables multiple api workers |
Changed in neutron: | |
status: | New → In Progress |
description: | updated |
Changed in neutron: | |
milestone: | none → liberty-1 |
status: | Fix Committed → Fix Released |
Changed in neutron: | |
milestone: | liberty-1 → 7.0.0 |
Fix proposed to branch: master /review. openstack. org/185898
Review: https:/