diff --git a/.github/workflows/ci-it.yaml b/.github/workflows/ci-it.yaml
index 7d11580ff4..bde6ff044d 100644
--- a/.github/workflows/ci-it.yaml
+++ b/.github/workflows/ci-it.yaml
@@ -48,6 +48,19 @@ jobs:
- name: 'Check Dependencies Licenses'
run: tools/dependencies/check-LICENSE.sh
+ CI-on-JDK11:
+ runs-on: ubuntu-18.04
+ timeout-minutes: 90
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - uses: actions/setup-java@v1
+ with:
+ java-version: 11
+ - name: 'Install & Test'
+ run: ./mvnw --batch-mode -P"agent,backend,ui,dist" clean verify install
+
CI-on-Windows:
runs-on: windows-latest
timeout-minutes: 90
diff --git a/apm-application-toolkit/pom.xml b/apm-application-toolkit/pom.xml
index b6fc9889d3..ec762d4c0b 100644
--- a/apm-application-toolkit/pom.xml
+++ b/apm-application-toolkit/pom.xml
@@ -26,10 +26,6 @@
apm-application-toolkit
pom
-
- 1.8
-
-
apm-toolkit-log4j-1.x
apm-toolkit-log4j-2.x
diff --git a/apm-commons/pom.xml b/apm-commons/pom.xml
index d8a3c7c569..5d772bede6 100644
--- a/apm-commons/pom.xml
+++ b/apm-commons/pom.xml
@@ -37,6 +37,5 @@
UTF-8
- 1.8
diff --git a/apm-protocol/apm-network/pom.xml b/apm-protocol/apm-network/pom.xml
index a5497ec037..a8fc5250b6 100644
--- a/apm-protocol/apm-network/pom.xml
+++ b/apm-protocol/apm-network/pom.xml
@@ -52,6 +52,12 @@
netty-tcnative-boringssl-static
${netty-tcnative-boringssl-static.version}
+
+ org.apache.tomcat
+ annotations-api
+ ${org.apache.tomcat.annotations-api.version}
+ provided
+
diff --git a/apm-sniffer/apm-agent-core/pom.xml b/apm-sniffer/apm-agent-core/pom.xml
index 0d1d27ff46..8056db36b2 100644
--- a/apm-sniffer/apm-agent-core/pom.xml
+++ b/apm-sniffer/apm-agent-core/pom.xml
@@ -34,7 +34,6 @@
UTF-8
20.0
- 1.10.14
2.6.0
2.0.7.Final
1.4.1.Final
@@ -68,6 +67,11 @@
byte-buddy
${bytebuddy.version}
+
+ com.google.code.gson
+ gson
+ ${gson.version}
+
net.bytebuddy
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/logging/core/WriterFactoryTest.java b/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/logging/core/WriterFactoryTest.java
index d866d42e73..0cfd717ad3 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/logging/core/WriterFactoryTest.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/logging/core/WriterFactoryTest.java
@@ -49,7 +49,6 @@ public class WriterFactoryTest {
assertTrue(AgentPackagePath.isPathFound());
IWriter logWriter = WriterFactory.getLogWriter();
- PowerMockito.verifyStatic();
assertTrue(logWriter instanceof SystemOutWriter);
}
@@ -65,7 +64,6 @@ public class WriterFactoryTest {
assertTrue(AgentPackagePath.isPathFound());
IWriter logWriter = WriterFactory.getLogWriter();
- PowerMockito.verifyStatic();
assertTrue(logWriter instanceof FileWriter);
}
}
\ No newline at end of file
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/CounterTest.java b/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/CounterTest.java
index 2df98aa062..117e449243 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/CounterTest.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/CounterTest.java
@@ -28,11 +28,11 @@ import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
-import org.mockito.internal.util.reflection.Whitebox;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;
+import org.powermock.reflect.Whitebox;
public class CounterTest {
@Rule
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/GaugeTest.java b/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/GaugeTest.java
index de0441d71a..e0efaf5b16 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/GaugeTest.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/GaugeTest.java
@@ -18,6 +18,9 @@
package org.apache.skywalking.apm.agent.core.meter;
+import java.util.Arrays;
+import java.util.List;
+import java.util.concurrent.ConcurrentHashMap;
import org.apache.skywalking.apm.agent.core.boot.ServiceManager;
import org.apache.skywalking.apm.agent.core.test.tools.AgentServiceRule;
import org.apache.skywalking.apm.network.language.agent.v3.Label;
@@ -28,11 +31,7 @@ import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
-import org.mockito.internal.util.reflection.Whitebox;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.concurrent.ConcurrentHashMap;
+import org.powermock.reflect.Whitebox;
public class GaugeTest {
@Rule
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/HistogramTest.java b/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/HistogramTest.java
index cab8626b19..bd6b2b8584 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/HistogramTest.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/apache/skywalking/apm/agent/core/meter/HistogramTest.java
@@ -18,6 +18,9 @@
package org.apache.skywalking.apm.agent.core.meter;
+import java.util.Arrays;
+import java.util.List;
+import java.util.concurrent.ConcurrentHashMap;
import org.apache.skywalking.apm.agent.core.boot.ServiceManager;
import org.apache.skywalking.apm.agent.core.test.tools.AgentServiceRule;
import org.apache.skywalking.apm.network.language.agent.v3.Label;
@@ -28,11 +31,7 @@ import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
-import org.mockito.internal.util.reflection.Whitebox;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.concurrent.ConcurrentHashMap;
+import org.powermock.reflect.Whitebox;
public class HistogramTest {
@Rule
@@ -66,7 +65,11 @@ public class HistogramTest {
final List
-
-
- 1.8
-
\ No newline at end of file
diff --git a/apm-sniffer/apm-sdk-plugin/struts2-2.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/struts2-2.x-plugin/pom.xml
index 5c54b93c0c..32fe5cf2bb 100644
--- a/apm-sniffer/apm-sdk-plugin/struts2-2.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/struts2-2.x-plugin/pom.xml
@@ -43,6 +43,14 @@
struts2-core
${struts2-core.version}
provided
+
+
+
+
+ javassist
+ javassist
+
+
javax.servlet
@@ -56,5 +64,11 @@
${jsp-api.version}
test
+
+ org.javassist
+ javassist
+ 3.24.0-GA
+ test
+
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/CounterConstructInterceptorTest.java b/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/CounterConstructInterceptorTest.java
index 38838dbe0c..15c144deb5 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/CounterConstructInterceptorTest.java
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/CounterConstructInterceptorTest.java
@@ -18,6 +18,8 @@
package org.apache.skywalking.apm.toolkit.activation.meter;
+import java.util.Arrays;
+import java.util.Map;
import org.apache.skywalking.apm.agent.core.boot.ServiceManager;
import org.apache.skywalking.apm.agent.core.meter.BaseMeter;
import org.apache.skywalking.apm.agent.core.meter.MeterService;
@@ -30,10 +32,7 @@ import org.apache.skywalking.apm.toolkit.meter.MeterId;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
-import org.mockito.internal.util.reflection.Whitebox;
-
-import java.util.Arrays;
-import java.util.Map;
+import org.powermock.reflect.Whitebox;
public class CounterConstructInterceptorTest {
@@ -47,10 +46,12 @@ public class CounterConstructInterceptorTest {
public void testConstruct() {
counterConstructInterceptor.onConstruct(enhancedInstance, new Object[] {
new MeterId("test", MeterId.MeterType.COUNTER, Arrays.asList(new MeterId.Tag("k1", "v1"))),
- Counter.Mode.RATE});
+ Counter.Mode.RATE
+ });
final MeterService service = ServiceManager.INSTANCE.findService(MeterService.class);
- final Map meterMap = (Map) Whitebox.getInternalState(service, "meterMap");
+ final Map meterMap = (Map) Whitebox.getInternalState(
+ service, "meterMap");
Assert.assertEquals(1, meterMap.size());
final BaseMeter meterData = meterMap.values().iterator().next();
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/GaugeConstructInterceptorTest.java b/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/GaugeConstructInterceptorTest.java
index ff4555fd72..7c7107bac0 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/GaugeConstructInterceptorTest.java
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/GaugeConstructInterceptorTest.java
@@ -18,6 +18,9 @@
package org.apache.skywalking.apm.toolkit.activation.meter;
+import java.util.Arrays;
+import java.util.Map;
+import java.util.function.Supplier;
import org.apache.skywalking.apm.agent.core.boot.ServiceManager;
import org.apache.skywalking.apm.agent.core.meter.BaseMeter;
import org.apache.skywalking.apm.agent.core.meter.Gauge;
@@ -30,11 +33,7 @@ import org.apache.skywalking.apm.toolkit.meter.MeterId;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
-import org.mockito.internal.util.reflection.Whitebox;
-
-import java.util.Arrays;
-import java.util.Map;
-import java.util.function.Supplier;
+import org.powermock.reflect.Whitebox;
public class GaugeConstructInterceptorTest {
@@ -52,7 +51,8 @@ public class GaugeConstructInterceptorTest {
});
final MeterService service = ServiceManager.INSTANCE.findService(MeterService.class);
- final Map meterMap = (Map) Whitebox.getInternalState(service, "meterMap");
+ final Map meterMap = (Map) Whitebox.getInternalState(
+ service, "meterMap");
Assert.assertEquals(1, meterMap.size());
final Object field = meterMap.values().iterator().next();
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/HistogramConstructInterceptorTest.java b/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/HistogramConstructInterceptorTest.java
index fc6546353d..62c43b5626 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/HistogramConstructInterceptorTest.java
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-meter-activation/src/test/java/org/apache/skywalking/apm/toolkit/activation/meter/HistogramConstructInterceptorTest.java
@@ -18,6 +18,8 @@
package org.apache.skywalking.apm.toolkit.activation.meter;
+import java.util.Arrays;
+import java.util.Map;
import org.apache.skywalking.apm.agent.core.boot.ServiceManager;
import org.apache.skywalking.apm.agent.core.meter.BaseMeter;
import org.apache.skywalking.apm.agent.core.meter.Histogram;
@@ -30,10 +32,7 @@ import org.apache.skywalking.apm.toolkit.meter.MeterId;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
-import org.mockito.internal.util.reflection.Whitebox;
-
-import java.util.Arrays;
-import java.util.Map;
+import org.powermock.reflect.Whitebox;
public class HistogramConstructInterceptorTest {
@@ -47,10 +46,12 @@ public class HistogramConstructInterceptorTest {
public void testConstruct() {
histogramConstructInterceptor.onConstruct(enhancedInstance, new Object[] {
new MeterId("test", MeterId.MeterType.HISTOGRAM, Arrays.asList(new MeterId.Tag("k1", "v1"))),
- Arrays.asList(1d, 5d, 10d)});
+ Arrays.asList(1d, 5d, 10d)
+ });
final MeterService service = ServiceManager.INSTANCE.findService(MeterService.class);
- final Map meterMap = (Map) Whitebox.getInternalState(service, "meterMap");
+ final Map meterMap = (Map) Whitebox.getInternalState(
+ service, "meterMap");
Assert.assertEquals(1, meterMap.size());
final Object field = meterMap.values().iterator().next();
diff --git a/apm-sniffer/optional-plugins/optional-spring-plugins/optional-spring-cloud/gateway-2.0.x-plugin/pom.xml b/apm-sniffer/optional-plugins/optional-spring-plugins/optional-spring-cloud/gateway-2.0.x-plugin/pom.xml
index 8301d68f7f..6745114f72 100644
--- a/apm-sniffer/optional-plugins/optional-spring-plugins/optional-spring-cloud/gateway-2.0.x-plugin/pom.xml
+++ b/apm-sniffer/optional-plugins/optional-spring-plugins/optional-spring-cloud/gateway-2.0.x-plugin/pom.xml
@@ -34,7 +34,6 @@
2.1.1.RELEASE
- 1.8
diff --git a/apm-sniffer/optional-plugins/optional-spring-plugins/optional-spring-cloud/gateway-2.1.x-plugin/pom.xml b/apm-sniffer/optional-plugins/optional-spring-plugins/optional-spring-cloud/gateway-2.1.x-plugin/pom.xml
index 643da0a64e..34e9ae236d 100644
--- a/apm-sniffer/optional-plugins/optional-spring-plugins/optional-spring-cloud/gateway-2.1.x-plugin/pom.xml
+++ b/apm-sniffer/optional-plugins/optional-spring-plugins/optional-spring-cloud/gateway-2.1.x-plugin/pom.xml
@@ -35,7 +35,6 @@
2.1.1.RELEASE
- 1.8
diff --git a/apm-sniffer/optional-plugins/optional-spring-plugins/spring-webflux-5.x-plugin/pom.xml b/apm-sniffer/optional-plugins/optional-spring-plugins/spring-webflux-5.x-plugin/pom.xml
index 85672e86d8..81283726a2 100644
--- a/apm-sniffer/optional-plugins/optional-spring-plugins/spring-webflux-5.x-plugin/pom.xml
+++ b/apm-sniffer/optional-plugins/optional-spring-plugins/spring-webflux-5.x-plugin/pom.xml
@@ -37,8 +37,4 @@
provided
-
-
- 1.8
-
diff --git a/apm-webapp/pom.xml b/apm-webapp/pom.xml
index 6571957518..dcc1c3d211 100644
--- a/apm-webapp/pom.xml
+++ b/apm-webapp/pom.xml
@@ -29,7 +29,6 @@
jar
- 1.8
UTF-8
1.5.11.RELEASE
2.6.2
@@ -97,17 +96,23 @@
org.springframework.cloud
spring-cloud-starter-netflix-zuul
+
+ ch.qos.logback
+ logback-classic
+ ${logback-classic.version}
+
org.springframework.boot
spring-boot-starter-test
${spring.boot.version}
test
-
+
- ch.qos.logback
- logback-classic
- ${logback-classic.version}
+ com.sun.activation
+ javax.activation
+ 1.2.0
+ provided
diff --git a/dist-material/release-docs/LICENSE b/dist-material/release-docs/LICENSE
index 4de0ed5520..e3212baad0 100755
--- a/dist-material/release-docs/LICENSE
+++ b/dist-material/release-docs/LICENSE
@@ -226,12 +226,11 @@ The following components are provided under the Apache License. See project link
The text of each license is the standard Apache 2.0 license.
raphw (byte-buddy) 1.10.14: http://bytebuddy.net/ , Apache 2.0
- Google: gprc-java 1.26.0: https://github.com/grpc/grpc-java, Apache 2.0
+ Google: gprc-java 1.32.1: https://github.com/grpc/grpc-java, Apache 2.0
Google: guava 28.1: https://github.com/google/guava , Apache 2.0
Google: guice 4.1.0: https://github.com/google/guice , Apache 2.0
Google: gson 2.8.6: https://github.com/google/gson , Apache 2.0
- Google: opencensus-java 0.24.0: https://github.com/census-instrumentation/opencensus-java , Apache 2.0
- Google: proto-google-common-protos 1.12.0: https://github.com/googleapis/googleapis , Apache 2.0
+ Google: proto-google-common-protos 1.17.0: https://github.com/googleapis/googleapis , Apache 2.0
Google: jsr305 3.0.2: http://central.maven.org/maven2/com/google/code/findbugs/jsr305/3.0.0/jsr305-3.0.0.pom , Apache 2.0
Elasticsearch BV (Elasticsearch) 6.3.2: https://www.elastic.co/products/elasticsearch , Apache 2.0
Elasticsearch BV (Elasticsearch) 7.0.0: https://www.elastic.co/products/elasticsearch , Apache 2.0
@@ -241,8 +240,6 @@ The text of each license is the standard Apache 2.0 license.
percolator-client 5.5.0: https://github.com/elastic/elasticsearch/tree/master/modules/percolator , Apache 2.0
rest 5.5.0: https://github.com/elastic/elasticsearch/tree/master/client/rest , Apache 2.0
transport 5.5.0: https://github.com/elastic/elasticsearch/tree/master/client/transport , Apache 2.0
- transport-netty3-client 5.5.0: http://central.maven.org/maven2/org/elasticsearch/plugin/transport-netty3-client/5.5.0/transport-netty3-client-5.5.0.pom , Apache 2.0
- transport-netty4-client 5.5.0: http://central.maven.org/maven2/org/elasticsearch/plugin/transport-netty4-client/5.5.0/transport-netty4-client-5.5.0.pom , Apache 2.0
securesm 1.1: https://github.com/elastic/securesm/blob/master/pom.xml , Apache 2.0
LMAX Ltd.(disruptor) 3.3.6: https://github.com/LMAX-Exchange/disruptor , Apache 2.0
Eclipse (Jetty) 9.4.28.v20200408: https://www.eclipse.org/jetty/ , Apache 2.0 and Eclipse Public License 1.0
@@ -271,7 +268,7 @@ The text of each license is the standard Apache 2.0 license.
Apache: commons-collections4 4.1: https://mvnrepository.com/artifact/org.apache.commons/commons-collections4, Apache 2.0
Apache: tomcat 8.5.27: https://github.com/apache/tomcat/tree/trunk, Apache 2.0
Apache: freemarker 2.3.28: https://github.com/apache/freemarker, Apache 2.0
- netty 5.5.0: https://github.com/netty/netty/blob/4.1/LICENSE.txt, Apache 2.0
+ netty 4.1.12: https://github.com/netty/netty/blob/4.1/LICENSE.txt, Apache 2.0
annotations 13.0: http://www.jetbrains.org, Apache 2.0
compiler 0.9.3: https://github.com/spullara/mustache.java, Apache 2.0
error_prone_annotations 2.3.2: https://github.com/google/error-prone, Apache 2.0
@@ -378,8 +375,8 @@ The text of each license is also included at licenses/LICENSE-[project].txt.
asm 8.0.1:https://gitlab.ow2.org , BSD-3-Clause
antlr4-runtime 4.5.1: http://www.antlr.org/license.html, BSD-3-Clause
jline 0.9.94: http://mvnrepository.com/artifact/jline/jline/0.9.94, BSD
- Google: protobuf-java 3.4.0: https://github.com/google/protobuf/blob/master/java/pom.xml , BSD-3-Clause
- Google: protobuf-java-util 3.4.0: https://github.com/google/protobuf/blob/master/java/pom.xml , BSD-3-Clause
+ Google: protobuf-java 3.13.0: https://github.com/google/protobuf/blob/master/java/pom.xml , BSD-3-Clause
+ Google: protobuf-java-util 3.12.4: https://github.com/google/protobuf/blob/master/java/pom.xml , BSD-3-Clause
reflectasm 1.11.3: https://github.com/EsotericSoftware/reflectasm , BSD-3-Clause
proto files from gogo: https://github.com/gogo/protobuf BSD-2
diff --git a/docs/en/guides/How-to-build.md b/docs/en/guides/How-to-build.md
index 2bd97f7034..1d474466af 100644
--- a/docs/en/guides/How-to-build.md
+++ b/docs/en/guides/How-to-build.md
@@ -16,7 +16,7 @@ If you need to execute build behind the proxy, edit the *.mvn/jvm.config* and pu
```
### Build from GitHub
-1. Prepare git, JDK8 and Maven 3.6+
+1. Prepare git, JDK8+ and Maven 3.6+
1. Clone project
If you want to build a release from source codes, provide a `tag name` by using `git clone -b [tag_name] ...` while cloning.
@@ -41,7 +41,7 @@ If you need to execute build behind the proxy, edit the *.mvn/jvm.config* and pu
For each official Apache release, there is a complete and independent source code tar, which is including all source codes. You could download it from [SkyWalking Apache download page](http://skywalking.apache.org/downloads/). No git related stuff required when compiling this. Just follow these steps.
-1. Prepare JDK8 and Maven 3.6+
+1. Prepare JDK8+ and Maven 3.6+
1. Run `./mvnw clean package -DskipTests`
1. All packages are in `/dist`.(.tar.gz for Linux and .zip for Windows).
diff --git a/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterBaseTest.java b/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterBaseTest.java
index c3e392dc82..d3e1ad96b3 100644
--- a/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterBaseTest.java
+++ b/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterBaseTest.java
@@ -39,7 +39,7 @@ import org.apache.skywalking.oap.server.library.module.ModuleManager;
import org.junit.Before;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.mockito.internal.util.reflection.Whitebox;
+import org.powermock.reflect.Whitebox;
import static org.mockito.Mockito.when;
@@ -90,19 +90,32 @@ public abstract class MeterBaseTest {
timestamp = System.currentTimeMillis();
// single value
processor.read(MeterData.newBuilder()
- .setService("service").setServiceInstance("instance").setTimestamp(timestamp)
- .setSingleValue(MeterSingleValue.newBuilder().setName("test_count1")
- .addLabels(Label.newBuilder().setName("k1").setValue("v1").build()).setValue(1).build())
- .build());
+ .setService("service").setServiceInstance("instance").setTimestamp(timestamp)
+ .setSingleValue(MeterSingleValue.newBuilder().setName("test_count1")
+ .addLabels(Label.newBuilder()
+ .setName("k1")
+ .setValue("v1")
+ .build()).setValue(1).build())
+ .build());
// histogram
processor.read(MeterData.newBuilder()
- .setHistogram(MeterHistogram.newBuilder().setName("test_histogram")
- .addLabels(Label.newBuilder().setName("k2").setValue("v2").build())
- .addValues(MeterBucketValue.newBuilder().setBucket(1).setCount(10).build())
- .addValues(MeterBucketValue.newBuilder().setBucket(5).setCount(15).build())
- .addValues(MeterBucketValue.newBuilder().setBucket(10).setCount(3).build())
- .build())
- .build());
+ .setHistogram(MeterHistogram.newBuilder().setName("test_histogram")
+ .addLabels(
+ Label.newBuilder().setName("k2").setValue("v2").build())
+ .addValues(MeterBucketValue.newBuilder()
+ .setBucket(1)
+ .setCount(10)
+ .build())
+ .addValues(MeterBucketValue.newBuilder()
+ .setBucket(5)
+ .setCount(15)
+ .build())
+ .addValues(MeterBucketValue.newBuilder()
+ .setBucket(10)
+ .setCount(3)
+ .build())
+ .build())
+ .build());
}
}
diff --git a/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterBuilderTest.java b/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterBuilderTest.java
index b92fd40306..8a4a63efab 100644
--- a/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterBuilderTest.java
+++ b/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterBuilderTest.java
@@ -31,27 +31,28 @@ import org.apache.skywalking.oap.server.library.module.ModuleStartException;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.mockito.internal.util.reflection.Whitebox;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.modules.junit4.PowerMockRunner;
+import org.powermock.reflect.Whitebox;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.doCallRealMethod;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore("javax.management.*")
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
public class MeterBuilderTest extends MeterBaseTest {
@Test
public void testBuildAndSend() throws ModuleStartException {
List values = new ArrayList<>();
doAnswer(invocationOnMock -> {
- values.add(invocationOnMock.getArgumentAt(0, AcceptableValue.class));
+ values.add(invocationOnMock.getArgument(0, AcceptableValue.class));
return null;
}).when(meterSystem).doStreamingCalculation(any());
- final MeterProcessService context = (MeterProcessService) Whitebox.getInternalState(processor, "processService");
+ final MeterProcessService context = (MeterProcessService) Whitebox.getInternalState(
+ processor, "processService");
context.enabledBuilders().stream().peek(b -> doCallRealMethod().when(b).buildAndSend(any(), any()));
context.initMeters();
@@ -91,7 +92,8 @@ public class MeterBuilderTest extends MeterBaseTest {
private void verifyDataTable(DataTable table, Object... data) {
Assert.assertEquals(data.length / 2, table.size());
for (int i = 0; i < data.length; i += 2) {
- Assert.assertEquals(Long.parseLong(String.valueOf(data[i + 1])), table.get(String.valueOf(data[i])).longValue());
+ Assert.assertEquals(
+ Long.parseLong(String.valueOf(data[i + 1])), table.get(String.valueOf(data[i])).longValue());
}
}
}
diff --git a/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterProcessContextTest.java b/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterProcessContextTest.java
index a53eb33d47..3f65b14f1c 100644
--- a/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterProcessContextTest.java
+++ b/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterProcessContextTest.java
@@ -25,16 +25,16 @@ import org.apache.skywalking.oap.server.library.module.ModuleStartException;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.mockito.internal.util.reflection.Whitebox;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.modules.junit4.PowerMockRunner;
+import org.powermock.reflect.Whitebox;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore("javax.management.*")
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
public class MeterProcessContextTest extends MeterBaseTest {
private static final String CONFIG_PATH = "meter-receive-config";
diff --git a/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterProcessorTest.java b/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterProcessorTest.java
index 6a042aed0d..b8de2e5fe3 100644
--- a/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterProcessorTest.java
+++ b/oap-server/analyzer/agent-analyzer/src/test/java/org/apache/skywalking/oap/server/analyzer/provider/meter/process/MeterProcessorTest.java
@@ -18,18 +18,17 @@
package org.apache.skywalking.oap.server.analyzer.provider.meter.process;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mockito;
-import org.mockito.internal.util.reflection.Whitebox;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.modules.junit4.PowerMockRunner;
-
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mockito;
+import org.powermock.core.classloader.annotations.PowerMockIgnore;
+import org.powermock.modules.junit4.PowerMockRunner;
+import org.powermock.reflect.Whitebox;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doNothing;
@@ -38,7 +37,7 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore("javax.management.*")
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
public class MeterProcessorTest extends MeterBaseTest {
@Test
@@ -49,15 +48,18 @@ public class MeterProcessorTest extends MeterBaseTest {
Assert.assertEquals(timestamp, processor.timestamp().longValue());
// meters check
- final Map meters = (Map) Whitebox.getInternalState(processor, "meters");
+ final Map meters = (Map) Whitebox.getInternalState(
+ processor, "meters");
Assert.assertEquals(2, meters.size());
// single value
- EvalSingleData singleData = verifyBaseData(meters.get("test_count1"), "test_count1", Collections.singletonMap("k1", "v1"));
+ EvalSingleData singleData = verifyBaseData(
+ meters.get("test_count1"), "test_count1", Collections.singletonMap("k1", "v1"));
Assert.assertEquals(1, singleData.getValue(), 0.0);
// histogram
- EvalHistogramData histogramData = verifyBaseData(meters.get("test_histogram"), "test_histogram", Collections.singletonMap("k2", "v2"));
+ EvalHistogramData histogramData = verifyBaseData(
+ meters.get("test_histogram"), "test_histogram", Collections.singletonMap("k2", "v2"));
Assert.assertEquals(3, histogramData.getBuckets().size());
Assert.assertEquals(10, histogramData.getBuckets().get(1d).longValue());
Assert.assertEquals(15, histogramData.getBuckets().get(5d).longValue());
@@ -68,8 +70,11 @@ public class MeterProcessorTest extends MeterBaseTest {
public void testProcess() {
// each builder has build and send
MeterProcessService context = (MeterProcessService) Whitebox.getInternalState(processor, "processService");
- List builders = context.enabledBuilders().stream().map(Mockito::spy)
- .peek(builder -> doNothing().when(builder).buildAndSend(any(), any())).collect(Collectors.toList());
+ List builders = context.enabledBuilders()
+ .stream()
+ .map(Mockito::spy)
+ .peek(builder -> doNothing().when(builder).buildAndSend(any(), any()))
+ .collect(Collectors.toList());
Whitebox.setInternalState(context, "meterBuilders", builders);
processor.process();
builders.stream().forEach(b -> verify(b, times(1)).buildAndSend(any(), any()));
diff --git a/oap-server/pom.xml b/oap-server/pom.xml
index 3fc4ad88ec..e07643ef9c 100755
--- a/oap-server/pom.xml
+++ b/oap-server/pom.xml
@@ -52,11 +52,12 @@
UTF-8
+ 3.13.0
+ 3.12.4
1.7.25
2.9.0
28.1-jre
1.18
- 2.8.6
5.2.3
8.0
3.4.10
@@ -95,7 +96,6 @@
3.0.3
3.5
- 3.11.4
2.4.1
2.4.6.RELEASE
@@ -127,6 +127,13 @@
com.google.guava
guava
+
+
+ net.bytebuddy
+ byte-buddy
+ ${bytebuddy.version}
+ test
+
@@ -271,6 +278,11 @@
${grpc.version}
+
+ com.google.protobuf
+ protobuf-java
+ ${protobuf-java.version}
+
com.google.protobuf
protobuf-java-util
diff --git a/oap-server/server-alarm-plugin/src/test/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandlerTest.java b/oap-server/server-alarm-plugin/src/test/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandlerTest.java
index 61c9669c0c..d3cd9d6996 100644
--- a/oap-server/server-alarm-plugin/src/test/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandlerTest.java
+++ b/oap-server/server-alarm-plugin/src/test/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandlerTest.java
@@ -59,7 +59,7 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore("javax.management.*")
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
@PrepareForTest(DefaultScopeDefine.class)
public class NotifyHandlerTest {
diff --git a/oap-server/server-cluster-plugin/cluster-consul-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulProviderTest.java b/oap-server/server-cluster-plugin/cluster-consul-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulProviderTest.java
index 09302fa852..1b9da57fb5 100644
--- a/oap-server/server-cluster-plugin/cluster-consul-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulProviderTest.java
+++ b/oap-server/server-cluster-plugin/cluster-consul-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/consul/ClusterModuleConsulProviderTest.java
@@ -48,7 +48,7 @@ import static org.mockito.Mockito.when;
@RunWith(PowerMockRunner.class)
@PrepareForTest(Consul.class)
-@PowerMockIgnore("javax.management.*")
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
public class ClusterModuleConsulProviderTest {
private ClusterModuleConsulProvider provider = new ClusterModuleConsulProvider();
diff --git a/oap-server/server-cluster-plugin/cluster-etcd-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/etcd/ClusterModuleEtcdProviderTest.java b/oap-server/server-cluster-plugin/cluster-etcd-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/etcd/ClusterModuleEtcdProviderTest.java
deleted file mode 100644
index 8415a77349..0000000000
--- a/oap-server/server-cluster-plugin/cluster-etcd-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/etcd/ClusterModuleEtcdProviderTest.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.skywalking.oap.server.cluster.plugin.etcd;
-
-import java.net.URI;
-import java.util.List;
-import org.apache.skywalking.oap.server.core.CoreModule;
-import org.apache.skywalking.oap.server.core.cluster.ClusterModule;
-import org.apache.skywalking.oap.server.library.module.ModuleConfig;
-import org.apache.skywalking.oap.server.library.module.ModuleStartException;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.ArgumentCaptor;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
-import org.powermock.reflect.Whitebox;
-
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.mockito.Mockito.mock;
-
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(EtcdUtils.class)
-@PowerMockIgnore("javax.management.*")
-public class ClusterModuleEtcdProviderTest {
-
- private ClusterModuleEtcdProvider provider = new ClusterModuleEtcdProvider();
-
- @Test
- public void name() {
- assertEquals("etcd", provider.name());
- }
-
- @Test
- public void module() {
- assertEquals(ClusterModule.class, provider.module());
- }
-
- @Test
- public void createConfigBeanIfAbsent() {
- ModuleConfig moduleConfig = provider.createConfigBeanIfAbsent();
- assertTrue(moduleConfig instanceof ClusterModuleEtcdConfig);
- }
-
- @Test(expected = ModuleStartException.class)
- public void prepareWithNonHost() throws Exception {
- provider.prepare();
- }
-
- @Test
- @SuppressWarnings("unchecked")
- public void prepare() throws Exception {
- PowerMockito.mockStatic(EtcdUtils.class);
- ClusterModuleEtcdConfig etcdConfig = new ClusterModuleEtcdConfig();
- etcdConfig.setHostPort("10.0.0.1:1000,10.0.0.2:1001");
- Whitebox.setInternalState(provider, "config", etcdConfig);
- provider.prepare();
-
- List uris = mock(List.class);
- PowerMockito.when(EtcdUtils.parse(etcdConfig)).thenReturn(uris);
- ArgumentCaptor addressCaptor = ArgumentCaptor.forClass(ClusterModuleEtcdConfig.class);
- PowerMockito.verifyStatic();
- EtcdUtils.parse(addressCaptor.capture());
- ClusterModuleEtcdConfig cfg = addressCaptor.getValue();
- assertEquals(etcdConfig.getHostPort(), cfg.getHostPort());
- }
-
- @Test
- public void prepareSingle() throws Exception {
- PowerMockito.mockStatic(EtcdUtils.class);
- ClusterModuleEtcdConfig etcdConfig = new ClusterModuleEtcdConfig();
- etcdConfig.setHostPort("10.0.0.1:1000");
- Whitebox.setInternalState(provider, "config", etcdConfig);
- provider.prepare();
-
- List uris = mock(List.class);
- PowerMockito.when(EtcdUtils.parse(etcdConfig)).thenReturn(uris);
- ArgumentCaptor addressCaptor = ArgumentCaptor.forClass(ClusterModuleEtcdConfig.class);
- PowerMockito.verifyStatic();
- EtcdUtils.parse(addressCaptor.capture());
- ClusterModuleEtcdConfig cfg = addressCaptor.getValue();
- assertEquals(etcdConfig.getHostPort(), cfg.getHostPort());
- }
-
- @Test
- public void start() {
- provider.start();
- }
-
- @Test
- public void notifyAfterCompleted() {
- provider.notifyAfterCompleted();
- }
-
- @Test
- public void requiredModules() {
- String[] modules = provider.requiredModules();
- assertArrayEquals(new String[] {CoreModule.NAME}, modules);
- }
-}
diff --git a/oap-server/server-cluster-plugin/cluster-etcd-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/etcd/EtcdCoordinatorTest.java b/oap-server/server-cluster-plugin/cluster-etcd-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/etcd/EtcdCoordinatorTest.java
deleted file mode 100644
index dd5c1575ae..0000000000
--- a/oap-server/server-cluster-plugin/cluster-etcd-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/etcd/EtcdCoordinatorTest.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.skywalking.oap.server.cluster.plugin.etcd;
-
-import com.google.gson.Gson;
-import java.util.ArrayList;
-import java.util.List;
-import mousio.etcd4j.EtcdClient;
-import mousio.etcd4j.promises.EtcdResponsePromise;
-import mousio.etcd4j.requests.EtcdKeyGetRequest;
-import mousio.etcd4j.requests.EtcdKeyPutRequest;
-import mousio.etcd4j.responses.EtcdKeysResponse;
-import org.apache.skywalking.oap.server.core.cluster.RemoteInstance;
-import org.apache.skywalking.oap.server.core.remote.client.Address;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.ArgumentCaptor;
-import org.mockito.Mock;
-import org.mockito.Mockito;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.anyString;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(EtcdKeysResponse.class)
-@PowerMockIgnore("javax.management.*")
-public class EtcdCoordinatorTest {
-
- private ClusterModuleEtcdConfig etcdConfig = new ClusterModuleEtcdConfig();
-
- private EtcdClient client;
-
- private EtcdCoordinator coordinator;
-
- private Gson gson = new Gson();
-
- private Address remoteAddress = new Address("10.0.0.1", 1000, false);
- private Address selfRemoteAddress = new Address("10.0.0.2", 1001, true);
-
- private Address internalAddress = new Address("10.0.0.3", 1002, false);
-
- private static final String SERVICE_NAME = "my-service";
-
- private EtcdResponsePromise getPromise;
- private EtcdResponsePromise putPromise;
-
- private EtcdKeysResponse response;
-
- private EtcdKeyPutRequest putRequest = mock(EtcdKeyPutRequest.class);
-
- private EtcdKeyGetRequest getRequest = mock(EtcdKeyGetRequest.class);
-
- private EtcdKeyPutRequest putDirRequest = mock(EtcdKeyPutRequest.class);
-
- private EtcdResponsePromise putDirPromise;
-
- @Mock
- private List list = mock(List.class);
-
- @Before
- public void setUp() throws Exception {
- etcdConfig.setServiceName(SERVICE_NAME);
-
- client = mock(EtcdClient.class);
- PowerMockito.whenNew(EtcdClient.class).withAnyArguments().thenReturn(client);
- client = new EtcdClient("http://10.0.0.1:1000", "http://10.0.0.2:2000");
- coordinator = new EtcdCoordinator(etcdConfig, client);
-
- putPromise = (EtcdResponsePromise) mock(EtcdResponsePromise.class);
- getPromise = (EtcdResponsePromise) mock(EtcdResponsePromise.class);
- putDirPromise = (EtcdResponsePromise) mock(EtcdResponsePromise.class);
-
- PowerMockito.when(client.putDir(anyString())).thenReturn(putDirRequest);
- PowerMockito.when(putDirRequest.ttl(anyInt())).thenReturn(putDirRequest);
- PowerMockito.when(putDirRequest.send()).thenReturn(putDirPromise);
- PowerMockito.when(client.put(anyString(), anyString())).thenReturn(putRequest);
- PowerMockito.when(putRequest.ttl(anyInt())).thenReturn(putRequest);
- PowerMockito.when(putRequest.send()).thenReturn(putPromise);
- PowerMockito.when(client.get(anyString())).thenReturn(getRequest);
- PowerMockito.when(getRequest.send()).thenReturn(getPromise);
-
- response = PowerMockito.mock(EtcdKeysResponse.class);
-
- response = PowerMockito.mock(EtcdKeysResponse.class);
- when(putPromise.get()).thenReturn(response);
- when(getPromise.get()).thenReturn(response);
- when(putDirPromise.get()).thenReturn(response);
- }
-
- @Test
- @SuppressWarnings("unchecked")
- public void queryRemoteNodesWithNonOrEmpty() {
- EtcdKeysResponse.EtcdNode node = PowerMockito.mock(EtcdKeysResponse.EtcdNode.class);
- when(response.getNode()).thenReturn(node);
- when(node.getValue()).thenReturn("{}");
- assertEquals(0, coordinator.queryRemoteNodes().size());
- assertEquals(0, coordinator.queryRemoteNodes().size());
- }
-
- @Test
- public void queryRemoteNodes() {
- registerSelfRemote();
-
- EtcdKeysResponse.EtcdNode node = PowerMockito.mock(EtcdKeysResponse.EtcdNode.class);
- EtcdKeysResponse.EtcdNode node1 = PowerMockito.mock(EtcdKeysResponse.EtcdNode.class);
-
- when(response.getNode()).thenReturn(node);
- list = new ArrayList<>();
- List list1 = Mockito.spy(list);
- list1.add(node1);
- when(node.getNodes()).thenReturn(list1);
- when(node1.getValue()).thenReturn("{\"serviceId\":\"my-service\",\"host\":\"10.0.0.2\",\"port\":1001}");
- List remoteInstances = coordinator.queryRemoteNodes();
- assertEquals(1, remoteInstances.size());
-
- RemoteInstance selfInstance = remoteInstances.get(0);
- velidate(selfRemoteAddress, selfInstance);
- }
-
- @Test
- public void registerRemote() {
- registerRemote(remoteAddress);
- }
-
- @Test
- public void registerSelfRemote() {
- registerRemote(selfRemoteAddress);
- }
-
- @Test
- public void registerRemoteUsingInternal() {
- etcdConfig.setInternalComHost(internalAddress.getHost());
- etcdConfig.setInternalComPort(internalAddress.getPort());
- registerRemote(internalAddress);
- }
-
- private void velidate(Address originArress, RemoteInstance instance) {
- Address instanceAddress = instance.getAddress();
- assertEquals(originArress.getHost(), instanceAddress.getHost());
- assertEquals(originArress.getPort(), instanceAddress.getPort());
- }
-
- private void registerRemote(Address address) {
- coordinator.registerRemote(new RemoteInstance(address));
- EtcdEndpoint endpoint = afterRegister().get(0);
- verifyRegistration(address, endpoint);
- }
-
- private List afterRegister() {
- ArgumentCaptor argumentCaptor = ArgumentCaptor.forClass(String.class);
- ArgumentCaptor nameCaptor = ArgumentCaptor.forClass(String.class);
- verify(client).put(nameCaptor.capture(), argumentCaptor.capture());
- EtcdEndpoint endpoint = gson.fromJson(argumentCaptor.getValue(), EtcdEndpoint.class);
- List list = new ArrayList<>();
- list.add(endpoint);
- return list;
- }
-
- private void verifyRegistration(Address remoteAddress, EtcdEndpoint endpoint) {
- assertNotNull(endpoint);
- assertEquals(SERVICE_NAME, endpoint.getServiceName());
- assertEquals(remoteAddress.getHost(), endpoint.getHost());
- assertEquals(remoteAddress.getPort(), endpoint.getPort());
- }
-
-}
diff --git a/oap-server/server-cluster-plugin/cluster-kubernetes-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/kubernetes/ClusterModuleKubernetesProviderTest.java b/oap-server/server-cluster-plugin/cluster-kubernetes-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/kubernetes/ClusterModuleKubernetesProviderTest.java
index 79f1029b64..ef9864d6c8 100644
--- a/oap-server/server-cluster-plugin/cluster-kubernetes-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/kubernetes/ClusterModuleKubernetesProviderTest.java
+++ b/oap-server/server-cluster-plugin/cluster-kubernetes-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/kubernetes/ClusterModuleKubernetesProviderTest.java
@@ -31,7 +31,7 @@ import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore("javax.management.*")
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
public class ClusterModuleKubernetesProviderTest {
private ClusterModuleKubernetesProvider provider = new ClusterModuleKubernetesProvider();
diff --git a/oap-server/server-cluster-plugin/cluster-kubernetes-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/kubernetes/KubernetesCoordinatorTest.java b/oap-server/server-cluster-plugin/cluster-kubernetes-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/kubernetes/KubernetesCoordinatorTest.java
index 48a831983c..b6587db840 100644
--- a/oap-server/server-cluster-plugin/cluster-kubernetes-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/kubernetes/KubernetesCoordinatorTest.java
+++ b/oap-server/server-cluster-plugin/cluster-kubernetes-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/kubernetes/KubernetesCoordinatorTest.java
@@ -46,7 +46,7 @@ import org.powermock.reflect.Whitebox;
import static org.powermock.api.mockito.PowerMockito.when;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore("javax.management.*")
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
@PrepareForTest({NamespacedPodListInformer.class})
public class KubernetesCoordinatorTest {
diff --git a/oap-server/server-cluster-plugin/cluster-nacos-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/nacos/ClusterModuleNacosProviderTest.java b/oap-server/server-cluster-plugin/cluster-nacos-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/nacos/ClusterModuleNacosProviderTest.java
deleted file mode 100644
index f489f93c05..0000000000
--- a/oap-server/server-cluster-plugin/cluster-nacos-plugin/src/test/java/org/apache/skywalking/oap/server/cluster/plugin/nacos/ClusterModuleNacosProviderTest.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.skywalking.oap.server.cluster.plugin.nacos;
-
-import com.alibaba.nacos.api.PropertyKeyConst;
-import com.alibaba.nacos.api.naming.NamingFactory;
-import com.alibaba.nacos.api.naming.NamingService;
-import java.util.Properties;
-import org.apache.skywalking.oap.server.core.CoreModule;
-import org.apache.skywalking.oap.server.core.cluster.ClusterModule;
-import org.apache.skywalking.oap.server.library.module.ModuleConfig;
-import org.apache.skywalking.oap.server.library.module.ModuleStartException;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.ArgumentCaptor;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
-import org.powermock.reflect.Whitebox;
-
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.mockito.Mockito.mock;
-
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(NamingFactory.class)
-@PowerMockIgnore("javax.management.*")
-public class ClusterModuleNacosProviderTest {
-
- private static final String SERVICE_NAME = "test-service_name";
-
- private ClusterModuleNacosProvider provider = new ClusterModuleNacosProvider();
-
- @Test
- public void name() {
- assertEquals("nacos", provider.name());
- }
-
- @Test
- public void module() {
- assertEquals(ClusterModule.class, provider.module());
- }
-
- @Test
- public void createConfigBeanIfAbsent() {
- ModuleConfig moduleConfig = provider.createConfigBeanIfAbsent();
- assertTrue(moduleConfig instanceof ClusterModuleNacosConfig);
- }
-
- @Test(expected = ModuleStartException.class)
- public void prepareWithNonHost() throws Exception {
- provider.prepare();
- }
-
- @Test
- public void prepare() throws Exception {
- PowerMockito.mockStatic(NamingFactory.class);
- ClusterModuleNacosConfig nacosConfig = new ClusterModuleNacosConfig();
- nacosConfig.setHostPort("10.0.0.1:1000,10.0.0.2:1001");
- nacosConfig.setServiceName(SERVICE_NAME);
- Whitebox.setInternalState(provider, "config", nacosConfig);
- NamingService namingService = mock(NamingService.class);
-
- Properties properties = new Properties();
- properties.put(PropertyKeyConst.SERVER_ADDR, "10.0.0.1:1000,10.0.0.2:1001");
-
- PowerMockito.when(NamingFactory.createNamingService(properties)).thenReturn(namingService);
- provider.prepare();
- ArgumentCaptor addressCaptor = ArgumentCaptor.forClass(Properties.class);
- PowerMockito.verifyStatic();
- NamingFactory.createNamingService(addressCaptor.capture());
- Properties data = addressCaptor.getValue();
- assertEquals("10.0.0.1:1000,10.0.0.2:1001", data.getProperty(PropertyKeyConst.SERVER_ADDR));
- }
-
- @Test
- public void start() {
- provider.start();
- }
-
- @Test
- public void notifyAfterCompleted() {
- provider.notifyAfterCompleted();
- }
-
- @Test
- public void requiredModules() {
- String[] modules = provider.requiredModules();
- assertArrayEquals(new String[] {CoreModule.NAME}, modules);
- }
-}
diff --git a/oap-server/server-configuration/configuration-consul/src/test/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationWatcherRegisterTest.java b/oap-server/server-configuration/configuration-consul/src/test/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationWatcherRegisterTest.java
index 1cfec1ef06..34e6fc37fc 100644
--- a/oap-server/server-configuration/configuration-consul/src/test/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationWatcherRegisterTest.java
+++ b/oap-server/server-configuration/configuration-consul/src/test/java/org/apache/skywalking/oap/server/configuration/consul/ConsulConfigurationWatcherRegisterTest.java
@@ -21,7 +21,6 @@ package org.apache.skywalking.oap.server.configuration.consul;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Sets;
import com.google.common.io.BaseEncoding;
-import com.orbitz.consul.KeyValueClient;
import com.orbitz.consul.cache.ConsulCache;
import com.orbitz.consul.cache.KVCache;
import com.orbitz.consul.model.kv.ImmutableValue;
@@ -35,6 +34,7 @@ import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.powermock.api.mockito.PowerMockito;
+import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.powermock.reflect.Whitebox;
@@ -48,6 +48,13 @@ import static org.mockito.Mockito.when;
@RunWith(PowerMockRunner.class)
@PrepareForTest(KVCache.class)
+@PowerMockIgnore({
+ "com.sun.org.apache.xerces.*",
+ "javax.xml.*",
+ "org.xml.*",
+ "javax.management.*",
+ "org.w3c.*"
+})
@SuppressWarnings({
"unchecked",
"OptionalGetWithoutIsPresent"
@@ -77,8 +84,8 @@ public class ConsulConfigurationWatcherRegisterTest {
ArgumentCaptor listener2 = ArgumentCaptor.forClass(ConsulCache.Listener.class);
PowerMockito.mockStatic(KVCache.class);
- PowerMockito.when(KVCache.newCache(any(KeyValueClient.class), eq("key1"))).thenReturn(cache1);
- PowerMockito.when(KVCache.newCache(any(KeyValueClient.class), eq("key2"))).thenReturn(cache2);
+ PowerMockito.when(KVCache.newCache(any(), eq("key1"))).thenReturn(cache1);
+ PowerMockito.when(KVCache.newCache(any(), eq("key2"))).thenReturn(cache2);
when(register.readConfig(any(Set.class))).thenCallRealMethod();
@@ -128,8 +135,8 @@ public class ConsulConfigurationWatcherRegisterTest {
ArgumentCaptor listener2 = ArgumentCaptor.forClass(ConsulCache.Listener.class);
PowerMockito.mockStatic(KVCache.class);
- PowerMockito.when(KVCache.newCache(any(KeyValueClient.class), eq("key1"))).thenReturn(cache1);
- PowerMockito.when(KVCache.newCache(any(KeyValueClient.class), eq("key2"))).thenReturn(cache2);
+ PowerMockito.when(KVCache.newCache(any(), eq("key1"))).thenReturn(cache1);
+ PowerMockito.when(KVCache.newCache(any(), eq("key2"))).thenReturn(cache2);
when(register.readConfig(any(Set.class))).thenCallRealMethod();
diff --git a/oap-server/server-configuration/configuration-etcd/pom.xml b/oap-server/server-configuration/configuration-etcd/pom.xml
index 8d1da375e5..baf0f074a0 100644
--- a/oap-server/server-configuration/configuration-etcd/pom.xml
+++ b/oap-server/server-configuration/configuration-etcd/pom.xml
@@ -69,6 +69,19 @@
+
+
+
+ maven-compiler-plugin
+
+ ${compiler.version}
+ ${compiler.version}
+ ${project.build.sourceEncoding}
+
+
+
+
+
CI-with-IT
diff --git a/oap-server/server-configuration/configuration-etcd/src/test/java/org/apache/skywalking/oap/server/configuration/etcd/EtcdConfigWatcherRegisterTest.java b/oap-server/server-configuration/configuration-etcd/src/test/java/org/apache/skywalking/oap/server/configuration/etcd/EtcdConfigWatcherRegisterTest.java
deleted file mode 100644
index 4f1f476984..0000000000
--- a/oap-server/server-configuration/configuration-etcd/src/test/java/org/apache/skywalking/oap/server/configuration/etcd/EtcdConfigWatcherRegisterTest.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.skywalking.oap.server.configuration.etcd;
-
-import com.google.common.collect.Sets;
-import java.net.URI;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import mousio.client.promises.ResponsePromise;
-import mousio.etcd4j.EtcdClient;
-import mousio.etcd4j.promises.EtcdResponsePromise;
-import mousio.etcd4j.requests.EtcdKeyGetRequest;
-import mousio.etcd4j.responses.EtcdKeysResponse;
-import org.apache.skywalking.oap.server.configuration.api.ConfigTable;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
-import org.powermock.reflect.Whitebox;
-
-import static junit.framework.TestCase.assertEquals;
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.spy;
-import static org.powermock.api.mockito.PowerMockito.mock;
-import static org.powermock.api.mockito.PowerMockito.mockStatic;
-import static org.powermock.api.mockito.PowerMockito.when;
-import static org.powermock.api.mockito.PowerMockito.whenNew;
-
-@RunWith(PowerMockRunner.class)
-@PrepareForTest({
- EtcdKeysResponse.class,
- EtcdUtils.class,
- EtcdClient.class,
- URI.class
-})
-@PowerMockIgnore({"javax.management.*"})
-public class EtcdConfigWatcherRegisterTest {
-
- @Before
- @Test
- public void shouldReadConfigs() throws Exception {
- final String group = "skywalking";
- final String testKey1 = "receiver-trace.default.slowDBAccessThreshold";
- final String testVal1 = "test";
- final String testKey2 = "testKey";
- final String testVal2 = "testVal";
-
- final EtcdServerSettings mockSettings = mock(EtcdServerSettings.class);
- when(mockSettings.getGroup()).thenReturn(group);
- mockStatic(EtcdUtils.class);
-
- List uris = mock(List.class);
- when(EtcdUtils.parse(any())).thenReturn(uris);
-
- final EtcdClient client = PowerMockito.mock(EtcdClient.class);
- whenNew(EtcdClient.class).withAnyArguments().thenReturn(client);
-
- String port = System.getProperty("etcd.port");
- URI uri = new URI("http://localhost:" + port);
- List urisArray = spy(ArrayList.class);
- urisArray.add(uri);
- URI[] array = urisArray.toArray(new URI[] {});
- when(uris.toArray(new URI[] {})).thenReturn(array);
-
- final EtcdConfigWatcherRegister mockRegister = spy(new EtcdConfigWatcherRegister(mockSettings));
-
- Whitebox.setInternalState(mockRegister, "client", client);
- Whitebox.setInternalState(mockRegister, "settings", mockSettings);
-
- final EtcdKeysResponse response = PowerMockito.mock(EtcdKeysResponse.class);
- final EtcdKeysResponse response1 = PowerMockito.mock(EtcdKeysResponse.class);
-
- final EtcdKeyGetRequest request = PowerMockito.mock(EtcdKeyGetRequest.class);
-
- when(client.get("/skywalking/receiver-trace.default.slowDBAccessThreshold")).thenReturn(request);
- when(request.waitForChange()).thenReturn(request);
-
- final EtcdResponsePromise promise = mock(EtcdResponsePromise.class);
- final ResponsePromise responseResponsePromise = mock(ResponsePromise.class);
- when(request.send()).thenReturn(promise);
- when(promise.get()).thenReturn(response);
- when(responseResponsePromise.get()).thenReturn(response);
-
- final EtcdKeysResponse.EtcdNode node = mock(EtcdKeysResponse.EtcdNode.class);
- when(response.getNode()).thenReturn(node);
- when(node.getKey()).thenReturn("/skywalking/receiver-trace.default.slowDBAccessThreshold");
- when(node.getValue()).thenReturn("test");
-
- final EtcdKeyGetRequest request1 = mock(EtcdKeyGetRequest.class);
- when(client.get("/skywalking/testKey")).thenReturn(request1);
- when(request1.waitForChange()).thenReturn(request1);
- final EtcdResponsePromise promise1 = mock(EtcdResponsePromise.class);
- final ResponsePromise responseResponsePromise1 = mock(ResponsePromise.class);
- when(request1.send()).thenReturn(promise1);
- when(promise1.get()).thenReturn(response1);
- when(responseResponsePromise1.get()).thenReturn(response1);
-
- final EtcdKeysResponse.EtcdNode node1 = mock(EtcdKeysResponse.EtcdNode.class);
- when(response1.getNode()).thenReturn(node1);
- when(node1.getKey()).thenReturn("/skywalking/testKey");
- when(node1.getValue()).thenReturn("testVal");
-
- final ConfigTable configTable = mockRegister.readConfig(Sets.newHashSet(testKey1, testKey2)).get();
-
- assertEquals(2, configTable.getItems().size());
- Map kvs = new HashMap<>();
- for (ConfigTable.ConfigItem item : configTable.getItems()) {
- kvs.put(item.getName(), item.getValue());
- }
- assertEquals(testVal1, kvs.get(testKey1));
- assertEquals(testVal2, kvs.get(testKey2));
- }
-}
diff --git a/oap-server/server-configuration/configuration-k8s-configmap/src/test/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigWatcherRegisterTest.java b/oap-server/server-configuration/configuration-k8s-configmap/src/test/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigWatcherRegisterTest.java
index 2fd449cd2c..45ddf434cc 100644
--- a/oap-server/server-configuration/configuration-k8s-configmap/src/test/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigWatcherRegisterTest.java
+++ b/oap-server/server-configuration/configuration-k8s-configmap/src/test/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigWatcherRegisterTest.java
@@ -39,7 +39,7 @@ import org.powermock.modules.junit4.PowerMockRunner;
import org.yaml.snakeyaml.Yaml;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore("javax.management.*")
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
@PrepareForTest({ConfigurationConfigmapInformer.class})
public class ConfigmapConfigWatcherRegisterTest {
diff --git a/oap-server/server-configuration/configuration-k8s-configmap/src/test/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigurationProviderTest.java b/oap-server/server-configuration/configuration-k8s-configmap/src/test/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigurationProviderTest.java
index 13d967e15e..4090296837 100644
--- a/oap-server/server-configuration/configuration-k8s-configmap/src/test/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigurationProviderTest.java
+++ b/oap-server/server-configuration/configuration-k8s-configmap/src/test/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigurationProviderTest.java
@@ -28,7 +28,7 @@ import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore("javax.management.*")
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
public class ConfigmapConfigurationProviderTest {
private final ConfigmapConfigurationProvider provider = new ConfigmapConfigurationProvider();
diff --git a/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/analysis/TimeBucketTest.java b/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/analysis/TimeBucketTest.java
index 201d4368e6..f6cff89337 100644
--- a/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/analysis/TimeBucketTest.java
+++ b/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/analysis/TimeBucketTest.java
@@ -56,8 +56,8 @@ public class TimeBucketTest {
DownSampling.Day,
DAYS,
MILLISECONDS.toDays(NOW)
- },
- };
+ }
+ };
}
private DownSampling downSampling;
diff --git a/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/storage/model/StorageModelsTest.java b/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/storage/model/StorageModelsTest.java
index 23f4431e75..5267e8f5d0 100644
--- a/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/storage/model/StorageModelsTest.java
+++ b/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/storage/model/StorageModelsTest.java
@@ -35,11 +35,13 @@ import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.powermock.api.mockito.PowerMockito;
+import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
@RunWith(PowerMockRunner.class)
@PrepareForTest({DefaultScopeDefine.class})
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
public class StorageModelsTest {
@BeforeClass
public static void setup() {
diff --git a/oap-server/server-library/library-util/pom.xml b/oap-server/server-library/library-util/pom.xml
index 1e468a14cf..241b7eb229 100644
--- a/oap-server/server-library/library-util/pom.xml
+++ b/oap-server/server-library/library-util/pom.xml
@@ -17,7 +17,8 @@
~
-->
-
+
server-library
org.apache.skywalking
@@ -30,7 +31,6 @@
1.18.0
- 3.11.4
@@ -57,7 +57,6 @@
com.google.protobuf
protobuf-java
- ${protobuf-java.version}
diff --git a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/pom.xml b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/pom.xml
index c0bd93289c..e9b0251838 100644
--- a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/pom.xml
+++ b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/pom.xml
@@ -46,10 +46,14 @@
com.google.protobuf
protobuf-java-util
- 3.5.1
+ ${protobuf-java-util.version}
test
+
+ org.apache.tomcat
+ annotations-api
+ ${org.apache.tomcat.annotations-api.version}
+ provided
+
-
-
\ No newline at end of file
diff --git a/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/test/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/rest/BrowserReportServletHandlerTest.java b/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/test/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/rest/BrowserReportServletHandlerTest.java
index b3dd3330c1..69bd2d48e1 100644
--- a/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/test/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/rest/BrowserReportServletHandlerTest.java
+++ b/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/test/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/rest/BrowserReportServletHandlerTest.java
@@ -36,14 +36,14 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.mockito.internal.util.reflection.Whitebox;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.modules.junit4.PowerMockRunner;
+import org.powermock.reflect.Whitebox;
import static org.mockito.Mockito.when;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore({"javax.management.*"})
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
public class BrowserReportServletHandlerTest {
@Mock
private HttpServletRequest request;
diff --git a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/test/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/rest/TraceSegmentReportServletHandlerTest.java b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/test/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/rest/TraceSegmentReportServletHandlerTest.java
index b47efc2ccd..9a88454206 100644
--- a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/test/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/rest/TraceSegmentReportServletHandlerTest.java
+++ b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/test/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/rest/TraceSegmentReportServletHandlerTest.java
@@ -40,14 +40,14 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.mockito.internal.util.reflection.Whitebox;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.modules.junit4.PowerMockRunner;
+import org.powermock.reflect.Whitebox;
import static org.mockito.Mockito.when;
@RunWith(PowerMockRunner.class)
-@PowerMockIgnore({"javax.management.*"})
+@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*", "org.w3c.*"})
public class TraceSegmentReportServletHandlerTest {
@Mock
@@ -71,7 +71,7 @@ public class TraceSegmentReportServletHandlerTest {
Mockito.when(moduleManager.find(AnalyzerModule.NAME)).thenReturn(analyzerModule);
Mockito.when(telemetryProvider.getService(MetricsCreator.class))
- .thenReturn(new MetricsCreatorNoop());
+ .thenReturn(new MetricsCreatorNoop());
when(analyzerModuleProvider.getService(ISegmentParserService.class))
.thenReturn(new SegmentParserServiceImpl(moduleManager, new AnalyzerModuleConfig()));
diff --git a/oap-server/server-tools/profile-exporter/tool-profile-snapshot-bootstrap/src/test/java/org/apache/skywalking/oap/server/tool/profile/exporter/test/ProfileSnapshotExporterTest.java b/oap-server/server-tools/profile-exporter/tool-profile-snapshot-bootstrap/src/test/java/org/apache/skywalking/oap/server/tool/profile/exporter/test/ProfileSnapshotExporterTest.java
index 189c2aae8a..64a42c238c 100644
--- a/oap-server/server-tools/profile-exporter/tool-profile-snapshot-bootstrap/src/test/java/org/apache/skywalking/oap/server/tool/profile/exporter/test/ProfileSnapshotExporterTest.java
+++ b/oap-server/server-tools/profile-exporter/tool-profile-snapshot-bootstrap/src/test/java/org/apache/skywalking/oap/server/tool/profile/exporter/test/ProfileSnapshotExporterTest.java
@@ -46,8 +46,8 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.Mockito;
-import org.mockito.internal.util.reflection.Whitebox;
import org.powermock.modules.junit4.PowerMockRunner;
+import org.powermock.reflect.Whitebox;
import org.yaml.snakeyaml.Yaml;
@RunWith(PowerMockRunner.class)
diff --git a/pom.xml b/pom.xml
index 69926e12dc..98586062fc 100755
--- a/pom.xml
+++ b/pom.xml
@@ -182,19 +182,25 @@
UTF-8
1.8
- 1.6.4
+ 2.0.7
6.18
4.12
- 1.10.19
+ 3.5.13
1.18.10
- 1.26.0
+ 1.10.16
+ 1.32.1
+ 2.8.6
1.6.2
0.6.1
- 3.3.0
- 1.8.0
+ 3.12.0
+ 1.32.1
2.0.26.Final
+ 1.3.2
+ 3.1
+
+ 6.0.53
0.4.13
@@ -219,7 +225,6 @@
1.5
2.7
true
- 1.3.2
@@ -228,11 +233,6 @@
junit
test
-
- org.mockito
- mockito-all
- test
-
org.powermock
powermock-module-junit4
@@ -240,7 +240,17 @@
org.powermock
- powermock-api-mockito
+ powermock-api-mockito2
+ test
+
+
+ net.bytebuddy
+ byte-buddy-agent
+ test
+
+
+ org.objenesis
+ objenesis
test
@@ -275,8 +285,8 @@
org.mockito
- mockito-all
- ${mockito-all.version}
+ mockito-core
+ ${mockito-core.version}
test
@@ -287,10 +297,22 @@
org.powermock
- powermock-api-mockito
+ powermock-api-mockito2
${powermock.version}
test
+
+ net.bytebuddy
+ byte-buddy-agent
+ ${bytebuddy.version}
+ test
+
+
+ org.objenesis
+ objenesis
+ ${objenesis.version}
+ test
+
org.openjdk.jmh
jmh-generator-annprocess
diff --git a/test/plugin/scenarios/gson-scenario/pom.xml b/test/plugin/scenarios/gson-scenario/pom.xml
index b49aef3178..3beba29e54 100644
--- a/test/plugin/scenarios/gson-scenario/pom.xml
+++ b/test/plugin/scenarios/gson-scenario/pom.xml
@@ -29,7 +29,6 @@
UTF-8
- 1.8
2.1.6.RELEASE
2.8.5
${test.framework.version}
diff --git a/test/plugin/scenarios/hystrix-scenario/pom.xml b/test/plugin/scenarios/hystrix-scenario/pom.xml
index 8aedab1b17..3cab1e4029 100644
--- a/test/plugin/scenarios/hystrix-scenario/pom.xml
+++ b/test/plugin/scenarios/hystrix-scenario/pom.xml
@@ -29,8 +29,6 @@
UTF-8
- 1.8
-
1.4.20
2.1.6.RELEASE
diff --git a/tools/dependencies/known-oap-backend-dependencies-es7.txt b/tools/dependencies/known-oap-backend-dependencies-es7.txt
index bb38473d5e..98640ae306 100755
--- a/tools/dependencies/known-oap-backend-dependencies-es7.txt
+++ b/tools/dependencies/known-oap-backend-dependencies-es7.txt
@@ -44,13 +44,13 @@ freemarker-2.3.28.jar
graphql-java-8.0.jar
graphql-java-tools-5.2.3.jar
groovy-3.0.3.jar
-grpc-api-1.26.0.jar
-grpc-context-1.26.0.jar
-grpc-core-1.26.0.jar
-grpc-netty-1.26.0.jar
-grpc-protobuf-1.26.0.jar
-grpc-protobuf-lite-1.26.0.jar
-grpc-stub-1.26.0.jar
+grpc-api-1.32.1.jar
+grpc-context-1.32.1.jar
+grpc-core-1.32.1.jar
+grpc-netty-1.32.1.jar
+grpc-protobuf-1.32.1.jar
+grpc-protobuf-lite-1.32.1.jar
+grpc-stub-1.32.1.jar
gson-2.8.6.jar
gson-fire-1.8.3.jar
guava-28.1-jre.jar
@@ -131,24 +131,22 @@ netty-buffer-4.1.42.Final.jar
netty-codec-4.1.42.Final.jar
netty-codec-dns-4.1.42.Final.jar
netty-codec-http-4.1.42.Final.jar
-netty-codec-http2-4.1.42.Final.jar
-netty-codec-socks-4.1.42.Final.jar
+netty-codec-http2-4.1.51.Final.jar
+netty-codec-socks-4.1.51.Final.jar
netty-common-4.1.42.Final.jar
netty-handler-4.1.42.Final.jar
-netty-handler-proxy-4.1.42.Final.jar
+netty-handler-proxy-4.1.51.Final.jar
netty-resolver-4.1.42.Final.jar
netty-resolver-dns-4.1.42.Final.jar
netty-tcnative-boringssl-static-2.0.26.Final.jar
netty-transport-4.1.42.Final.jar
okhttp-3.9.0.jar
okio-1.13.0.jar
-opencensus-api-0.24.0.jar
-opencensus-contrib-grpc-metrics-0.24.0.jar
parent-join-client-7.0.0.jar
perfmark-api-0.19.0.jar
-proto-google-common-protos-1.12.0.jar
-protobuf-java-3.11.4.jar
-protobuf-java-util-3.11.4.jar
+proto-google-common-protos-1.17.0.jar
+protobuf-java-3.13.0.jar
+protobuf-java-util-3.12.4.jar
rank-eval-client-7.0.0.jar
reactive-streams-1.0.2.jar
reflectasm-1.11.7.jar
diff --git a/tools/dependencies/known-oap-backend-dependencies.txt b/tools/dependencies/known-oap-backend-dependencies.txt
index b4391a53da..4dd8f35d16 100755
--- a/tools/dependencies/known-oap-backend-dependencies.txt
+++ b/tools/dependencies/known-oap-backend-dependencies.txt
@@ -45,13 +45,13 @@ freemarker-2.3.28.jar
graphql-java-8.0.jar
graphql-java-tools-5.2.3.jar
groovy-3.0.3.jar
-grpc-api-1.26.0.jar
-grpc-context-1.26.0.jar
-grpc-core-1.26.0.jar
-grpc-netty-1.26.0.jar
-grpc-protobuf-1.26.0.jar
-grpc-protobuf-lite-1.26.0.jar
-grpc-stub-1.26.0.jar
+grpc-api-1.32.1.jar
+grpc-context-1.32.1.jar
+grpc-core-1.32.1.jar
+grpc-netty-1.32.1.jar
+grpc-protobuf-1.32.1.jar
+grpc-protobuf-lite-1.32.1.jar
+grpc-stub-1.32.1.jar
gson-2.8.6.jar
gson-fire-1.8.3.jar
guava-28.1-jre.jar
@@ -129,24 +129,22 @@ netty-buffer-4.1.42.Final.jar
netty-codec-4.1.42.Final.jar
netty-codec-dns-4.1.42.Final.jar
netty-codec-http-4.1.42.Final.jar
-netty-codec-http2-4.1.42.Final.jar
-netty-codec-socks-4.1.42.Final.jar
+netty-codec-http2-4.1.51.Final.jar
+netty-codec-socks-4.1.51.Final.jar
netty-common-4.1.42.Final.jar
netty-handler-4.1.42.Final.jar
-netty-handler-proxy-4.1.42.Final.jar
+netty-handler-proxy-4.1.51.Final.jar
netty-resolver-4.1.42.Final.jar
netty-resolver-dns-4.1.42.Final.jar
netty-tcnative-boringssl-static-2.0.26.Final.jar
netty-transport-4.1.42.Final.jar
okhttp-3.9.0.jar
okio-1.13.0.jar
-opencensus-api-0.24.0.jar
-opencensus-contrib-grpc-metrics-0.24.0.jar
parent-join-client-6.3.2.jar
perfmark-api-0.19.0.jar
-proto-google-common-protos-1.12.0.jar
-protobuf-java-3.11.4.jar
-protobuf-java-util-3.11.4.jar
+proto-google-common-protos-1.17.0.jar
+protobuf-java-3.13.0.jar
+protobuf-java-util-3.12.4.jar
rank-eval-client-6.3.2.jar
reactive-streams-1.0.2.jar
reflectasm-1.11.7.jar