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 2021/11/11 11:54:12 UTC

[GitHub] [pulsar] Jason918 opened a new pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Jason918 opened a new pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753


   
   <!--
   ### Contribution Checklist
     
     - Name the pull request in the form "[Issue XYZ][component] Title of the pull request", where *XYZ* should be replaced by the actual issue number.
       Skip *Issue XYZ* if there is no associated github issue for this pull request.
       Skip *component* if you are unsure about which is the best component. E.g. `[docs] Fix typo in produce method`.
   
     - Fill out the template below to describe the changes contributed by the pull request. That will give reviewers the context they need to do the review.
     
     - Each pull request should address only one issue, not mix up code from multiple issues.
     
     - Each commit in the pull request has a meaningful commit message
   
     - Once all items of the checklist are addressed, remove the above text and this checklist, leaving only the filled out template below.
   
   **(The sections below can be removed for hotfixes of typos)**
   -->
   
   
   Fixes #12726
   
   ### Motivation
   
   See #12726 
   
   
   ### Modifications
   
   Use PolicyHierarchyValue to cache backlogQuota policies to avoid calling blocking metadata query in metadata-callback thread.
   
   ### Verifying this change
   
   - [ ] Make sure that the change passes the CI checks.
   
   
   This change is already covered by existing tests, such as pulsar-broker/src/test/java/org/apache/pulsar/broker/admin/TopicPoliciesTest.java
   
   ### Does this pull request potentially affect one of the following parts:
   
   *If `yes` was chosen, please highlight the changes*
   
     - Dependencies (does it add or upgrade a dependency): (no)
     - The public API: (no)
     - The schema: (no)
     - The default values of configurations: (no)
     - The wire protocol: (no)
     - The rest endpoints: (no)
     - The admin cli options: (no)
     - Anything that affects deployment: (no)
   
   ### Documentation
   
   Check the box below and label this PR (if you have committer privilege).
   
   Need to update docs? 
     
   - [x] `no-need-doc` 
   Bug fix.
   


-- 
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] 315157973 commented on a change in pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
315157973 commented on a change in pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#discussion_r750384895



##########
File path: pulsar-broker/src/main/java/org/apache/pulsar/broker/service/nonpersistent/NonPersistentTopic.java
##########
@@ -149,9 +149,9 @@ public NonPersistentTopic(String topic, BrokerService brokerService) {
                         isEncryptionRequired = false;
                     } else {
                         Policies policies = optPolicies.get();
+                        updateTopicPolicyByNamespacePolicy(policies);
                         isEncryptionRequired = policies.encryption_required;
                         isAllowAutoUpdateSchema = policies.is_allow_auto_update_schema;
-                        topicPolicies.getInactiveTopicPolicies().updateNamespaceValue(policies.inactive_topic_policies);
                         setSchemaCompatibilityStrategy(policies);
                         schemaValidationEnforced = policies.schema_validation_enforced;

Review comment:
       In the past, only InactiveTopicPolicies was updated, but now 3 types of Policies will be updated. Is it necessary? Is this modification related to this PR?




-- 
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] Jason918 commented on a change in pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on a change in pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#discussion_r750837299



##########
File path: pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentTopic.java
##########
@@ -3088,8 +3088,13 @@ public void onUpdate(TopicPolicies policies) {
         }
 
         topicPolicies.getMaxSubscriptionsPerTopic().updateTopicValue(policies.getMaxSubscriptionsPerTopic());
-
         topicPolicies.getInactiveTopicPolicies().updateTopicValue(policies.getInactiveTopicPolicies());
+        Arrays.stream(BacklogQuotaType.values()).forEach(type ->
+                this.topicPolicies.getBackLogQuotaMap().get(type).updateNamespaceValue(

Review comment:
       Set to null means user have deleted the namespace level setting.




-- 
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] codelipenghui merged pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
codelipenghui merged pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753


   


-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-967014502


   /pulsarbot run-failure-checks


-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-972901742


   @315157973 Fixed the previous bug. PTAL.


-- 
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] Jason918 edited a comment on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 edited a comment on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968939908


   @315157973 Would you please help review this? 


-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968296524


   @codelipenghui Updated, please help review again.
   1. Update backLogQuotaMap to ImuutableMap, should be thread safe.
   2. Update a test that show `PolicyHierarchyValue<Map<BacklogQuota.BacklogQuotaType, BacklogQuota>>` will not work in pulsar-broker/src/test/java/org/apache/pulsar/broker/admin/TopicPoliciesTest.java, line 250


-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-974663923


   @codelipenghui Can you help merge this please?


-- 
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] 315157973 commented on a change in pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
315157973 commented on a change in pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#discussion_r750376584



##########
File path: pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentTopic.java
##########
@@ -3088,8 +3088,13 @@ public void onUpdate(TopicPolicies policies) {
         }
 
         topicPolicies.getMaxSubscriptionsPerTopic().updateTopicValue(policies.getMaxSubscriptionsPerTopic());
-
         topicPolicies.getInactiveTopicPolicies().updateTopicValue(policies.getInactiveTopicPolicies());
+        Arrays.stream(BacklogQuotaType.values()).forEach(type ->
+                this.topicPolicies.getBackLogQuotaMap().get(type).updateNamespaceValue(

Review comment:
       Why do we update the value of Namespace to null in TopicPolicies update?
   




-- 
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] codelipenghui commented on a change in pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
codelipenghui commented on a change in pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#discussion_r747598736



##########
File path: pulsar-common/src/main/java/org/apache/pulsar/common/policies/data/HierarchyTopicPolicies.java
##########
@@ -28,9 +30,11 @@
 public class HierarchyTopicPolicies {
     final PolicyHierarchyValue<InactiveTopicPolicies> inactiveTopicPolicies;
     final PolicyHierarchyValue<Integer> maxSubscriptionsPerTopic;
+    final Map<BacklogQuota.BacklogQuotaType, PolicyHierarchyValue<BacklogQuota>> backLogQuotaMap;
 
     public HierarchyTopicPolicies() {
         inactiveTopicPolicies = new PolicyHierarchyValue<>();
         maxSubscriptionsPerTopic = new PolicyHierarchyValue<>();
+        backLogQuotaMap = new HashMap<>();

Review comment:
       Can the map be accessed by multiple threads?
   
   And I think it should be PolicyHierarchyValue<Map<BacklogQuota.BacklogQuotaType, BacklogQuota>>?




-- 
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] Jason918 commented on a change in pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on a change in pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#discussion_r747933348



##########
File path: pulsar-common/src/main/java/org/apache/pulsar/common/policies/data/HierarchyTopicPolicies.java
##########
@@ -28,9 +30,11 @@
 public class HierarchyTopicPolicies {
     final PolicyHierarchyValue<InactiveTopicPolicies> inactiveTopicPolicies;
     final PolicyHierarchyValue<Integer> maxSubscriptionsPerTopic;
+    final Map<BacklogQuota.BacklogQuotaType, PolicyHierarchyValue<BacklogQuota>> backLogQuotaMap;
 
     public HierarchyTopicPolicies() {
         inactiveTopicPolicies = new PolicyHierarchyValue<>();
         maxSubscriptionsPerTopic = new PolicyHierarchyValue<>();
+        backLogQuotaMap = new HashMap<>();

Review comment:
       > Can the map be accessed by multiple threads?
   
   Yes, thanks for the reminding. ImmutableMap is a better choice here.
   
   > And I think it should be PolicyHierarchyValue<Map<BacklogQuota.BacklogQuotaType, BacklogQuota>>?
   
   With this, there will be a problem under this case:
   ```
   TopicLevelSettings : destination_storage --> BacklogQuota1, message_age --> null
   BrokerSettings : destination_storage --> null, message_age --> BacklogQuota2
   ```
   
   With PolicyHierarchyValue<Map<...>>,  the value of type `message_age` would be null.
   With Map<PolicyHierarchyValue>, the value will be "BacklogQuota2".
   
   With previous logic, the result seems to be "BacklogQuota2". 
   




-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-974663923


   @codelipenghui Can you help merge this please?


-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-972844759


   /pulsarbot run-failure-checks


-- 
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] Jason918 commented on a change in pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on a change in pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#discussion_r747933348



##########
File path: pulsar-common/src/main/java/org/apache/pulsar/common/policies/data/HierarchyTopicPolicies.java
##########
@@ -28,9 +30,11 @@
 public class HierarchyTopicPolicies {
     final PolicyHierarchyValue<InactiveTopicPolicies> inactiveTopicPolicies;
     final PolicyHierarchyValue<Integer> maxSubscriptionsPerTopic;
+    final Map<BacklogQuota.BacklogQuotaType, PolicyHierarchyValue<BacklogQuota>> backLogQuotaMap;
 
     public HierarchyTopicPolicies() {
         inactiveTopicPolicies = new PolicyHierarchyValue<>();
         maxSubscriptionsPerTopic = new PolicyHierarchyValue<>();
+        backLogQuotaMap = new HashMap<>();

Review comment:
       > Can the map be accessed by multiple threads?
   
   Yes, thanks for the reminding. ImmutableMap is a better choice here.
   
   > And I think it should be PolicyHierarchyValue<Map<BacklogQuota.BacklogQuotaType, BacklogQuota>>?
   
   With this, there will be a problem under this case:
   ```
   TopicLevelSettings : destination_storage --> BacklogQuota1, message_age --> null
   BrokerSettings : destination_storage --> null, message_age --> BacklogQuota2
   ```
   
   With PolicyHierarchyValue<Map<...>>,  the value of type `message_age` would be null.
   With Map<PolicyHierarchyValue>, the value will be "BacklogQuota2".
   In previous logic, the result seems to be "BacklogQuota2". 
   I will add a test case to verify this.




-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968243094


   /pulsarbot run-failure-checks


-- 
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] Jason918 commented on a change in pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on a change in pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#discussion_r750836278



##########
File path: pulsar-broker/src/main/java/org/apache/pulsar/broker/service/nonpersistent/NonPersistentTopic.java
##########
@@ -149,9 +149,9 @@ public NonPersistentTopic(String topic, BrokerService brokerService) {
                         isEncryptionRequired = false;
                     } else {
                         Policies policies = optPolicies.get();
+                        updateTopicPolicyByNamespacePolicy(policies);
                         isEncryptionRequired = policies.encryption_required;
                         isAllowAutoUpdateSchema = policies.is_allow_auto_update_schema;
-                        topicPolicies.getInactiveTopicPolicies().updateNamespaceValue(policies.inactive_topic_policies);
                         setSchemaCompatibilityStrategy(policies);
                         schemaValidationEnforced = policies.schema_validation_enforced;

Review comment:
       > Is it necessary? Is this modification related to this PR?
   
   Not necessary actually. The other two topic policies are not used in non-persistent topic, yet.
   Doing this just want to make the topic policy update procedure consistent, as we are not distinguishing PersistentTopicPolicy and NonPersistentTopicPolicy. Some policy maybe just not implemented in NonPersistentTopic yet.




-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968196288


   /pulsarbot run-failure-checks


-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968188969


   /pulsarbot run-failure-checks


-- 
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] 315157973 commented on a change in pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
315157973 commented on a change in pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#discussion_r750848039



##########
File path: pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentTopic.java
##########
@@ -3088,8 +3088,13 @@ public void onUpdate(TopicPolicies policies) {
         }
 
         topicPolicies.getMaxSubscriptionsPerTopic().updateTopicValue(policies.getMaxSubscriptionsPerTopic());
-
         topicPolicies.getInactiveTopicPolicies().updateTopicValue(policies.getInactiveTopicPolicies());
+        Arrays.stream(BacklogQuotaType.values()).forEach(type ->
+                this.topicPolicies.getBackLogQuotaMap().get(type).updateNamespaceValue(

Review comment:
       However, this method is only triggered when the Topic-level Policies are updated. Why do we update the Namespace-level Policies in this method?




-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968210469


   /pulsarbot run-failure-checks


-- 
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] Jason918 commented on a change in pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on a change in pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#discussion_r752174496



##########
File path: pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentTopic.java
##########
@@ -3088,8 +3088,13 @@ public void onUpdate(TopicPolicies policies) {
         }
 
         topicPolicies.getMaxSubscriptionsPerTopic().updateTopicValue(policies.getMaxSubscriptionsPerTopic());
-
         topicPolicies.getInactiveTopicPolicies().updateTopicValue(policies.getInactiveTopicPolicies());
+        Arrays.stream(BacklogQuotaType.values()).forEach(type ->
+                this.topicPolicies.getBackLogQuotaMap().get(type).updateNamespaceValue(

Review comment:
       OMG. Nice catch.  Fixed.




-- 
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] Jason918 edited a comment on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 edited a comment on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968296524


   @codelipenghui Updated, please help review again.
   1. Update backLogQuotaMap to ImuutableMap, should be thread safe.
   2. Update a test that show `PolicyHierarchyValue<Map<BacklogQuota.BacklogQuotaType, BacklogQuota>>` will not work in pulsar-broker/src/test/java/org/apache/pulsar/broker/admin/TopicPoliciesTest.java, line 250
   3. Fix some unit test failure


-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968939908


   @linlinnn Would you please help review this? 


-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968054637


   /pulsarbot run-failure-checks


-- 
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] Jason918 commented on pull request #12753: [Issue 12726][broker] Fix deadlock in metadata-store callback thread

Posted by GitBox <gi...@apache.org>.
Jason918 commented on pull request #12753:
URL: https://github.com/apache/pulsar/pull/12753#issuecomment-968070706


   /pulsarbot run-failure-checks


-- 
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