Skip to content

Commit 1c4a25a

Browse files
authored
fix: should not modify client query_id. (#18322)
since the id may be generated be client and used for route.
1 parent e1707ef commit 1c4a25a

File tree

11 files changed

+16
-21
lines changed

11 files changed

+16
-21
lines changed

src/query/service/src/servers/flight/v1/actions/init_query_env.rs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,7 @@ use crate::servers::flight::v1::packets::QueryEnv;
2828

2929
pub static INIT_QUERY_ENV: &str = "/actions/init_query_env";
3030

31-
pub async fn init_query_env(mut env: QueryEnv) -> Result<()> {
32-
// Update query id to make sure they are compatible.
33-
env.query_id = env.query_id.replace('-', "");
34-
31+
pub async fn init_query_env(env: QueryEnv) -> Result<()> {
3532
let mut tracking_workload_group = None;
3633
let mut parent_mem_stat = ParentMemStat::StaticRef(&GLOBAL_MEM_STAT);
3734

src/query/service/src/servers/flight/v1/actions/start_prepared_query.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ use crate::servers::flight::v1::exchange::DataExchangeManager;
2121
pub static START_PREPARED_QUERY: &str = "/actions/start_prepared_query";
2222

2323
pub async fn start_prepared_query(id: String) -> Result<()> {
24-
let id = id.replace('-', "");
2524
let ctx = DataExchangeManager::instance().get_query_ctx(&id)?;
2625

2726
let mut tracking_payload = ThreadTracker::new_tracking_payload();

src/query/service/src/servers/http/middleware/session.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -683,7 +683,7 @@ impl<E: Endpoint> Endpoint for HTTPSessionEndpoint<E> {
683683
let query_id = req
684684
.headers()
685685
.get(HEADER_QUERY_ID)
686-
.map(|id| id.to_str().unwrap().replace('-', ""))
686+
.map(|id| id.to_str().unwrap().to_string())
687687
.unwrap_or_else(|| Uuid::now_v7().simple().to_string());
688688

689689
let mut login_history = LoginHistory::new();

src/query/service/src/sessions/query_ctx.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -851,7 +851,7 @@ impl TableContext for QueryContext {
851851
}
852852

853853
fn get_id(&self) -> String {
854-
self.shared.init_query_id.as_ref().read().replace('-', "")
854+
self.shared.init_query_id.as_ref().read().clone()
855855
}
856856

857857
fn get_current_catalog(&self) -> String {

src/query/service/tests/it/servers/http/http_query_handlers.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -460,7 +460,6 @@ async fn test_client_query_id() -> Result<()> {
460460
Ok(())
461461
}
462462

463-
// `-` in query id will be trimmed.
464463
#[tokio::test(flavor = "current_thread")]
465464
async fn test_client_compatible_query_id() -> Result<()> {
466465
let _fixture = TestFixture::setup().await?;
@@ -473,7 +472,7 @@ async fn test_client_compatible_query_id() -> Result<()> {
473472
let (status, result) =
474473
post_sql_to_endpoint_new_session(&ep, sql, wait_time_secs, headers).await?;
475474
assert_eq!(status, StatusCode::OK);
476-
assert_eq!(result.id, "testqueryid");
475+
assert_eq!(result.id, "test-query-id");
477476

478477
Ok(())
479478
}

tests/sqllogictests/suites/stage/ordered_unload.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ SELECT COUNT(*) FROM (SELECT $1 AS a, rank() OVER (ORDER BY metadata$filename, m
2525

2626
# data_af2ab6dc872546e5a6013dad9c512769_0000_00000770.csv
2727
query
28-
SELECT * from list_stage(location => '@s1') where substr(name, 39, 4) != '0000'
28+
SELECT * from list_stage(location => '@s1') where substr(replace(name, '-', ''), 39, 4) != '0000'
2929
----
3030

3131
statement ok

tests/suites/0_stateless/18_rbac/18_0007_privilege_access.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ CURDIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
55

66
export TEST_USER_PASSWORD="password"
77
export TEST_USER_CONNECT="bendsql --user=test-user --password=password --host=${QUERY_MYSQL_HANDLER_HOST} --port ${QUERY_HTTP_HANDLER_PORT}"
8-
export RM_UUID="sed -E ""s/[a-z0-9]{32}/UUID/g"""
8+
export RM_UUID="sed -E ""s/[-a-z0-9]{32,36}/UUID/g"""
99

1010
stmt "drop database if exists db01;"
1111
stmt "create database db01;"

tests/suites/1_stateful/00_stage/00_0012_stage_priv.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export TEST_USER_NAME="u1"
77
export TEST_USER_PASSWORD="password"
88
export TEST_USER_CONNECT="bendsql --user=u1 --password=password --host=${QUERY_MYSQL_HANDLER_HOST} --port ${QUERY_HTTP_HANDLER_PORT}"
99
export USER_B_CONNECT="bendsql --user=b --password=password --host=${QUERY_MYSQL_HANDLER_HOST} --port ${QUERY_HTTP_HANDLER_PORT}"
10-
export RM_UUID="sed -E ""s/[a-z0-9]{32}/UUID/g"""
10+
export RM_UUID="sed -E ""s/[-a-z0-9]{32,36}/UUID/g"""
1111

1212
echo "drop table if exists test_table;" | $BENDSQL_CLIENT_CONNECT
1313
echo "drop user if exists u1;" | $BENDSQL_CLIENT_CONNECT

tests/suites/1_stateful/00_stage/00_0015_unload_output.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
CURDIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
66
. "$CURDIR"/../../../shell_env.sh
77

8-
export RM_UUID="sed -E ""s/[a-z0-9]{32}/UUID/g"""
8+
export RM_UUID="sed -E ""s/[-a-z0-9]{32,36}/UUID/g"""
99

1010
stmt "drop table if exists t1"
1111
stmt "create table t1 (a int)"

tests/suites/1_stateful/01_streaming_load/01_0006_streaming_load_parquet.result

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
q1.parquet 624 1
66
>>>> streaming load: q1.parquet error :
77
+ curl -sS -H x-databend-query-id:load-q1 -H 'sql:insert into streaming_load_parquet(c2,c3) from @_databend_load file_format = (type='\''parquet'\'', missing_field_as=error, null_if=())' -F upload=@/tmp/streaming_load_parquet/q1.parquet -u root: -XPUT http://localhost:8000/v1/streaming_load
8-
{"id":"loadq1","stats":{"rows":1,"bytes":25}}
8+
{"id":"load-q1","stats":{"rows":1,"bytes":25}}
99
<<<<
1010
>>>> select * from streaming_load_parquet;
1111
ok 1 2021-01-01
@@ -26,7 +26,7 @@ q2.parquet 426 1
2626
q3.parquet 426 1
2727
>>>> streaming load: q3.parquet field_default :
2828
+ curl -sS -H x-databend-query-id:load-q3 -H 'sql:insert into streaming_load_parquet(c2,c3) from @_databend_load file_format = (type='\''parquet'\'', missing_field_as=field_default, null_if=())' -F upload=@/tmp/streaming_load_parquet/q3.parquet -u root: -XPUT http://localhost:8000/v1/streaming_load
29-
{"id":"loadq3","stats":{"rows":1,"bytes":21}}
29+
{"id":"load-q3","stats":{"rows":1,"bytes":21}}
3030
<<<<
3131
>>>> select * from streaming_load_parquet;
3232
ok NULL 2021-01-01
@@ -37,7 +37,7 @@ ok NULL 2021-01-01
3737
q4.parquet 643 1
3838
>>>> streaming load: q4.parquet error :
3939
+ curl -sS -H x-databend-query-id:load-q4 -H 'sql:insert into streaming_load_parquet(c1,c3) from @_databend_load file_format = (type='\''parquet'\'', missing_field_as=error, null_if=())' -F upload=@/tmp/streaming_load_parquet/q4.parquet -u root: -XPUT http://localhost:8000/v1/streaming_load
40-
{"id":"loadq4","stats":{"rows":1,"bytes":26}}
40+
{"id":"load-q4","stats":{"rows":1,"bytes":26}}
4141
<<<<
4242
>>>> select * from streaming_load_parquet;
4343
my_null NULL 2021-01-01
@@ -48,7 +48,7 @@ my_null NULL 2021-01-01
4848
q5.parquet 643 1
4949
>>>> streaming load: q5.parquet error 'my_null':
5050
+ curl -sS -H x-databend-query-id:load-q5 -H 'sql:insert into streaming_load_parquet(c1,c3) from @_databend_load file_format = (type='\''parquet'\'', missing_field_as=error, null_if=('\''my_null'\''))' -F upload=@/tmp/streaming_load_parquet/q5.parquet -u root: -XPUT http://localhost:8000/v1/streaming_load
51-
{"id":"loadq5","stats":{"rows":1,"bytes":7}}
51+
{"id":"load-q5","stats":{"rows":1,"bytes":7}}
5252
<<<<
5353
>>>> select * from streaming_load_parquet;
5454
NULL NULL 2021-01-01

0 commit comments

Comments
 (0)