Github user anew commented on a diff in the pull request:
https://github.com/apache/incubator-tephra/pull/47#discussion_r138435693
--- Diff: tephra-api/src/main/java/org/apache/tephra/TransactionConflictException.java
---
@@ -22,11 +22,50 @@
* Thrown to indicate transaction conflict occurred when trying to commit a transaction.
*/
public class TransactionConflictException extends TransactionFailureException {
+
+ /**
+ * @deprecated since 0.13-incubating. Use {@link #TransactionConflictException(long,
String, String)} instead.
+ */
+ @Deprecated
public TransactionConflictException(String message) {
super(message);
+ transactionId = null;
+ conflictingChange = null;
+ conflictingClient = null;
}
+ /**
+ * @deprecated since 0.13-incubating. Use {@link #TransactionConflictException(long,
String, String)} instead.
+ */
+ @Deprecated
public TransactionConflictException(String message, Throwable cause) {
super(message, cause);
+ transactionId = null;
+ conflictingChange = null;
+ conflictingClient = null;
+ }
+
+ public TransactionConflictException(long transactionId, String conflictingChange, String
conflictingClient) {
+ super(String.format("Transaction %d conflicts with %s on change key '%s'", transactionId,
+ conflictingClient == null ? "unknown client" : conflictingClient,
conflictingChange));
+ this.transactionId = transactionId;
+ this.conflictingChange = conflictingChange;
+ this.conflictingClient = conflictingClient;
+ }
+
+ private final Long transactionId;
--- End diff --
ehm, yes, must be by accident
---
|