Skip to content

Commit af9a579

Browse files
committed
fix table reference
1 parent 4dfb06e commit af9a579

File tree

5 files changed

+24
-15
lines changed

5 files changed

+24
-15
lines changed

integration_tests/Makefile

+3-3
Original file line numberDiff line numberDiff line change
@@ -37,21 +37,21 @@ build-ceresdb:
3737
build-test:
3838
cargo build
3939

40-
build: build-ceresdb build-test build-meta
40+
build: build-ceresdb build-test
4141

4242
kill-old-process:
4343
killall ceresdb-server | true
4444
killall ceresmeta | true
4545

4646
prepare: clean build kill-old-process
4747

48-
run: prepare
48+
run: prepare build-meta
4949
$(CERESDB_TEST_BINARY)
5050

5151
run-local: prepare
5252
CERESDB_ENV_FILTER=local $(CERESDB_TEST_BINARY)
5353

54-
run-cluster: prepare
54+
run-cluster: prepare build-meta
5555
CERESDB_ENV_FILTER=cluster $(CERESDB_TEST_BINARY)
5656

5757
run-java:

integration_tests/build_meta.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/usr/bin/env bash
22

3-
set -exo
3+
set -e
44

55
SRC=/tmp/ceresmeta-src
66
TARGET=$(pwd)/ceresmeta

integration_tests/prom/remote-query.py

+18-2
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ def now():
1414
return int(time.time()) * 1000
1515

1616
table = 'prom_remote_query_test' + str(now())
17+
table2 = 'PROM_REMOTE_QUERY_TEST' + str(now())
1718

1819
def execute_sql(sql):
1920
r = requests.post('{}/sql'.format(api_root), json={'query': sql}, headers=headers)
@@ -25,7 +26,8 @@ def execute_pql(pql):
2526
return r.json()
2627

2728
def prepare_data(ts):
28-
execute_sql("""
29+
for t in [table, table2]:
30+
execute_sql("""
2931
CREATE TABLE if not exists `{}` (
3032
`t` timestamp NOT NULL,
3133
`tag1` string TAG,
@@ -34,7 +36,7 @@ def prepare_data(ts):
3436
`VALUE2` double NOT NULL,
3537
timestamp KEY (t)
3638
);
37-
""".format(table))
39+
""".format(table))
3840

3941
execute_sql("""
4042
insert into {}(t, tag1, tag2, value, VALUE2)
@@ -44,6 +46,14 @@ def prepare_data(ts):
4446
;
4547
""".format(table, ts-5000, ts))
4648

49+
execute_sql("""
50+
insert into {}(t, tag1, tag2, value, VALUE2)
51+
values
52+
({}, "v1", "v2", 10, 20),
53+
({}, "v1", "v2", 110, 220)
54+
;
55+
""".format(table2, ts-5000, ts))
56+
4757

4858
def remote_query(ts):
4959
ts = ts/1000 # prom return seconds
@@ -64,10 +74,16 @@ def remote_query(ts):
6474
result = r['data']['result']
6575
assert result == []
6676

77+
# uppercase field
6778
r = execute_pql(table + '{tag1="v1",__ceresdb_field__="VALUE2"}[5m]')
6879
result = r['data']['result']
6980
assert result == [{'metric': {'__name__': table, 'tag1': 'v1', 'tag2': 'v2'}, 'values': [[ts-5, '2'], [ts, '22']]}]
7081

82+
# uppercase table
83+
r = execute_pql(table2 + '{tag1="v1"}[5m]')
84+
result = r['data']['result']
85+
assert result == [{'metric': {'__name__': table2, 'tag1': 'v1', 'tag2': 'v2'}, 'values': [[ts-5, '1'], [ts, '11']]}]
86+
7187
def main():
7288
ts = now()
7389
prepare_data(ts)

integration_tests/prom/run-tests.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/usr/bin/env bash
22

33
VERSION=prometheus-2.43.0.linux-amd64
4-
wget "https://github.com/prometheus/prometheus/releases/download/v2.43.0/${VERSION}.tar.gz"
4+
wget -q "https://github.com/prometheus/prometheus/releases/download/v2.43.0/${VERSION}.tar.gz"
55

66
tar xvf prometheus*.tar.gz
77
nohup ./${VERSION}/prometheus --config.file ./prometheus.yml &

query_frontend/src/promql/remote.rs

+1-8
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,8 @@ pub fn remote_query_to_plan<P: MetaProvider>(
4646
) -> Result<RemoteQueryPlan> {
4747
let (metric, field, mut filters) = normalize_matchers(query.matchers)?;
4848

49-
// get table schema
50-
let table_ref = meta_provider
51-
.table(TableReference::parse_str(&metric))
52-
.context(MetaProviderError {
53-
msg: format!("Failed to find table, name:{metric}"),
54-
})?
55-
.context(TableNotFound { name: &metric })?;
5649
let table_provider = meta_provider
57-
.get_table_provider(table_ref.name().into())
50+
.get_table_provider(TableReference::bare(&metric))
5851
.context(TableProviderNotFound { name: &metric })?;
5952
let schema = Schema::try_from(table_provider.schema()).context(BuildTableSchema)?;
6053
let timestamp_col_name = schema.timestamp_name();

0 commit comments

Comments
 (0)