[
https://issues.apache.org/jira/browse/TEPHRA-228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16020113#comment-16020113
]
ASF GitHub Bot commented on TEPHRA-228:
---------------------------------------
Github user poornachandra commented on a diff in the pull request:
https://github.com/apache/incubator-tephra/pull/42#discussion_r117834066
--- Diff:
tephra-core/src/main/java/org/apache/tephra/runtime/ClientIdAwareTransactionModule.java
---
@@ -0,0 +1,41 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.tephra.runtime;
+
+import com.google.inject.AbstractModule;
+import com.google.inject.name.Names;
+import org.apache.tephra.TransactionSystemClient;
+import org.apache.tephra.distributed.TransactionServiceClient;
+
+/**
+ * Guice module that binds the clientId to be used in {@link
TransactionSystemClient}.
+ */
+public abstract class ClientIdAwareTransactionModule extends
AbstractModule {
--- End diff --
Having `ClientIdAwareTransactionModule` as the parent class of Transaction
modules does not add much value. Let's move the binding to the child modules.
> Introduce client ID that can be used to track requests per client
> -----------------------------------------------------------------
>
> Key: TEPHRA-228
> URL: https://issues.apache.org/jira/browse/TEPHRA-228
> Project: Tephra
> Issue Type: Improvement
> Components: api, core
> Reporter: Poorna Chandra
> Assignee: Gokul Gunasekaran
> Fix For: 0.12.0-incubating
>
>
> Today transaction manager does not have details of what transaction belongs
> to which client. For instance when a there are a lot of invalid transactions
> generated by a client, it is not easy to say which client generated the
> invalid transactions. Transaction manager just logs a message saying the
> transaction ID was invalidated. This makes debugging very difficult since
> there is no easy way to map the transaction ID to a program.
> Transaction APIs should allow clients to pass in client IDs for every start
> transaction call. Transaction manager can store this client ID as part of the
> transaction metadata. And when transaction manager logs messages with
> transaction ID, it can include the client ID in the message.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)