## Uses of Class
org.apache.cassandra.db.Mutation

Packages that use Mutation
org.apache.cassandra.batchlog
org.apache.cassandra.db
org.apache.cassandra.db.commitlog
org.apache.cassandra.db.partitions
org.apache.cassandra.db.view
org.apache.cassandra.hints: Hints subsystem consists of several components.
org.apache.cassandra.net
org.apache.cassandra.schema
org.apache.cassandra.service
org.apache.cassandra.service.paxos
org.apache.cassandra.triggers

### Uses of Mutation in org.apache.cassandra.batchlog

Methods in org.apache.cassandra.batchlog with parameters of type Mutation
`static void` LegacyBatchlogMigrator.`handleLegacyMutation(Mutation mutation)`
`static boolean` LegacyBatchlogMigrator.`isLegacyBatchlogMutation(Mutation mutation)`

Method parameters in org.apache.cassandra.batchlog with type arguments of type Mutation
`static Batch` Batch.`createLocal(java.util.UUID id, long creationTime, java.util.Collection<Mutation> mutations)` Creates a 'local' batch - with all enclosed mutations in decoded form (as Mutation instances)

### Uses of Mutation in org.apache.cassandra.db

Methods in org.apache.cassandra.db that return Mutation
`Mutation` Mutation.`add(PartitionUpdate update)` Adds PartitionUpdate to the local set of modifications.
`Mutation` CounterMutation.`applyCounterMutation()` Applies the counter mutation, returns the result Mutation (for replication to other nodes).
`Mutation` Mutation.SimpleBuilder.`build()` Build the mutation represented by this builder.
`Mutation` SimpleBuilders.MutationBuilder.`build()`
`Mutation` SimpleBuilders.PartitionUpdateBuilder.`buildAsMutation()`
`Mutation` Mutation.`copy()`
`Mutation` Mutation.MutationSerializer.`deserialize(DataInputPlus in, int version)`
`Mutation` Mutation.MutationSerializer.`deserialize(DataInputPlus in, int version, SerializationHelper.Flag flag)`
`Mutation` CounterMutation.`getMutation()`
`static Mutation` Mutation.`merge(java.util.List<Mutation> mutations)` Creates a new mutation that merges all the provided mutations.
`Mutation` Mutation.`without(java.util.Set<java.util.UUID> cfIds)`
`Mutation` Mutation.`without(java.util.UUID cfId)`

Methods in org.apache.cassandra.db that return types with arguments of type Mutation
`MessageOut<Mutation>` Mutation.`createMessage()`
`MessageOut<Mutation>` Mutation.`createMessage(MessagingService.Verb verb)`

Methods in org.apache.cassandra.db with parameters of type Mutation
`void` Keyspace.`apply(Mutation mutation, boolean writeCommitLog)`
`void` Keyspace.`apply(Mutation mutation, boolean writeCommitLog, boolean updateIndexes)`
`void` Keyspace.`apply(Mutation mutation, boolean writeCommitLog, boolean updateIndexes, boolean isDroppable)` If apply is blocking, apply must not be deferred Otherwise there is a race condition where ALL mutation workers are beeing blocked ending in a complete deadlock of the mutation stage.
`java.util.concurrent.CompletableFuture<?>` Keyspace.`applyFuture(Mutation mutation, boolean writeCommitLog, boolean updateIndexes)`
`java.util.concurrent.CompletableFuture<?>` Keyspace.`applyFuture(Mutation mutation, boolean writeCommitLog, boolean updateIndexes, boolean isDroppable, boolean isDeferrable)`
`void` Mutation.MutationSerializer.`serialize(Mutation mutation, DataOutputPlus out, int version)`
`long` Mutation.MutationSerializer.`serializedSize(Mutation mutation, int version)`

Method parameters in org.apache.cassandra.db with type arguments of type Mutation
`void` DefinitionsUpdateVerbHandler.`doVerb(MessageIn<java.util.Collection<Mutation>> message, int id)`
`void` MutationVerbHandler.`doVerb(MessageIn<Mutation> message, int id)`
`void` ReadRepairVerbHandler.`doVerb(MessageIn<Mutation> message, int id)`
`static Mutation` Mutation.`merge(java.util.List<Mutation> mutations)` Creates a new mutation that merges all the provided mutations.

Constructors in org.apache.cassandra.db with parameters of type Mutation
Constructor and Description
`CounterMutation(Mutation mutation, ConsistencyLevel consistency)`

### Uses of Mutation in org.apache.cassandra.db.commitlog

Methods in org.apache.cassandra.db.commitlog with parameters of type Mutation
`CommitLogPosition` CommitLog.`add(Mutation mutation)` Add a Mutation to the commit log.
`abstract CommitLogSegment.Allocation` AbstractCommitLogSegmentManager.`allocate(Mutation mutation, int size)` Allocate a segment within this CLSM.
`CommitLogSegment.Allocation` CommitLogSegmentManagerCDC.`allocate(Mutation mutation, int size)` Reserve space in the current segment for the provided mutation or, if there isn't space available, create a new segment.
`CommitLogSegment.Allocation` CommitLogSegmentManagerStandard.`allocate(Mutation mutation, int size)` Reserve space in the current segment for the provided mutation or, if there isn't space available, create a new segment.
`void` CommitLogReadHandler.`handleMutation(Mutation m, int size, int entryLocation, CommitLogDescriptor desc)` Process a deserialized mutation
`void` CommitLogReplayer.`handleMutation(Mutation m, int size, int entryLocation, CommitLogDescriptor desc)`
`protected java.util.concurrent.Future<java.lang.Integer>` CommitLogReplayer.MutationInitiator.`initiateMutation(Mutation mutation, long segmentId, int serializedSize, int entryLocation, CommitLogReplayer commitLogReplayer)`
`protected boolean` CommitLogReplayer.`pointInTimeExceeded(Mutation fm)`

### Uses of Mutation in org.apache.cassandra.db.partitions

Methods in org.apache.cassandra.db.partitions that return Mutation
`Mutation` PartitionUpdate.SimpleBuilder.`buildAsMutation()` As shortcut for `new Mutation(build())`.

### Uses of Mutation in org.apache.cassandra.db.view

Methods in org.apache.cassandra.db.view that return types with arguments of type Mutation
`java.util.Iterator<java.util.Collection<Mutation>>` TableViews.`generateViewUpdates(java.util.Collection<View> views, UnfilteredRowIterator updates, UnfilteredRowIterator existings, int nowInSec, boolean separateUpdates)` Given some updates on the base table of this object and the existing values for the rows affected by that update, generates the mutation to be applied to the provided views.

### Uses of Mutation in org.apache.cassandra.hints

Methods in org.apache.cassandra.hints with parameters of type Mutation
`static Hint` Hint.`create(Mutation mutation, long creationTime)`
`static Hint` Hint.`create(Mutation mutation, long creationTime, int gcgs)`

### Uses of Mutation in org.apache.cassandra.net

Methods in org.apache.cassandra.net that return Mutation
`Mutation` WriteCallbackInfo.`mutation()`

### Uses of Mutation in org.apache.cassandra.schema

Methods in org.apache.cassandra.schema that return types with arguments of type Mutation
`static java.util.Collection<Mutation>` SchemaKeyspace.`convertSchemaToMutations()`

Method parameters in org.apache.cassandra.schema with type arguments of type Mutation
`static void` SchemaKeyspace.`mergeSchema(java.util.Collection<Mutation> mutations)`
`static void` SchemaKeyspace.`mergeSchemaAndAnnounceVersion(java.util.Collection<Mutation> mutations)` Merge remote schema in form of mutations with local and mutate ks/cf metadata objects (which also involves fs operations on add/drop ks/cf)

### Uses of Mutation in org.apache.cassandra.service

Methods in org.apache.cassandra.service that return types with arguments of type Mutation
`java.util.Collection<Mutation>` MigrationManager.MigrationsSerializer.`deserialize(DataInputPlus in, int version)`

Methods in org.apache.cassandra.service with parameters of type Mutation
`boolean` StorageProxy.`appliesLocally(Mutation mutation)`
`static void` StorageProxy.`sendToHintedEndpoints(Mutation mutation, java.lang.Iterable<java.net.InetAddress> targets, AbstractWriteResponseHandler<IMutation> responseHandler, java.lang.String localDataCenter, Stage stage)` Send the mutations to the right targets, write it locally if it corresponds or writes a hint when the node is not available.
`static java.util.concurrent.Future<java.lang.Void>` StorageProxy.`submitHint(Mutation mutation, java.util.Collection<java.net.InetAddress> targets, AbstractWriteResponseHandler<IMutation> responseHandler)`
`static java.util.concurrent.Future<java.lang.Void>` StorageProxy.`submitHint(Mutation mutation, java.net.InetAddress target, AbstractWriteResponseHandler<IMutation> responseHandler)`

Method parameters in org.apache.cassandra.service with type arguments of type Mutation
`static void` StorageProxy.`mutateAtomically(java.util.Collection<Mutation> mutations, ConsistencyLevel consistency_level, boolean requireQuorumForRemove, long queryStartNanoTime)` See mutate.
`static void` StorageProxy.`mutateMV(java.nio.ByteBuffer dataKey, java.util.Collection<Mutation> mutations, boolean writeCommitLog, java.util.concurrent.atomic.AtomicLong baseComplete, long queryStartNanoTime)` Use this method to have these Mutations applied across all replicas.
`void` MigrationManager.MigrationsSerializer.`serialize(java.util.Collection<Mutation> schema, DataOutputPlus out, int version)`
`long` MigrationManager.MigrationsSerializer.`serializedSize(java.util.Collection<Mutation> schema, int version)`

### Uses of Mutation in org.apache.cassandra.service.paxos

Methods in org.apache.cassandra.service.paxos that return Mutation
`Mutation` Commit.`makeMutation()`

### Uses of Mutation in org.apache.cassandra.triggers

Methods in org.apache.cassandra.triggers that return types with arguments of type Mutation
`java.util.Collection<Mutation>` ITrigger.`augment(Partition update)` Called exactly once per CF update, returned mutations are atomically updated.
`java.util.Collection<Mutation>` TriggerExecutor.`execute(java.util.Collection<? extends IMutation> mutations)` Takes a collection of mutations and possibly augments it by adding extra mutations generated by configured triggers.