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 a6a2cde6c3 [GLUTEN-10550][FLINK] Add nexmark tests for q18-q21 (#10757)
a6a2cde6c3 is described below
commit a6a2cde6c3c582dad876341cc6ac430df03e55a5
Author: shuai.xu <[email protected]>
AuthorDate: Mon Sep 22 11:53:07 2025 +0800
[GLUTEN-10550][FLINK] Add nexmark tests for q18-q21 (#10757)
---
gluten-flink/ut/src/test/resources/nexmark/q18.sql | 17 +++++++++++++
gluten-flink/ut/src/test/resources/nexmark/q19.sql | 17 +++++++++++++
gluten-flink/ut/src/test/resources/nexmark/q20.sql | 29 ++++++++++++++++++++++
gluten-flink/ut/src/test/resources/nexmark/q21.sql | 23 +++++++++++++++++
4 files changed, 86 insertions(+)
diff --git a/gluten-flink/ut/src/test/resources/nexmark/q18.sql
b/gluten-flink/ut/src/test/resources/nexmark/q18.sql
new file mode 100755
index 0000000000..3cbcb9d3a1
--- /dev/null
+++ b/gluten-flink/ut/src/test/resources/nexmark/q18.sql
@@ -0,0 +1,17 @@
+CREATE TABLE nexmark_q18 (
+ auction BIGINT,
+ bidder BIGINT,
+ price BIGINT,
+ channel VARCHAR,
+ url VARCHAR,
+ `dateTime` TIMESTAMP(3),
+ extra VARCHAR
+) WITH (
+ 'connector' = 'blackhole'
+);
+
+INSERT INTO nexmark_q18
+SELECT auction, bidder, price, channel, url, `dateTime`, extra
+ FROM (SELECT *, ROW_NUMBER() OVER (PARTITION BY bidder, auction ORDER BY
`dateTime` DESC) AS rank_number
+ FROM bid)
+ WHERE rank_number <= 1;
diff --git a/gluten-flink/ut/src/test/resources/nexmark/q19.sql
b/gluten-flink/ut/src/test/resources/nexmark/q19.sql
new file mode 100755
index 0000000000..1cc91d9235
--- /dev/null
+++ b/gluten-flink/ut/src/test/resources/nexmark/q19.sql
@@ -0,0 +1,17 @@
+CREATE TABLE nexmark_q19 (
+ auction BIGINT,
+ bidder BIGINT,
+ price BIGINT,
+ channel VARCHAR,
+ url VARCHAR,
+ `dateTime` TIMESTAMP(3),
+ extra VARCHAR,
+ rank_number BIGINT
+) WITH (
+ 'connector' = 'blackhole'
+);
+
+INSERT INTO nexmark_q19
+SELECT * FROM
+(SELECT *, ROW_NUMBER() OVER (PARTITION BY auction ORDER BY price DESC) AS
rank_number FROM bid)
+WHERE rank_number <= 10;
diff --git a/gluten-flink/ut/src/test/resources/nexmark/q20.sql
b/gluten-flink/ut/src/test/resources/nexmark/q20.sql
new file mode 100755
index 0000000000..e910198a6b
--- /dev/null
+++ b/gluten-flink/ut/src/test/resources/nexmark/q20.sql
@@ -0,0 +1,29 @@
+CREATE TABLE nexmark_q20 (
+ auction BIGINT,
+ bidder BIGINT,
+ price BIGINT,
+ channel VARCHAR,
+ url VARCHAR,
+ bid_dateTime TIMESTAMP(3),
+ bid_extra VARCHAR,
+
+ itemName VARCHAR,
+ description VARCHAR,
+ initialBid BIGINT,
+ reserve BIGINT,
+ auction_dateTime TIMESTAMP(3),
+ expires TIMESTAMP(3),
+ seller BIGINT,
+ category BIGINT,
+ auction_extra VARCHAR
+) WITH (
+ 'connector' = 'blackhole'
+);
+
+INSERT INTO nexmark_q20
+SELECT
+ auction, bidder, price, channel, url, B.`dateTime`, B.extra,
+ itemName, description, initialBid, reserve, A.`dateTime`, expires, seller,
category, A.extra
+FROM
+ bid AS B INNER JOIN auction AS A on B.auction = A.id
+WHERE A.category = 10;
diff --git a/gluten-flink/ut/src/test/resources/nexmark/q21.sql
b/gluten-flink/ut/src/test/resources/nexmark/q21.sql
new file mode 100755
index 0000000000..5a03ef14a3
--- /dev/null
+++ b/gluten-flink/ut/src/test/resources/nexmark/q21.sql
@@ -0,0 +1,23 @@
+CREATE TABLE nexmark_q21 (
+ auction BIGINT,
+ bidder BIGINT,
+ price BIGINT,
+ channel VARCHAR,
+ channel_id VARCHAR
+) WITH (
+ 'connector' = 'blackhole'
+);
+
+INSERT INTO nexmark_q21
+SELECT
+ auction, bidder, price, channel,
+ CASE
+ WHEN lower(channel) = 'apple' THEN '0'
+ WHEN lower(channel) = 'google' THEN '1'
+ WHEN lower(channel) = 'facebook' THEN '2'
+ WHEN lower(channel) = 'baidu' THEN '3'
+ ELSE REGEXP_EXTRACT(url, '(&|^)channel_id=([^&]*)', 2)
+ END
+ AS channel_id FROM bid
+ where REGEXP_EXTRACT(url, '(&|^)channel_id=([^&]*)', 2) is not null or
+ lower(channel) in ('apple', 'google', 'facebook', 'baidu');
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]