Indicate that this mutation writer should be rolled back. This will not rollback any changes
that have already been committed if the mutation writer is running in CopyTransactionMode#ImplicitNonAtomic.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Class MutationWriter (0.27.1)\n\nVersion latestkeyboard_arrow_down\n\n- [0.27.1 (latest)](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.27.0](/java/docs/reference/pgadapter/0.27.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.26.0](/java/docs/reference/pgadapter/0.26.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.25.0](/java/docs/reference/pgadapter/0.25.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.24.0](/java/docs/reference/pgadapter/0.24.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.23.1](/java/docs/reference/pgadapter/0.23.1/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.22.1](/java/docs/reference/pgadapter/0.22.1/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.21.0](/java/docs/reference/pgadapter/0.21.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.20.0](/java/docs/reference/pgadapter/0.20.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.19.1](/java/docs/reference/pgadapter/0.19.1/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.18.4](/java/docs/reference/pgadapter/0.18.4/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.17.0](/java/docs/reference/pgadapter/0.17.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.16.0](/java/docs/reference/pgadapter/0.16.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.15.0](/java/docs/reference/pgadapter/0.15.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.14.1](/java/docs/reference/pgadapter/0.14.1/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.9.0](/java/docs/reference/pgadapter/0.9.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.8.0](/java/docs/reference/pgadapter/0.8.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.7.0](/java/docs/reference/pgadapter/0.7.0/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.6.1](/java/docs/reference/pgadapter/0.6.1/com.google.cloud.spanner.pgadapter.utils.MutationWriter)\n- [0.5.1](/java/docs/reference/pgadapter/0.5.1/com.google.cloud.spanner.pgadapter.utils.MutationWriter) \n\n public class MutationWriter implements Callable\u003cStatementResult\u003e, Closeable\n\nInheritance\n-----------\n\n[java.lang.Object](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html) \\\u003e MutationWriter \n\nImplements\n----------\n\n[Callable\\\u003cStatementResult\\\u003e](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Callable\u003ccom/google/cloud/spanner/connection/StatementResult\u003e.html), [Closeable](https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html) \n\nInherited Members\n-----------------\n\n[Object.clone()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#clone--) \n[Object.equals(Object)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-) \n[Object.finalize()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#finalize--) \n[Object.getClass()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#getClass--) \n[Object.hashCode()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--) \n[Object.notify()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notify--) \n[Object.notifyAll()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notifyAll--) \n[Object.toString()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--) \n[Object.wait()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait--) \n[Object.wait(long)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-) \n[Object.wait(long,int)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-int-)\n\nConstructors\n------------\n\n### MutationWriter(SessionState sessionState, MutationWriter.CopyTransactionMode transactionMode, Connection connection, String qualifiedTableName, Map\\\u003cString,Type\\\u003e tableColumns, int indexedColumnsCount, CopyStatement.Format copyFormat, CSVFormat format, boolean hasHeader)\n\n public MutationWriter(SessionState sessionState, MutationWriter.CopyTransactionMode transactionMode, Connection connection, String qualifiedTableName, Map\u003cString,Type\u003e tableColumns, int indexedColumnsCount, CopyStatement.Format copyFormat, CSVFormat format, boolean hasHeader)\n\nMethods\n-------\n\n### addCopyData(byte\\[\\] payload)\n\n public void addCopyData(byte[] payload)\n\n### call()\n\n public StatementResult call()\n\n### close()\n\n public void close()\n\n### commit()\n\n public void commit()\n\nIndicate that this mutation writer should commit.\n\n### getRowCount()\n\n public long getRowCount()\n\n### rollback()\n\n public void rollback()\n\nIndicate that this mutation writer should be rolled back. This will not rollback any changes\nthat have already been committed if the mutation writer is running in CopyTransactionMode#ImplicitNonAtomic."]]