Auto-reload causes all DB queries to fail in debug mode
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Fuel for OpenStack |
Fix Committed
|
High
|
Roman Prykhodchenko |
Bug Description
The problem is that web.py tries reloading modules at some point and while it does that it expects that modules could be reloaded in any order without raising any errors.
Unfortunately for Nailgun that condition is not satisfied in at least one place. That place is SQLAlchemy models which are placed in different modules. If web.py tries to reload any model’s module, say notifications.py, before reloading base module, Notifications will try registering itself in the old Base’s MetaData which already contain info about the appropriate table and that causes errors like "Table 'notifications' is already defined for this MetaData instance. Specify 'extend_
Changed in fuel: | |
status: | New → Confirmed |
Changed in fuel: | |
assignee: | nobody → Fuel Python Team (fuel-python) |
The issue doesn't occur in production env, so I propose to fix it in 6.1.