This is an automated email from the ASF dual-hosted git repository.
gaojun2048 pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/seatunnel.git
The following commit(s) were added to refs/heads/dev by this push:
new fd2a57d82a [Improve][Test] Fix test unstable on `ResourceManger` and
`EventReport` module (#6620)
fd2a57d82a is described below
commit fd2a57d82ab9be835ff589d3ab3cbca9aecaf7af
Author: Jia Fan <[email protected]>
AuthorDate: Mon Apr 1 10:38:43 2024 +0800
[Improve][Test] Fix test unstable on `ResourceManger` and `EventReport`
module (#6620)
---
.github/workflows/backend.yml | 4 +-
.../container/seatunnel/SeaTunnelContainer.java | 2 +
.../ResourceManagerFunctionTest.java | 56 ----------------------
.../resourcemanager/ResourceManagerTest.java | 29 ++++++++++-
4 files changed, 33 insertions(+), 58 deletions(-)
diff --git a/.github/workflows/backend.yml b/.github/workflows/backend.yml
index e63a5ac51e..519cf8533d 100644
--- a/.github/workflows/backend.yml
+++ b/.github/workflows/backend.yml
@@ -556,7 +556,7 @@ jobs:
- name: run seatunnel zeta integration test
if: needs.changes.outputs.api == 'true'
run: |
- ./mvnw -T 1 -B verify -DskipUT=true -DskipIT=false
-D"license.skipAddThirdParty"=true --no-snapshot-updates -pl
:connector-seatunnel-e2e-base -am -Pci
+ ./mvnw -T 1 -B verify -DskipUT=true -DskipIT=false
-D"license.skipAddThirdParty"=true --no-snapshot-updates -pl
:connector-seatunnel-e2e-base,:connector-console-seatunnel-e2e -am -Pci
env:
MAVEN_OPTS: -Xmx4096m
engine-k8s-it:
@@ -578,6 +578,8 @@ jobs:
env:
KUBECONFIG: /etc/rancher/k3s/k3s.yaml
- uses: actions/checkout@v2
+ - name: free disk space
+ run: tools/github/free_disk_space.sh
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v3
with:
diff --git
a/seatunnel-e2e/seatunnel-e2e-common/src/test/java/org/apache/seatunnel/e2e/common/container/seatunnel/SeaTunnelContainer.java
b/seatunnel-e2e/seatunnel-e2e-common/src/test/java/org/apache/seatunnel/e2e/common/container/seatunnel/SeaTunnelContainer.java
index aa4d62024f..ef83f83257 100644
---
a/seatunnel-e2e/seatunnel-e2e-common/src/test/java/org/apache/seatunnel/e2e/common/container/seatunnel/SeaTunnelContainer.java
+++
b/seatunnel-e2e/seatunnel-e2e-common/src/test/java/org/apache/seatunnel/e2e/common/container/seatunnel/SeaTunnelContainer.java
@@ -248,6 +248,8 @@ public class SeaTunnelContainer extends
AbstractTestContainer {
|| s.startsWith("Timer-")
|| s.contains("InterruptTimer")
|| s.contains("Java2D Disposer")
+ || s.contains("OkHttp ConnectionPool")
+ || s.startsWith("http-report-event-scheduler")
|| s.contains(
"org.apache.hadoop.fs.FileSystem$Statistics$StatisticsDataReferenceCleaner")
|| s.startsWith("Log4j2-TF-")
diff --git
a/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerFunctionTest.java
b/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerFunctionTest.java
deleted file mode 100644
index acb4237f07..0000000000
---
a/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerFunctionTest.java
+++ /dev/null
@@ -1,56 +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.seatunnel.engine.server.resourcemanager;
-
-import org.apache.seatunnel.engine.server.AbstractSeaTunnelServerTest;
-import
org.apache.seatunnel.engine.server.resourcemanager.resource.ResourceProfile;
-import org.apache.seatunnel.engine.server.resourcemanager.resource.SlotProfile;
-
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.Test;
-
-import com.hazelcast.cluster.Address;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-import java.util.concurrent.ExecutionException;
-import java.util.stream.Collectors;
-
-public class ResourceManagerFunctionTest
- extends AbstractSeaTunnelServerTest<ResourceManagerFunctionTest> {
-
- @Test
- public void testApplyResourceWithRandomResult()
- throws ExecutionException, InterruptedException {
- FakeResourceManager resourceManager = new
FakeResourceManager(nodeEngine);
-
- List<ResourceProfile> resourceProfiles = new ArrayList<>();
- resourceProfiles.add(new ResourceProfile());
- resourceProfiles.add(new ResourceProfile());
- resourceProfiles.add(new ResourceProfile());
- resourceProfiles.add(new ResourceProfile());
- resourceProfiles.add(new ResourceProfile());
- List<SlotProfile> slotProfiles = resourceManager.applyResources(1L,
resourceProfiles).get();
- Assertions.assertEquals(slotProfiles.size(), 5);
-
- Set<Address> addresses =
-
slotProfiles.stream().map(SlotProfile::getWorker).collect(Collectors.toSet());
- Assertions.assertTrue(addresses.size() > 1);
- }
-}
diff --git
a/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerTest.java
b/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerTest.java
index 6dc246d8f4..9244283889 100644
---
a/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerTest.java
+++
b/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerTest.java
@@ -27,11 +27,15 @@ import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
+import com.hazelcast.cluster.Address;
+
import java.util.ArrayList;
import java.util.List;
+import java.util.Set;
import java.util.concurrent.ExecutionException;
+import java.util.stream.Collectors;
-public class ResourceManagerTest extends AbstractSeaTunnelServerTest {
+public class ResourceManagerTest extends
AbstractSeaTunnelServerTest<ResourceManagerTest> {
private ResourceManager resourceManager;
@@ -77,4 +81,27 @@ public class ResourceManagerTest extends
AbstractSeaTunnelServerTest {
new ResourceProfile(CPU.of(0),
Memory.of(Long.MAX_VALUE)))
.get());
}
+
+ @Test
+ public void testApplyResourceWithRandomResult()
+ throws ExecutionException, InterruptedException {
+ FakeResourceManager resourceManager = new
FakeResourceManager(nodeEngine);
+
+ List<ResourceProfile> resourceProfiles = new ArrayList<>();
+ resourceProfiles.add(new ResourceProfile());
+ resourceProfiles.add(new ResourceProfile());
+ resourceProfiles.add(new ResourceProfile());
+ resourceProfiles.add(new ResourceProfile());
+ resourceProfiles.add(new ResourceProfile());
+ List<SlotProfile> slotProfiles = resourceManager.applyResources(1L,
resourceProfiles).get();
+ Assertions.assertEquals(slotProfiles.size(), 5);
+
+ boolean hasDifferentWorker = false;
+ for (int i = 0; i < 5; i++) {
+ Set<Address> addresses =
+
slotProfiles.stream().map(SlotProfile::getWorker).collect(Collectors.toSet());
+ hasDifferentWorker = addresses.size() > 1;
+ }
+ Assertions.assertTrue(hasDifferentWorker, "should have different
worker for each slot");
+ }
}