This is an automated email from the ASF dual-hosted git repository.

rgodfrey pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/qpid-broker-j.git


The following commit(s) were added to refs/heads/main by this push:
     new 05686f837d QPID-8681 : Reduce lock contention on getting a single 
statistic from a configured object
05686f837d is described below

commit 05686f837d204b0d2b8796ef1c58ab425eb96e13
Author: rgodfrey <rgodf...@apache.org>
AuthorDate: Mon Jan 27 19:48:57 2025 +0100

    QPID-8681 : Reduce lock contention on getting a single statistic from a 
configured object
---
 .../servlet/query/ConfiguredObjectExpressionFactory.java  | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git 
a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/query/ConfiguredObjectExpressionFactory.java
 
b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/query/ConfiguredObjectExpressionFactory.java
index 53e2df2c68..4177522484 100644
--- 
a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/query/ConfiguredObjectExpressionFactory.java
+++ 
b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/query/ConfiguredObjectExpressionFactory.java
@@ -31,16 +31,7 @@ import java.time.format.DateTimeFormatterBuilder;
 import java.time.format.DateTimeParseException;
 import java.time.temporal.ChronoField;
 import java.time.temporal.TemporalAccessor;
-import java.util.Arrays;
-import java.util.Calendar;
-import java.util.Collection;
-import java.util.Date;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TimeZone;
+import java.util.*;
 
 import javax.xml.datatype.DatatypeConfigurationException;
 import javax.xml.datatype.DatatypeFactory;
@@ -293,10 +284,12 @@ public class ConfiguredObjectExpressionFactory
     {
 
         private final String _propertyName;
+        private final List<String> _propertyNameAsList;
 
         public ConfiguredObjectPropertyExpression(final String propertyName)
         {
             _propertyName = propertyName;
+            _propertyNameAsList = Collections.singletonList(propertyName);
         }
 
         @Override
@@ -323,7 +316,7 @@ public class ConfiguredObjectExpressionFactory
             {
                 return object.getAttributeNames().contains(_propertyName)
                         ? object.getAttribute(_propertyName)
-                        : object.getStatistics().get(_propertyName);
+                        : 
object.getStatistics(_propertyNameAsList).get(_propertyName);
             }
         }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to