zodb / relstorage

A backend for ZODB that stores pickles in a relational database.
Other
54 stars 46 forks source link

UnboundLocalError: local variable 'conn' referenced before assignment #421

Closed jamadden closed 3 years ago

jamadden commented 3 years ago
>>  self._p_jar.add(result)
Module ZODB.Connection:216 in add
>>  self._add(obj, self.new_oid())
Module ZODB.Connection:203 in new_oid
>>  return self._storage.new_oid()
Module relstorage.storage:553 in new_oid
>>  return self._oids.new_oid(pool, commit_in_progress)
Module relstorage.storage.oid:113 in new_oid
>>  self.__preallocate_oids(store_connection_pool, commit_in_progress)
Module relstorage.storage.oid:122 in __preallocate_oids
>>  with store_connection_pool.borrowing(commit=True) as store_connection:
Module contextlib:17 in __enter__
>>  return self.gen.next()
Module relstorage.adapters.connections:393 in borrowing
>>  self._replace(conn, rollback)
UnboundLocalError: local variable 'conn' referenced before assignment
jamadden commented 3 years ago

Given the way this method is written, this means there was an error raised from self.borrow(); the UnboundLocalError is shadowing that exception.