TxCounters counters = txCounters(false); if (counters != null && F.isEmpty(counters.updateCounters())) { List<PartitionUpdateCountersMessage> cntrMsgs = new ArrayList<>(); counters.updateCounters(cntrMsgs);
/** */ private void neighborcastPartitionCountersAndRollback(IgniteInternalTx tx) { TxCounters txCounters = tx.txCounters(false); if (txCounters == null || txCounters.updateCounters() == null) tx.rollbackAsync(); PartitionCountersNeighborcastFuture fut = new PartitionCountersNeighborcastFuture(tx, cctx); fut.listen(fut0 -> tx.rollbackAsync()); fut.init(); }
Collection<PartitionUpdateCountersMessage> updCntrs; if (txCntrs == null || F.isEmpty(updCntrs = txCntrs.updateCounters())) return null;
return; Collection<PartitionUpdateCountersMessage> cntrsColl = txCntrs.updateCounters();
/** {@inheritDoc} */ @Override public final void rollbackRemoteTx() { try { // Note that we don't evict near entries here - // they will be deleted by their corresponding transactions. if (state(ROLLING_BACK) || state() == UNKNOWN) { cctx.tm().rollbackTx(this, false, skipCompletedVersions()); TxCounters counters = txCounters(false); if (counters != null) cctx.tm().txHandler().applyPartitionsUpdatesCounters(counters.updateCounters()); state(ROLLED_BACK); cctx.mvccCaching().onTxFinished(this, false); } } catch (IgniteCheckedException | RuntimeException | Error e) { state(UNKNOWN); U.error(log, "Error during tx rollback.", e); if (e instanceof IgniteCheckedException) throw new IgniteException(e); else if (e instanceof RuntimeException) throw (RuntimeException) e; else throw (Error) e; } }
tx.txCounters(true).updateCounters(req.updateCounters());
cctx.tm().txHandler().applyPartitionsUpdatesCounters(txCntrs.updateCounters());
tx.txCounters(true).updateCounters(req.updateCounters());
TxCounters counters = txCounters(false); if (counters != null && F.isEmpty(counters.updateCounters())) { List<PartitionUpdateCountersMessage> cntrMsgs = new ArrayList<>(); counters.updateCounters(cntrMsgs);
/** */ private void neighborcastPartitionCountersAndRollback(IgniteInternalTx tx) { TxCounters txCounters = tx.txCounters(false); if (txCounters == null || txCounters.updateCounters() == null) tx.rollbackAsync(); PartitionCountersNeighborcastFuture fut = new PartitionCountersNeighborcastFuture(tx, cctx); fut.listen(fut0 -> tx.rollbackAsync()); fut.init(); }
TxCounters txCntrs = tx.txCounters(false); if (txCntrs == null || F.isEmpty(txCntrs.updateCounters())) return null; Collection<PartitionUpdateCountersMessage> updCntrs = txCntrs.updateCounters();
Collection<PartitionUpdateCountersMessage> cntrsColl = txCntrs.updateCounters();
/** {@inheritDoc} */ @Override public final void rollbackRemoteTx() { try { // Note that we don't evict near entries here - // they will be deleted by their corresponding transactions. if (state(ROLLING_BACK) || state() == UNKNOWN) { cctx.tm().rollbackTx(this, false, skipCompletedVers); TxCounters counters = txCounters(false); if (counters != null) cctx.tm().txHandler().applyPartitionsUpdatesCounters(counters.updateCounters()); state(ROLLED_BACK); cctx.mvccCaching().onTxFinished(this, false); cctx.tm().mvccFinish(this, false); } } catch (IgniteCheckedException | RuntimeException | Error e) { state(UNKNOWN); if (e instanceof IgniteCheckedException) throw new IgniteException(e); else if (e instanceof RuntimeException) throw (RuntimeException) e; else throw (Error) e; } }
cctx.tm().txHandler().applyPartitionsUpdatesCounters(txCntrs.updateCounters());
dhtTx.txCounters(true).updateCounters(req.updateCounters());
tx.txCounters(true).updateCounters(req.updateCounters());