File tree Expand file tree Collapse file tree 2 files changed +12
-9
lines changed Expand file tree Collapse file tree 2 files changed +12
-9
lines changed Original file line number Diff line number Diff line change @@ -92,6 +92,15 @@ cdef class BaseThinConnImpl(BaseConnImpl):
9292 state = state)
9393 self ._transaction_context = None
9494
95+ cdef int _clear_dbobject_type_cache(self ) except - 1 :
96+ """
97+ """
98+ cdef int cache_num
99+ if self ._dbobject_type_cache_num > 0 :
100+ cache_num = self ._dbobject_type_cache_num
101+ self ._dbobject_type_cache_num = 0
102+ remove_dbobject_type_cache(cache_num)
103+
95104 cdef BaseThinLobImpl _create_lob_impl(self , DbType dbtype,
96105 bytes locator = None ):
97106 """
@@ -167,9 +176,7 @@ cdef class BaseThinConnImpl(BaseConnImpl):
167176
168177 cdef int _force_close(self ) except - 1 :
169178 self ._pool = None
170- if self ._dbobject_type_cache_num > 0 :
171- remove_dbobject_type_cache(self ._dbobject_type_cache_num)
172- self ._dbobject_type_cache_num = 0
179+ self ._clear_dbobject_type_cache()
173180 self ._protocol._force_close()
174181
175182 cdef Statement _get_statement(self , str sql = None ,
Original file line number Diff line number Diff line change @@ -195,9 +195,7 @@ cdef class Protocol(BaseProtocol):
195195
196196 # otherwise, destroy the database object type cache, send the
197197 # logoff message and final close packet
198- if conn_impl._dbobject_type_cache_num > 0 :
199- remove_dbobject_type_cache(conn_impl._dbobject_type_cache_num)
200- conn_impl._dbobject_type_cache_num = 0
198+ conn_impl._clear_dbobject_type_cache()
201199 if self ._transport is not None :
202200 if not conn_impl._drcp_enabled:
203201 message = conn_impl._create_message(LogoffMessage)
@@ -555,9 +553,7 @@ cdef class BaseAsyncProtocol(BaseProtocol):
555553
556554 # otherwise, destroy the database object type cache, send the
557555 # logoff message and final close packet
558- if conn_impl._dbobject_type_cache_num > 0 :
559- remove_dbobject_type_cache(conn_impl._dbobject_type_cache_num)
560- conn_impl._dbobject_type_cache_num = 0
556+ conn_impl._clear_dbobject_type_cache()
561557 if self ._transport is not None :
562558 if not conn_impl._drcp_enabled:
563559 message = conn_impl._create_message(LogoffMessage)
You can’t perform that action at this time.
0 commit comments