]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.utils/src/org/simantics/utils/Development.java
Help investigation of query caching problems via query histogram data
[simantics/platform.git] / bundles / org.simantics.utils / src / org / simantics / utils / Development.java
index 96c3453c759020f7a8d2d072ace6af721a20b892..26359e799f0b96c460300d16896a96b57d46fc65 100644 (file)
@@ -17,9 +17,11 @@ public class Development {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(Development.class);
        public static TreeMap<String,Integer> histogram = new TreeMap<>();
+       public static Map<String, Exception> histogramExceptions = new HashMap<>();
 
        public static final boolean DEVELOPMENT = false;
-       
+       private static final int histogramExceptionThreshold = 100;
+
        public static final String PRINT = "Development.print";
 
        public interface DevelopmentListener {
@@ -98,6 +100,9 @@ public class Development {
                String key = o.toString();
                Integer i = histogram.get(key);
                histogram.put(key, i == null ? 1 : i+1);
+               if (i != null && i >= histogramExceptionThreshold) {
+                       histogramExceptions.computeIfAbsent(key, k -> new Exception());
+               }
        }
        
 }