I noticed this when running devstack:
+ /opt/stack/keystone/bin/keystone-manage db_sync
/opt/stack/oslo.db/oslo/db/sqlalchemy/exc_filters.py:254: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
match = regexp.match(exc.message)
/opt/stack/oslo.db/oslo/db/sqlalchemy/exc_filters.py:254: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
match = regexp.match(exc.message)
/opt/stack/oslo.db/oslo/db/sqlalchemy/exc_filters.py:254: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
match = regexp.match(exc.message)
/opt/stack/oslo.db/oslo/db/sqlalchemy/exc_filters.py:254: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
match = regexp.match(exc.message)
/opt/stack/oslo.db/oslo/db/sqlalchemy/exc_filters.py:254: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
match = regexp.match(exc.message)
/opt/stack/oslo.db/oslo/db/sqlalchemy/exc_filters.py:254: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
match = regexp.match(exc.message)
There shouldn't be a bunch of deprecation warnings printed out when running keystone-manage db_sync
Here's the code, in case it's fixed in a different bug: http://git.openstack.org/cgit/openstack/oslo.db/tree/oslo/db/sqlalchemy/exc_filters.py#n254
I'm going to untag this as low-hanging-fruit because there is some historical context here that was lost in the move to filter decorators. The important thing to note is that for SQLAlchemy exceptions e.message != str(e), so this can't just be fixed the easy way most of the other cases of this problem were. We need to fix the problem, and then verify that all of our regexes on all of the supported engines still work.
See the original comment warning about this here: http:// git.openstack. org/cgit/ openstack/ oslo-incubator/ tree/openstack/ common/ db/sqlalchemy/ session. py#n373