Class ClientTxBatchUpdateAllRequest

java.lang.Object
org.apache.ignite.client.handler.requests.table.ClientTxBatchUpdateAllRequest

public class ClientTxBatchUpdateAllRequest extends Object
Mixed upsert + delete batch on a single partition inside an explicit transaction.

Wire layout:

   int      tableId
   long     txId            // resource id of the caller's explicit transaction (nil is rejected)
   int      partitionId
   int      schemaId
   int      count
   BitSet?  deleted          // one bit per row; set means DELETE (key-only tuple), unset means UPSERT (full row)
   count x  (BitSet noValueSet, bytes binaryTuple)
 

Semantics: an UPSERT is a blind insert-or-replace; a DELETE removes the row (a missing key is a server-side no-op). The batch is applied atomically inside the caller's explicit transaction — the client is responsible for committing or rolling back the tx. Implicit transactions are not supported by this op; the C++ client and any other thin client must begin an explicit RW transaction before calling.

  • Constructor Details

    • ClientTxBatchUpdateAllRequest

      public ClientTxBatchUpdateAllRequest()
  • Method Details

    • process

      public static CompletableFuture<ResponseWriter> process(org.apache.ignite.internal.client.proto.ClientMessageUnpacker in, org.apache.ignite.internal.table.IgniteTablesInternal tables, ClientResourceRegistry resources, ClientHandlerMetricSource metrics, org.apache.ignite.internal.tx.TxManager txManager, org.apache.ignite.internal.hlc.ClockService clockService, org.gridgain.internal.license.LicenseFeatureChecker licenseFeatureChecker, NotificationSender notificationSender, org.apache.ignite.internal.hlc.HybridTimestampTracker tsTracker, long requestId, Map<Long,Long> reqToTxMap)
      Processes the request.
      Returns:
      Response future.