@Override public int executeUpdate(String replicationName, CommandUpdateResult commandUpdateResult) { int updateCount = executeUpdate(); if (commandUpdateResult != null) { commandUpdateResult.setUpdateCount(updateCount); commandUpdateResult.addResult(this, session.getLastRowKey()); } return updateCount; }
final WriteResponseHandler writeResponseHandler = new WriteResponseHandler(n); final ArrayList<Exception> exceptions = new ArrayList<>(1); final CommandUpdateResult commandUpdateResult = new CommandUpdateResult(session.n, session.w, session.isAutoCommit(), this.commands); commandUpdateResult.validate(); return commandUpdateResult.getUpdateCount(); } catch (WriteTimeoutException | WriteFailureException e) { if (tries < session.maxRries)
final WriteResponseHandler writeResponseHandler = new WriteResponseHandler(n); final ArrayList<Exception> exceptions = new ArrayList<>(1); final CommandUpdateResult commandUpdateResult = new CommandUpdateResult(session.n, session.w, session.isAutoCommit(), this.commands); commandUpdateResult.validate(); return result; } catch (WriteTimeoutException | WriteFailureException e) {
session.handleException(e); commandUpdateResult.addResult(this, resultAL.get()); return ValueLong.get(resultAL.get());
@Override public Object executeAppend(String replicationName, String mapName, ByteBuffer value, CommandUpdateResult commandUpdateResult) { session.setReplicationName(replicationName); StorageMap<Object, Object> map = session.getStorageMap(mapName); Object result = map.append(map.getValueType().read(value)); commandUpdateResult.addResult(this, ((ValueLong) result).getLong()); Transaction parentTransaction = session.getParentTransaction(); if (parentTransaction != null && !parentTransaction.isAutoCommit()) { parentTransaction.addLocalTransactionNames(session.getTransaction().getLocalTransactionNames()); } return result; }
@Override public void runInternal() { try { if (isDistributedUpdate) session.getParentTransaction().addLocalTransactionNames(transfer.readString()); int updateCount = transfer.readInt(); long key = transfer.readLong(); if (commandUpdateResult != null) { commandUpdateResult.setUpdateCount(updateCount); commandUpdateResult.addResult(ClientCommand.this, key); } setResult(updateCount); if (handler != null) { AsyncResult<Integer> r = new AsyncResult<>(); r.setResult(updateCount); handler.handle(r); } } catch (IOException e) { throw DbException.convert(e); } } };