Some idea cross my mind, I saw a test case "test_graceful_fetch_on_non_rows" in sqlalchemy/test/sql/test_query.py as below,
I am guessing whether in your cinder db there are records in table "volumes". Logs you posted looks like querying volumes in volume_get_all, this happens when cinder audit running periodically. Maybe when there are no volumes, we will see such exception logs.
def test_graceful_fetch_on_non_rows(self):
"""test that calling fetchone() etc. on a result that doesn't
return rows fails gracefully.
"""
conn = testing.db.connect()
for meth in ('fetchone', 'fetchall', 'first', 'scalar', 'fetchmany'):
trans = conn.begin()
result = conn.execute(users.insert(), user_id=1) assert_raises_message( exc.ResourceClosedError, "This result object does not return rows. "
"It has been closed automatically.", getattr(result, meth),
) trans.rollback()
Some idea cross my mind, I saw a test case "test_graceful_ fetch_on_ non_rows" in sqlalchemy/ test/sql/ test_query. py as below,
I am guessing whether in your cinder db there are records in table "volumes". Logs you posted looks like querying volumes in volume_get_all, this happens when cinder audit running periodically. Maybe when there are no volumes, we will see such exception logs.
def test_graceful_ fetch_on_ non_rows( self): db.connect( ) users.insert( ), user_id=1)
assert_ raises_ message(
exc.ResourceC losedError,
"This result object does not return rows. "
getattr( result, meth),
trans. rollback( )
"""test that calling fetchone() etc. on a result that doesn't
return rows fails gracefully.
"""
conn = testing.
for meth in ('fetchone', 'fetchall', 'first', 'scalar', 'fetchmany'):
trans = conn.begin()
result = conn.execute(
"It has been closed automatically.",
)