This is an automated email from the ASF dual-hosted git repository.
philo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-gluten.git
The following commit(s) were added to refs/heads/main by this push:
new d910586348 [VL] Gluten-it: Simplify CollectionConverter.scala (#10533)
d910586348 is described below
commit d91058634842f8d34de81c00c68e8f10e4c1c7b3
Author: Hongze Zhang <[email protected]>
AuthorDate: Tue Aug 26 16:54:00 2025 +0200
[VL] Gluten-it: Simplify CollectionConverter.scala (#10533)
---
.../org/apache/gluten/integration/BaseMixin.java | 4 +-
.../gluten/integration/command/Parameterized.java | 56 +++++++++++-----------
.../apache/gluten/integration/command/Queries.java | 4 +-
.../gluten/integration/command/QueriesMixin.java | 8 ++--
.../collections/JavaCollectionConverter.scala} | 21 +++-----
5 files changed, 42 insertions(+), 51 deletions(-)
diff --git
a/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/BaseMixin.java
b/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/BaseMixin.java
index 28553914a6..1a47016556 100644
---
a/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/BaseMixin.java
+++
b/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/BaseMixin.java
@@ -18,11 +18,11 @@ package org.apache.gluten.integration;
import org.apache.gluten.integration.action.Action;
import org.apache.gluten.integration.clickbench.ClickBenchSuite;
+import org.apache.gluten.integration.collections.JavaCollectionConverter;
import org.apache.gluten.integration.command.SparkRunModes;
import org.apache.gluten.integration.ds.TpcdsSuite;
import org.apache.gluten.integration.h.TpchSuite;
import org.apache.gluten.integration.metrics.MetricMapper;
-import org.apache.gluten.utils.CollectionConverter;
import org.apache.log4j.Level;
import org.apache.log4j.LogManager;
@@ -167,7 +167,7 @@ public class BaseMixin {
final SparkConf testConf = pickSparkConf(preset);
scala.collection.immutable.Map<String, String> extraSparkConfScala =
- CollectionConverter.toImmutable(
+ JavaCollectionConverter.asScalaMap(
mergeMapSafe(extraSparkConf, runModeEnumeration.extraSparkConf()));
final MetricMapper baselineMetricMapper = pickMetricMapper(baselinePreset);
diff --git
a/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/Parameterized.java
b/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/Parameterized.java
index 1d38ffcd3a..b02d147077 100644
---
a/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/Parameterized.java
+++
b/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/Parameterized.java
@@ -17,7 +17,7 @@
package org.apache.gluten.integration.command;
import org.apache.gluten.integration.BaseMixin;
-import org.apache.gluten.utils.CollectionConverter;
+import org.apache.gluten.integration.collections.JavaCollectionConverter;
import com.google.common.base.Preconditions;
import org.apache.commons.lang3.ArrayUtils;
@@ -31,7 +31,6 @@ import java.util.stream.Collectors;
import scala.Tuple2;
import scala.collection.JavaConverters;
-import scala.collection.immutable.Seq;
@CommandLine.Command(
name = "parameterized",
@@ -79,11 +78,11 @@ public class Parameterized implements Callable<Integer> {
public Integer call() throws Exception {
final Map<String, Map<String, List<Map.Entry<String, String>>>> parsed =
new LinkedHashMap<>();
- final Seq<
+ final scala.collection.immutable.Seq<
scala.collection.immutable.Set<
org.apache.gluten.integration.action.Parameterized.DimKv>>
excludedCombinations =
- CollectionConverter.toImmutable(
+ JavaCollectionConverter.asScalaSeq(
Arrays.stream(excludedDims)
.map(
d -> {
@@ -149,29 +148,30 @@ public class Parameterized implements Callable<Integer> {
}
// Convert Map<String, Map<String, List<Map.Entry<String, String>>>> to
List<Dim>
- Seq<org.apache.gluten.integration.action.Parameterized.Dim> parsedDims =
- CollectionConverter.toImmutable(
- parsed.entrySet().stream()
- .map(
- e ->
- new
org.apache.gluten.integration.action.Parameterized.Dim(
- e.getKey(),
- CollectionConverter.toImmutable(
- e.getValue().entrySet().stream()
- .map(
- e2 ->
- new
org.apache.gluten.integration.action.Parameterized
- .DimValue(
- e2.getKey(),
-
CollectionConverter.toImmutable(
- e2.getValue().stream()
- .map(
- e3 ->
- new Tuple2<>(
-
e3.getKey(), e3.getValue()))
-
.collect(Collectors.toList()))))
- .collect(Collectors.toList()))))
- .collect(Collectors.toList()));
+
scala.collection.immutable.Seq<org.apache.gluten.integration.action.Parameterized.Dim>
+ parsedDims =
+ JavaCollectionConverter.asScalaSeq(
+ parsed.entrySet().stream()
+ .map(
+ e ->
+ new
org.apache.gluten.integration.action.Parameterized.Dim(
+ e.getKey(),
+ JavaCollectionConverter.asScalaSeq(
+ e.getValue().entrySet().stream()
+ .map(
+ e2 ->
+ new
org.apache.gluten.integration.action
+ .Parameterized.DimValue(
+ e2.getKey(),
+
JavaCollectionConverter.asScalaSeq(
+ e2.getValue().stream()
+ .map(
+ e3 ->
+ new
Tuple2<>(
+
e3.getKey(), e3.getValue()))
+
.collect(Collectors.toList()))))
+ .collect(Collectors.toList()))))
+ .collect(Collectors.toList()));
org.apache.gluten.integration.action.Parameterized parameterized =
new org.apache.gluten.integration.action.Parameterized(
@@ -184,7 +184,7 @@ public class Parameterized implements Callable<Integer> {
queriesMixin.noSessionReuse(),
parsedDims,
excludedCombinations,
- CollectionConverter.toImmutable(Arrays.asList(metrics)));
+ JavaCollectionConverter.asScalaSeq(Arrays.asList(metrics)));
return mixin.runActions(ArrayUtils.addAll(dataGenMixin.makeActions(),
parameterized));
}
}
diff --git
a/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/Queries.java
b/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/Queries.java
index 7154d6bf3e..0949dbcb6a 100644
---
a/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/Queries.java
+++
b/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/Queries.java
@@ -17,8 +17,8 @@
package org.apache.gluten.integration.command;
import org.apache.gluten.integration.BaseMixin;
+import org.apache.gluten.integration.collections.JavaCollectionConverter;
import org.apache.gluten.integration.metrics.PlanMetric;
-import org.apache.gluten.utils.CollectionConverter;
import org.apache.commons.lang3.ArrayUtils;
import picocli.CommandLine;
@@ -69,7 +69,7 @@ public class Queries implements Callable<Integer> {
randomKillTasks,
queriesMixin.noSessionReuse(),
queriesMixin.suppressFailureMessages(),
- CollectionConverter.toImmutable(metricsReporters));
+ JavaCollectionConverter.asScalaSeq(metricsReporters));
return mixin.runActions(ArrayUtils.addAll(dataGenMixin.makeActions(),
queries));
}
}
diff --git
a/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/QueriesMixin.java
b/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/QueriesMixin.java
index 714e01b2ea..567aec4c89 100644
---
a/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/QueriesMixin.java
+++
b/tools/gluten-it/common/src/main/java/org/apache/gluten/integration/command/QueriesMixin.java
@@ -18,7 +18,7 @@ package org.apache.gluten.integration.command;
import org.apache.gluten.integration.Suite;
import org.apache.gluten.integration.action.Actions;
-import org.apache.gluten.utils.CollectionConverter;
+import org.apache.gluten.integration.collections.JavaCollectionConverter;
import com.google.common.base.Preconditions;
import picocli.CommandLine;
@@ -26,8 +26,6 @@ import picocli.CommandLine;
import java.util.*;
import java.util.stream.Collectors;
-import scala.collection.immutable.Seq;
-
public class QueriesMixin {
@CommandLine.Option(
names = {"--queries"},
@@ -93,12 +91,12 @@ public class QueriesMixin {
public Actions.QuerySelector queries() {
return new Actions.QuerySelector() {
@Override
- public Seq<String> select(Suite suite) {
+ public scala.collection.immutable.Seq<String> select(Suite suite) {
final List<String> all = select0(suite);
final Division div = Division.parse(shard);
final List<String> out = div(all, div);
System.out.println("About to run queries: " + out + "... ");
- return CollectionConverter.toImmutable(out);
+ return JavaCollectionConverter.asScalaSeq(out);
}
private List<String> div(List<String> from, Division div) {
diff --git
a/tools/gluten-it/common/src/main/scala/org/apache/gluten/utils/CollectionConverter.scala
b/tools/gluten-it/common/src/main/scala/org/apache/gluten/integration/collections/JavaCollectionConverter.scala
similarity index 59%
rename from
tools/gluten-it/common/src/main/scala/org/apache/gluten/utils/CollectionConverter.scala
rename to
tools/gluten-it/common/src/main/scala/org/apache/gluten/integration/collections/JavaCollectionConverter.scala
index 2ed1516369..f80817d50f 100644
---
a/tools/gluten-it/common/src/main/scala/org/apache/gluten/utils/CollectionConverter.scala
+++
b/tools/gluten-it/common/src/main/scala/org/apache/gluten/integration/collections/JavaCollectionConverter.scala
@@ -14,24 +14,17 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.gluten.utils
+package org.apache.gluten.integration.collections
-import scala.collection.immutable.{Map => IMap}
-import scala.collection.immutable.{Seq => ISeq}
+import scala.collection.JavaConverters._
+import scala.collection.immutable
-object CollectionConverter {
- def toImmutable[K, V](jMap: java.util.Map[K, V]): IMap[K, V] = {
- import scala.jdk.CollectionConverters._
+object JavaCollectionConverter {
+ def asScalaMap[K, V](jMap: java.util.Map[K, V]): immutable.Map[K, V] = {
jMap.asScala.toMap
}
- def toImmutable[T](jList: java.util.List[T]): ISeq[T] = {
- if (scala.util.Properties.versionNumberString.startsWith("2.12")) {
- import scala.collection.JavaConverters._
- jList.asScala.toList
- } else {
- import scala.jdk.CollectionConverters._
- jList.asScala.toList
- }
+ def asScalaSeq[T](jList: java.util.List[T]): immutable.Seq[T] = {
+ jList.asScala.toList
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]