logging-log4j2 git commit: [LOG4J2-2313] Update LMAX Disruptor from 3.3.7 to 3.4.1. I was getting some odd 'JVM has quit' error messages so I updated the Surefire/Failsafe Maven plugins from 2.20.1 to
Repository: logging-log4j2 Updated Branches: refs/heads/master 1ee85dcb6 -> 45517769e [LOG4J2-2313] Update LMAX Disruptor from 3.3.7 to 3.4.1. I was getting some odd 'JVM has quit' error messages so I updated the Surefire/Failsafe Maven plugins from 2.20.1 to 2.21.0 and that seems to fix it. The Histogram class from LMAX has been removed so I copied it into our test code base, it is licensed under the Apache 2.0 license. Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/45517769 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/45517769 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/45517769 Branch: refs/heads/master Commit: 45517769e19e57e1cf2c399e7884a59ff335e60c Parents: 1ee85dc Author: Gary GregoryAuthored: Mon Apr 9 18:00:00 2018 -0600 Committer: Gary Gregory Committed: Mon Apr 9 18:00:00 2018 -0600 -- .../core/async/perftest/AbstractRunQueue.java | 2 - .../log4j/core/async/perftest/Histogram.java| 390 +++ .../core/async/perftest/IPerfTestRunner.java| 2 - .../async/perftest/MultiThreadPerfTest.java | 2 - .../log4j/core/async/perftest/PerfTest.java | 2 - .../log4j/core/async/perftest/RunLog4j1.java| 2 - .../log4j/core/async/perftest/RunLog4j2.java| 1 - .../log4j/core/async/perftest/RunLogback.java | 2 - pom.xml | 6 +- src/changes/changes.xml | 6 + 10 files changed, 399 insertions(+), 16 deletions(-) -- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/45517769/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java -- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java index 82d6065..7ba9412 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java @@ -21,8 +21,6 @@ import java.util.concurrent.BlockingQueue; import org.apache.logging.log4j.core.async.perftest.ResponseTimeTest.PrintingAsyncQueueFullPolicy; -import com.lmax.disruptor.collections.Histogram; - public abstract class AbstractRunQueue implements IPerfTestRunner { abstract BlockingQueue createQueue(int capacity); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/45517769/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/Histogram.java -- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/Histogram.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/Histogram.java new file mode 100644 index 000..bf0823b --- /dev/null +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/Histogram.java @@ -0,0 +1,390 @@ +/* + * Copyright 2011 LMAX Ltd. + * + * Licensed 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.logging.log4j.core.async.perftest; + +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.Arrays; + +/** + * Histogram for tracking the frequency of observations of values below interval upper bounds. + * + * This class is useful for recording timings across a large number of observations + * when high performance is required. + * + * The interval bounds are used to define the ranges of the histogram buckets. If provided bounds + * are [10,20,30,40,50] then there will be five buckets, accessible by index 0-4. Any value + * 0-10 will fall into the first interval bar, values 11-20 will fall into the + * second bar, and so on. + */ +@Deprecated +public final class Histogram +{ +// tracks the upper intervals of each of the buckets/bars +private final long[] upperBounds; +// tracks the count of the corresponding bucket +private final long[] counts; +// minimum value so far observed +private long minValue = Long.MAX_VALUE; +// maximum value
logging-log4j2 git commit: [LOG4J2-2313] Update LMAX Disruptor from 3.3.7 to 3.4.1. I was getting some odd 'JVM has quit' error messages so I updated the Surefire/Failsafe Maven plugins from 2.20.1 to
Repository: logging-log4j2 Updated Branches: refs/heads/release-2.x 4b784946c -> 463041147 [LOG4J2-2313] Update LMAX Disruptor from 3.3.7 to 3.4.1. I was getting some odd 'JVM has quit' error messages so I updated the Surefire/Failsafe Maven plugins from 2.20.1 to 2.21.0 and that seems to fix it. The Histogram class from LMAX has been removed so I copied it into our test code base, it is licensed under the Apache 2.0 license. Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/46304114 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/46304114 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/46304114 Branch: refs/heads/release-2.x Commit: 4630411471e35a4f2f87087bd1c78a5809cbd792 Parents: 4b78494 Author: Gary GregoryAuthored: Mon Apr 9 17:06:28 2018 -0600 Committer: Gary Gregory Committed: Mon Apr 9 17:06:28 2018 -0600 -- .../core/async/perftest/AbstractRunQueue.java | 2 - .../log4j/core/async/perftest/Histogram.java| 390 +++ .../core/async/perftest/IPerfTestRunner.java| 2 - .../async/perftest/MultiThreadPerfTest.java | 2 - .../log4j/core/async/perftest/PerfTest.java | 2 - .../log4j/core/async/perftest/RunLog4j1.java| 2 - .../log4j/core/async/perftest/RunLog4j2.java| 1 - .../log4j/core/async/perftest/RunLogback.java | 2 - pom.xml | 6 +- src/changes/changes.xml | 3 + 10 files changed, 396 insertions(+), 16 deletions(-) -- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/46304114/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java -- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java index 82d6065..7ba9412 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/AbstractRunQueue.java @@ -21,8 +21,6 @@ import java.util.concurrent.BlockingQueue; import org.apache.logging.log4j.core.async.perftest.ResponseTimeTest.PrintingAsyncQueueFullPolicy; -import com.lmax.disruptor.collections.Histogram; - public abstract class AbstractRunQueue implements IPerfTestRunner { abstract BlockingQueue createQueue(int capacity); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/46304114/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/Histogram.java -- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/Histogram.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/Histogram.java new file mode 100644 index 000..bf0823b --- /dev/null +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/Histogram.java @@ -0,0 +1,390 @@ +/* + * Copyright 2011 LMAX Ltd. + * + * Licensed 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.logging.log4j.core.async.perftest; + +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.Arrays; + +/** + * Histogram for tracking the frequency of observations of values below interval upper bounds. + * + * This class is useful for recording timings across a large number of observations + * when high performance is required. + * + * The interval bounds are used to define the ranges of the histogram buckets. If provided bounds + * are [10,20,30,40,50] then there will be five buckets, accessible by index 0-4. Any value + * 0-10 will fall into the first interval bar, values 11-20 will fall into the + * second bar, and so on. + */ +@Deprecated +public final class Histogram +{ +// tracks the upper intervals of each of the buckets/bars +private final long[] upperBounds; +// tracks the count of the corresponding bucket +private final long[] counts; +// minimum value so far observed +private long minValue = Long.MAX_VALUE; +//