Skip to content

master_modify_multiple_shards() UDF does not work on different schemas #568

@onderkalaci

Description

@onderkalaci

It looks like the issue is related to 215 where deparse_shard_query() does not take schema of the table into the considiration.

Here are the steps to reproduce the issue:

CREATE SCHEMA tpch;

CREATE TABLE tpch.nation_hash (
    n_nationkey integer not null,
    n_name char(25) not null,
    n_regionkey integer not null,
    n_comment varchar(152));

SELECT master_create_distributed_table('tpch.nation_hash', 'n_nationkey', 'hash');
SELECT master_create_worker_shards('tpch.nation_hash', 4, 1);

\COPY tpch.nation_hash FROM STDIN WITH CSV
1,'name',1,'comment_1'
2,'name',2,'comment_2'
3,'name',3,'comment_3'
4,'name',4,'comment_4'
5,'name',5,'comment_5'

SET search_path TO public;
SELECT master_modify_multiple_shards('UPDATE tpch.nation_hash SET n_regionkey = n_regionkey + 1');
WARNING:  Bad result from localhost:9700
DETAIL:  Remote message: relation "nation_hash_102008" does not exist
ERROR:  could not send query to shard placement

-- worker log
LOG:  duration: 0.202 ms  statement: BEGIN
ERROR:  relation "nation_hash_102008" does not exist at character 8
STATEMENT:  UPDATE nation_hash_102008 SET n_regionkey = (n_regionkey + 1)

-- same error
SET search_path TO tpch;
SELECT master_modify_multiple_shards('UPDATE nation_hash SET n_regionkey = n_regionkey + 1');

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions