27
27
except ImportError :
28
28
interceptor = None
29
29
30
+ _allow_split_transaction = False
31
+
30
32
logger = logging .getLogger (__name__ )
31
33
32
34
##################################################################
@@ -1153,7 +1155,9 @@ def execute_scheme(self, yql_text, settings=None):
1153
1155
pass
1154
1156
1155
1157
@abstractmethod
1156
- def transaction (self , tx_mode = None , deny_split_transactions = True ):
1158
+ def transaction (
1159
+ self , tx_mode = None , allow_split_transactions = _allow_split_transaction
1160
+ ):
1157
1161
pass
1158
1162
1159
1163
@abstractmethod
@@ -1621,13 +1625,15 @@ def execute_scheme(self, yql_text, settings=None):
1621
1625
self ._state .endpoint ,
1622
1626
)
1623
1627
1624
- def transaction (self , tx_mode = None , deny_split_transactions = True ):
1628
+ def transaction (
1629
+ self , tx_mode = None , allow_split_transactions = _allow_split_transaction
1630
+ ):
1625
1631
return TxContext (
1626
1632
self ._driver ,
1627
1633
self ._state ,
1628
1634
self ,
1629
1635
tx_mode ,
1630
- deny_split_transactions = deny_split_transactions ,
1636
+ allow_split_transactions = allow_split_transactions ,
1631
1637
)
1632
1638
1633
1639
def has_prepared (self , query ):
@@ -2131,13 +2137,13 @@ class BaseTxContext(ITxContext):
2131
2137
"_driver" ,
2132
2138
"session" ,
2133
2139
"_finished" ,
2134
- "_deny_split_transactions " ,
2140
+ "_allow_split_transactions " ,
2135
2141
)
2136
2142
2137
2143
_COMMIT = "commit"
2138
2144
_ROLLBACK = "rollback"
2139
2145
2140
- def __init__ (self , driver , session_state , session , tx_mode = None , * , deny_split_transactions = True ):
2146
+ def __init__ (self , driver , session_state , session , tx_mode = None , * , allow_split_transactions = _allow_split_transaction ):
2141
2147
"""
2142
2148
An object that provides a simple transaction context manager that allows statements execution
2143
2149
in a transaction. You don't have to open transaction explicitly, because context manager encapsulates
@@ -2161,7 +2167,7 @@ def __init__(self, driver, session_state, session, tx_mode=None, *, deny_split_t
2161
2167
self ._session_state = session_state
2162
2168
self .session = session
2163
2169
self ._finished = ""
2164
- self ._deny_split_transactions = deny_split_transactions
2170
+ self ._allow_split_transactions = allow_split_transactions
2165
2171
2166
2172
def __enter__ (self ):
2167
2173
"""
@@ -2321,7 +2327,7 @@ def _check_split(self, allow=""):
2321
2327
Deny all operaions with transaction after commit/rollback.
2322
2328
Exception: double commit and double rollbacks, because it is safe
2323
2329
"""
2324
- if not self ._deny_split_transactions :
2330
+ if self ._allow_split_transactions :
2325
2331
return
2326
2332
2327
2333
if self ._finished != "" and self ._finished != allow :
0 commit comments