This is an automated email from the ASF dual-hosted git repository.
lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git
The following commit(s) were added to refs/heads/master by this push:
new 97d1314ca [hotfix] Fix spark test typo and missing test (#2714)
97d1314ca is described below
commit 97d1314ca5d94a1b95184fd6b315e19742f3d56b
Author: Zouxxyy <[email protected]>
AuthorDate: Wed Jan 17 14:10:05 2024 +0800
[hotfix] Fix spark test typo and missing test (#2714)
---
.../{sql => procedure}/CompactProcedureTest.scala | 4 +---
.../paimon/spark/procedure}/ProcedureTest.scala | 20 ++------------------
.../paimon/spark/procedure/ProcedureTest.scala} | 6 ++----
.../paimon/spark/sql/PaimonOptimizationTest.scala} | 2 +-
...zationTest.scala => PaimonOptimizationTest.scala} | 2 +-
.../spark/procedure}/CompactProcedureTest.scala | 4 +---
.../paimon/spark/procedure/ProcedureTest.scala} | 6 ++----
.../paimon/spark/sql/PaimonOptimizationTest.scala} | 2 +-
.../org/apache/paimon/spark/PaimonHiveTestBase.scala | 10 +++++-----
.../apache/paimon/spark/PaimonSparkTestBase.scala | 7 ++++---
.../spark/procedure/CompactProcedureTestBase.scala | 2 +-
.../paimon/spark/procedure/ProcedureTestBase.scala} | 5 ++---
.../paimon/spark/sql/DDLWithHiveCatalogTest.scala | 4 ++--
.../paimon/spark/sql/DeleteFromTableTest.scala | 2 +-
...stBase.scala => PaimonOptimizationTestBase.scala} | 7 +++++--
15 files changed, 31 insertions(+), 52 deletions(-)
diff --git
a/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
b/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTest.scala
similarity index 89%
copy from
paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
copy to
paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTest.scala
index 51931ef7e..66f2d5475 100644
---
a/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
+++
b/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTest.scala
@@ -15,8 +15,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.paimon.spark.sql
-
-import org.apache.paimon.spark.procedure.CompactProcedureTestBase
+package org.apache.paimon.spark.procedure
class CompactProcedureTest extends CompactProcedureTestBase {}
diff --git
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/ProcedureTest.scala
b/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTest.scala
similarity index 58%
rename from
paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/ProcedureTest.scala
rename to
paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTest.scala
index b38638472..2d582c5ac 100644
---
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/ProcedureTest.scala
+++
b/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTest.scala
@@ -15,22 +15,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.paimon.spark.sql
+package org.apache.paimon.spark.procedure
-import org.apache.paimon.spark.PaimonSparkTestBase
-import org.apache.paimon.spark.analysis.NoSuchProcedureException
-
-import org.assertj.core.api.Assertions.assertThatThrownBy
-
-class ProcedureTest extends PaimonSparkTestBase {
-
- test(s"test call unknown procedure") {
- spark.sql(s"""
- |CREATE TABLE T (id INT, name STRING, dt STRING)
- |""".stripMargin)
-
- assertThatThrownBy(() => spark.sql("CALL unknown_procedure(table =>
'test.T')"))
- .isInstanceOf(classOf[NoSuchProcedureException])
- }
-
-}
+class ProcedureTest extends ProcedureTestBase {}
diff --git
a/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
b/paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTest.scala
similarity index 82%
copy from
paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
copy to
paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTest.scala
index 51931ef7e..2d582c5ac 100644
---
a/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
+++
b/paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTest.scala
@@ -15,8 +15,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.paimon.spark.sql
+package org.apache.paimon.spark.procedure
-import org.apache.paimon.spark.procedure.CompactProcedureTestBase
-
-class CompactProcedureTest extends CompactProcedureTestBase {}
+class ProcedureTest extends ProcedureTestBase {}
diff --git
a/paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTest.scala
b/paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTest.scala
similarity index 95%
rename from
paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTest.scala
rename to
paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTest.scala
index 8df68a3d7..26e8ba3c7 100644
---
a/paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTest.scala
+++
b/paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTest.scala
@@ -21,7 +21,7 @@ import org.apache.spark.sql.catalyst.dsl.expressions._
import org.apache.spark.sql.catalyst.expressions.{Attribute, GetStructField,
NamedExpression, ScalarSubquery}
import org.apache.spark.sql.catalyst.plans.logical.CTERelationRef
-class PaimonOptimzationTest extends PaimonOptimzationTestBase {
+class PaimonOptimizationTest extends PaimonOptimizationTestBase {
override def extractorExpression(
cteIndex: Int,
diff --git
a/paimon-spark/paimon-spark-3.4/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTest.scala
b/paimon-spark/paimon-spark-3.4/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTest.scala
similarity index 95%
rename from
paimon-spark/paimon-spark-3.4/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTest.scala
rename to
paimon-spark/paimon-spark-3.4/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTest.scala
index 5b7aac5cf..7d4415821 100644
---
a/paimon-spark/paimon-spark-3.4/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTest.scala
+++
b/paimon-spark/paimon-spark-3.4/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTest.scala
@@ -20,7 +20,7 @@ package org.apache.paimon.spark.sql
import org.apache.spark.sql.catalyst.expressions.{Attribute, GetStructField,
NamedExpression, ScalarSubquery}
import org.apache.spark.sql.catalyst.plans.logical.CTERelationRef
-class PaimonOptimzationTest extends PaimonOptimzationTestBase {
+class PaimonOptimizationTest extends PaimonOptimizationTestBase {
import org.apache.spark.sql.catalyst.dsl.expressions._
diff --git
a/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
b/paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTest.scala
similarity index 89%
copy from
paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
copy to
paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTest.scala
index 51931ef7e..66f2d5475 100644
---
a/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
+++
b/paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTest.scala
@@ -15,8 +15,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.paimon.spark.sql
-
-import org.apache.paimon.spark.procedure.CompactProcedureTestBase
+package org.apache.paimon.spark.procedure
class CompactProcedureTest extends CompactProcedureTestBase {}
diff --git
a/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
b/paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTest.scala
similarity index 82%
rename from
paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
rename to
paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTest.scala
index 51931ef7e..2d582c5ac 100644
---
a/paimon-spark/paimon-spark-3.2/src/test/scala/org/apache/paimon/spark/sql/CompactProcedureTest.scala
+++
b/paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTest.scala
@@ -15,8 +15,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.paimon.spark.sql
+package org.apache.paimon.spark.procedure
-import org.apache.paimon.spark.procedure.CompactProcedureTestBase
-
-class CompactProcedureTest extends CompactProcedureTestBase {}
+class ProcedureTest extends ProcedureTestBase {}
diff --git
a/paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTest.scala
b/paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTest.scala
similarity index 95%
rename from
paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTest.scala
rename to
paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTest.scala
index 8df68a3d7..26e8ba3c7 100644
---
a/paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTest.scala
+++
b/paimon-spark/paimon-spark-3.5/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTest.scala
@@ -21,7 +21,7 @@ import org.apache.spark.sql.catalyst.dsl.expressions._
import org.apache.spark.sql.catalyst.expressions.{Attribute, GetStructField,
NamedExpression, ScalarSubquery}
import org.apache.spark.sql.catalyst.plans.logical.CTERelationRef
-class PaimonOptimzationTest extends PaimonOptimzationTestBase {
+class PaimonOptimizationTest extends PaimonOptimizationTestBase {
override def extractorExpression(
cteIndex: Int,
diff --git
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/PaimonHiveTestBase.scala
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/PaimonHiveTestBase.scala
index 4c81d9508..5e2bee3b6 100644
---
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/PaimonHiveTestBase.scala
+++
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/PaimonHiveTestBase.scala
@@ -30,7 +30,7 @@ class PaimonHiveTestBase extends PaimonSparkTestBase {
protected lazy val testHiveMetastore: TestHiveMetastore = new
TestHiveMetastore
- protected val paimonHiveCatalog: String = "paimon_hive"
+ protected val paimonHiveCatalogName: String = "paimon_hive"
protected val hiveDbName: String = "test_hive"
@@ -43,9 +43,9 @@ class PaimonHiveTestBase extends PaimonSparkTestBase {
.set("spark.sql.warehouse.dir", tempHiveDBDir.getCanonicalPath)
.set("spark.sql.catalogImplementation", "hive")
.set("spark.sql.catalog.spark_catalog",
classOf[SparkGenericCatalog[_]].getName)
- .set(s"spark.sql.catalog.$paimonHiveCatalog",
classOf[SparkCatalog].getName)
- .set(s"spark.sql.catalog.$paimonHiveCatalog.metastore", "hive")
- .set(s"spark.sql.catalog.$paimonHiveCatalog.warehouse",
tempHiveDBDir.getCanonicalPath)
+ .set(s"spark.sql.catalog.$paimonHiveCatalogName",
classOf[SparkCatalog].getName)
+ .set(s"spark.sql.catalog.$paimonHiveCatalogName.metastore", "hive")
+ .set(s"spark.sql.catalog.$paimonHiveCatalogName.warehouse",
tempHiveDBDir.getCanonicalPath)
}
override protected def beforeAll(): Unit = {
@@ -53,7 +53,6 @@ class PaimonHiveTestBase extends PaimonSparkTestBase {
super.beforeAll()
spark.sql(s"USE spark_catalog")
spark.sql(s"CREATE DATABASE IF NOT EXISTS $hiveDbName")
- spark.sql(s"USE $hiveDbName")
}
override protected def afterAll(): Unit = {
@@ -70,5 +69,6 @@ class PaimonHiveTestBase extends PaimonSparkTestBase {
/** Default is spark_catalog */
override protected def beforeEach(): Unit = {
spark.sql(s"USE spark_catalog")
+ spark.sql(s"USE $hiveDbName")
}
}
diff --git
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/PaimonSparkTestBase.scala
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/PaimonSparkTestBase.scala
index d1618c542..2aa259ae7 100644
---
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/PaimonSparkTestBase.scala
+++
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/PaimonSparkTestBase.scala
@@ -58,12 +58,12 @@ class PaimonSparkTestBase extends QueryTest with
SharedSparkSession with WithTab
super.beforeAll()
spark.sql(s"USE paimon")
spark.sql(s"CREATE DATABASE IF NOT EXISTS paimon.$dbName0")
- spark.sql(s"USE paimon.$dbName0")
}
override protected def afterAll(): Unit = {
try {
spark.sql(s"USE paimon")
+ spark.sql(s"DROP TABLE IF EXISTS $dbName0.$tableName0")
spark.sql("USE default")
spark.sql(s"DROP DATABASE paimon.$dbName0 CASCADE")
} finally {
@@ -75,6 +75,7 @@ class PaimonSparkTestBase extends QueryTest with
SharedSparkSession with WithTab
override protected def beforeEach(): Unit = {
super.beforeAll()
spark.sql(s"USE paimon")
+ spark.sql(s"USE paimon.$dbName0")
spark.sql(s"DROP TABLE IF EXISTS $tableName0")
}
@@ -92,8 +93,8 @@ class PaimonSparkTestBase extends QueryTest with
SharedSparkSession with WithTab
val currentCatalog =
spark.sessionState.catalogManager.currentCatalog.name()
val options = Catalogs.catalogOptions(currentCatalog,
spark.sessionState.conf)
val catalogContext =
- CatalogContext.create(Options.fromMap(options),
spark.sessionState.newHadoopConf());
- CatalogFactory.createCatalog(catalogContext);
+ CatalogContext.create(Options.fromMap(options),
spark.sessionState.newHadoopConf())
+ CatalogFactory.createCatalog(catalogContext)
}
def loadTable(tableName: String): AbstractFileStoreTable = {
diff --git
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTestBase.scala
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTestBase.scala
index d5c1a49e0..2a0cc043d 100644
---
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTestBase.scala
+++
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/procedure/CompactProcedureTestBase.scala
@@ -28,7 +28,7 @@ import org.assertj.core.api.Assertions
import java.util
-/** Test sort compact procedure. See [[CompactProcedure]]. */
+/** Test compact procedure. See [[CompactProcedure]]. */
abstract class CompactProcedureTestBase extends PaimonSparkTestBase with
StreamTest {
import testImplicits._
diff --git
a/paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/sql/ProcedureTest.scala
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTestBase.scala
similarity index 92%
rename from
paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/sql/ProcedureTest.scala
rename to
paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTestBase.scala
index b38638472..9dd7124b9 100644
---
a/paimon-spark/paimon-spark-3.3/src/test/scala/org/apache/paimon/spark/sql/ProcedureTest.scala
+++
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/procedure/ProcedureTestBase.scala
@@ -15,14 +15,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.paimon.spark.sql
+package org.apache.paimon.spark.procedure
import org.apache.paimon.spark.PaimonSparkTestBase
import org.apache.paimon.spark.analysis.NoSuchProcedureException
import org.assertj.core.api.Assertions.assertThatThrownBy
-class ProcedureTest extends PaimonSparkTestBase {
+abstract class ProcedureTestBase extends PaimonSparkTestBase {
test(s"test call unknown procedure") {
spark.sql(s"""
@@ -32,5 +32,4 @@ class ProcedureTest extends PaimonSparkTestBase {
assertThatThrownBy(() => spark.sql("CALL unknown_procedure(table =>
'test.T')"))
.isInstanceOf(classOf[NoSuchProcedureException])
}
-
}
diff --git
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/DDLWithHiveCatalogTest.scala
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/DDLWithHiveCatalogTest.scala
index 8fd4ace24..948847c73 100644
---
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/DDLWithHiveCatalogTest.scala
+++
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/DDLWithHiveCatalogTest.scala
@@ -24,7 +24,7 @@ import org.junit.jupiter.api.Assertions
class DDLWithHiveCatalogTest extends PaimonHiveTestBase {
test("Paimon DDL with hive catalog: create database with location and
comment") {
- Seq("spark_catalog", paimonHiveCatalog).foreach {
+ Seq("spark_catalog", paimonHiveCatalogName).foreach {
catalogName =>
spark.sql(s"USE $catalogName")
withTempDir {
@@ -52,7 +52,7 @@ class DDLWithHiveCatalogTest extends PaimonHiveTestBase {
}
test("Paimon DDL with hive catalog: create database with props") {
- Seq("spark_catalog", paimonHiveCatalog).foreach {
+ Seq("spark_catalog", paimonHiveCatalogName).foreach {
catalogName =>
spark.sql(s"USE $catalogName")
withDatabase("paimon_db") {
diff --git
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/DeleteFromTableTest.scala
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/DeleteFromTableTest.scala
index fed222aea..3a76503f1 100644
---
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/DeleteFromTableTest.scala
+++
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/DeleteFromTableTest.scala
@@ -33,7 +33,7 @@ class DeleteFromTableTest extends PaimonSparkTestBase {
spark.sql("INSERT INTO T VALUES (1, 'a', '11'), (2, 'b', '22')")
assertThatThrownBy(() => spark.sql("DELETE FROM T WHERE name = 'a'"))
- .isInstanceOf(classOf[UnsupportedOperationException]);
+ .isInstanceOf(classOf[UnsupportedOperationException])
}
CoreOptions.MergeEngine.values().foreach {
diff --git
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTestBase.scala
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTestBase.scala
similarity index 93%
rename from
paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTestBase.scala
rename to
paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTestBase.scala
index 331214b87..e76c22017 100644
---
a/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimzationTestBase.scala
+++
b/paimon-spark/paimon-spark-common/src/test/scala/org/apache/paimon/spark/sql/PaimonOptimizationTestBase.scala
@@ -25,14 +25,17 @@ import
org.apache.spark.sql.catalyst.plans.logical.{CTERelationDef, LogicalPlan,
import org.apache.spark.sql.catalyst.rules.RuleExecutor
import org.apache.spark.sql.functions._
-abstract class PaimonOptimzationTestBase extends PaimonSparkTestBase {
+import scala.collection.immutable
+
+abstract class PaimonOptimizationTestBase extends PaimonSparkTestBase {
import org.apache.spark.sql.catalyst.dsl.expressions._
import org.apache.spark.sql.catalyst.dsl.plans._
import testImplicits._
private object Optimize extends RuleExecutor[LogicalPlan] {
- val batches = Batch("MergePaimonScalarSubqueries", Once,
MergePaimonScalarSubqueriers) :: Nil
+ val batches: immutable.Seq[Batch] =
+ Batch("MergePaimonScalarSubqueries", Once, MergePaimonScalarSubqueriers)
:: Nil
}
test("Paimon Optimization: merge scalar subqueries") {