You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2022/04/13 09:11:39 UTC
[GitHub] [pulsar] congbobo184 opened a new pull request, #15157: Congbobo184 add max active transaction limitation
congbobo184 opened a new pull request, #15157:
URL: https://github.com/apache/pulsar/pull/15157
detail in https://github.com/apache/pulsar/issues/15133
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [pulsar] congbobo184 commented on a diff in pull request #15157: [feature][transaction] Add a configuration to control max active transaction of coordinator
Posted by GitBox <gi...@apache.org>.
congbobo184 commented on code in PR #15157:
URL: https://github.com/apache/pulsar/pull/15157#discussion_r905718699
##########
pulsar-transaction/coordinator/src/main/java/org/apache/pulsar/transaction/coordinator/impl/MLTransactionMetadataStore.java:
##########
@@ -219,44 +222,50 @@ public CompletableFuture<TxnMeta> getTxnMeta(TxnID txnID) {
@Override
public CompletableFuture<TxnID> newTransaction(long timeOut) {
- CompletableFuture<TxnID> completableFuture = new CompletableFuture<>();
- internalPinnedExecutor.execute(() -> {
- if (!checkIfReady()) {
- completableFuture.completeExceptionally(new CoordinatorException
- .TransactionMetadataStoreStateException(tcID, State.Ready, getState(), "new Transaction"));
- return;
- }
+ if (this.maxActiveTransactionsPerCoordinator == 0
+ || this.maxActiveTransactionsPerCoordinator > txnMetaMap.size()) {
Review Comment:
Not an exact number, so no need to consider the race condition
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [pulsar] HQebupt commented on pull request #15157: [feature][transaction] Add a configuration to control max active transaction of coordinator
Posted by GitBox <gi...@apache.org>.
HQebupt commented on PR #15157:
URL: https://github.com/apache/pulsar/pull/15157#issuecomment-1098843300
LGTM :)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [pulsar] congbobo184 merged pull request #15157: [feature][transaction] Add a configuration to control max active transaction of coordinator
Posted by GitBox <gi...@apache.org>.
congbobo184 merged PR #15157:
URL: https://github.com/apache/pulsar/pull/15157
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [pulsar] github-actions[bot] commented on pull request #15157: [feature][transaction] Add a configuration to control max active transaction of coordinator
Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #15157:
URL: https://github.com/apache/pulsar/pull/15157#issuecomment-1131011758
The pr had no activity for 30 days, mark with Stale label.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [pulsar] gaoran10 commented on a diff in pull request #15157: [feature][transaction] Add a configuration to control max active transaction of coordinator
Posted by GitBox <gi...@apache.org>.
gaoran10 commented on code in PR #15157:
URL: https://github.com/apache/pulsar/pull/15157#discussion_r905703159
##########
conf/broker.conf:
##########
@@ -1432,6 +1432,9 @@ transactionBufferSnapshotMinTimeInMillis=5000
# The max concurrent requests for transaction buffer client, default is 1000
transactionBufferClientMaxConcurrentRequests=1000
+# The max active transactions per transaction coordinator
Review Comment:
```suggestion
# The max active transactions per transaction coordinator, default value 0 indicates no limit.
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [pulsar] gaoran10 commented on a diff in pull request #15157: [feature][transaction] Add a configuration to control max active transaction of coordinator
Posted by GitBox <gi...@apache.org>.
gaoran10 commented on code in PR #15157:
URL: https://github.com/apache/pulsar/pull/15157#discussion_r905872041
##########
pulsar-transaction/coordinator/src/main/java/org/apache/pulsar/transaction/coordinator/impl/MLTransactionMetadataStore.java:
##########
@@ -219,44 +222,50 @@ public CompletableFuture<TxnMeta> getTxnMeta(TxnID txnID) {
@Override
public CompletableFuture<TxnID> newTransaction(long timeOut) {
- CompletableFuture<TxnID> completableFuture = new CompletableFuture<>();
- internalPinnedExecutor.execute(() -> {
- if (!checkIfReady()) {
- completableFuture.completeExceptionally(new CoordinatorException
- .TransactionMetadataStoreStateException(tcID, State.Ready, getState(), "new Transaction"));
- return;
- }
+ if (this.maxActiveTransactionsPerCoordinator == 0
+ || this.maxActiveTransactionsPerCoordinator > txnMetaMap.size()) {
Review Comment:
Ok, got it.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [pulsar] gaoran10 commented on a diff in pull request #15157: [feature][transaction] Add a configuration to control max active transaction of coordinator
Posted by GitBox <gi...@apache.org>.
gaoran10 commented on code in PR #15157:
URL: https://github.com/apache/pulsar/pull/15157#discussion_r905702464
##########
pulsar-transaction/coordinator/src/main/java/org/apache/pulsar/transaction/coordinator/impl/MLTransactionMetadataStore.java:
##########
@@ -219,44 +222,50 @@ public CompletableFuture<TxnMeta> getTxnMeta(TxnID txnID) {
@Override
public CompletableFuture<TxnID> newTransaction(long timeOut) {
- CompletableFuture<TxnID> completableFuture = new CompletableFuture<>();
- internalPinnedExecutor.execute(() -> {
- if (!checkIfReady()) {
- completableFuture.completeExceptionally(new CoordinatorException
- .TransactionMetadataStoreStateException(tcID, State.Ready, getState(), "new Transaction"));
- return;
- }
+ if (this.maxActiveTransactionsPerCoordinator == 0
+ || this.maxActiveTransactionsPerCoordinator > txnMetaMap.size()) {
Review Comment:
Does this check `this.maxActiveTransactionsPerCoordinator > txnMetaMap.size()` has race condition problem?
##########
pulsar-broker-common/src/main/java/org/apache/pulsar/broker/ServiceConfiguration.java:
##########
@@ -2592,6 +2592,12 @@ public class ServiceConfiguration implements PulsarConfiguration {
)
private long transactionBufferClientOperationTimeoutInMills = 3000L;
+ @FieldContext(
+ category = CATEGORY_TRANSACTION,
+ doc = "The max active transactions per transaction coordinator."
Review Comment:
```suggestion
doc = "The max active transactions per transaction coordinator, default value 0 indicate no limit."
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [pulsar] gaoran10 commented on a diff in pull request #15157: [feature][transaction] Add a configuration to control max active transaction of coordinator
Posted by GitBox <gi...@apache.org>.
gaoran10 commented on code in PR #15157:
URL: https://github.com/apache/pulsar/pull/15157#discussion_r905702869
##########
pulsar-broker-common/src/main/java/org/apache/pulsar/broker/ServiceConfiguration.java:
##########
@@ -2592,6 +2592,12 @@ public class ServiceConfiguration implements PulsarConfiguration {
)
private long transactionBufferClientOperationTimeoutInMills = 3000L;
+ @FieldContext(
+ category = CATEGORY_TRANSACTION,
+ doc = "The max active transactions per transaction coordinator."
Review Comment:
```suggestion
doc = "The max active transactions per transaction coordinator, default value 0 indicates no limit."
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org