[master] disable free-route when has access tx level temptable
This commit is contained in:
@ -1064,10 +1064,16 @@ int ObTransService::calc_txn_free_route(ObTxDesc *tx, ObTxnFreeRouteCtx &ctx)
|
|||||||
bool ObTransService::need_fallback_(ObTxDesc &tx, int64_t &total_size)
|
bool ObTransService::need_fallback_(ObTxDesc &tx, int64_t &total_size)
|
||||||
{
|
{
|
||||||
bool fallback = false;
|
bool fallback = false;
|
||||||
|
if (tx.with_temporary_table()) {
|
||||||
|
TRANS_LOG(TRACE, "with tx level temp-table");
|
||||||
|
fallback = true;
|
||||||
|
} else {
|
||||||
total_size = OB_E(EventTable::EN_TX_FREE_ROUTE_STATE_SIZE, tx.tx_id_) tx.estimate_state_size();
|
total_size = OB_E(EventTable::EN_TX_FREE_ROUTE_STATE_SIZE, tx.tx_id_) tx.estimate_state_size();
|
||||||
if (total_size > MAX_STATE_SIZE) {
|
if (total_size > MAX_STATE_SIZE) {
|
||||||
|
TRANS_LOG(TRACE, "tx state exceed max allowed", K(total_size), K(MAX_STATE_SIZE));
|
||||||
fallback = true;
|
fallback = true;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return fallback;
|
return fallback;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user