Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

problem starting a test with multiple keyspaces #92

Open
mcrauwel opened this issue Feb 13, 2025 · 0 comments
Open

problem starting a test with multiple keyspaces #92

mcrauwel opened this issue Feb 13, 2025 · 0 comments

Comments

@mcrauwel
Copy link

I've been trying to create a testcase involving a reported broken query running over 3 keyspaces. I've been unable to get the testcase to start.

I've crafted the following vschema (vtexplain style)

{
  "ks1": {
    "tables": {
      "table1": {}
    }
  },
  "ks2": {
    "tables": {
      "table2": {}
    }
  },
  "ks3": {
    "tables": {
      "table3": {}
    }
  }
}

and this test case

CREATE TABLE ks1.table1 (
  id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
  table2_id BIGINT UNSIGNED NOT NULL,
  table3_id BIGINT UNSIGNED NOT NULL,
  data JSON
);
CREATE TABLE ks2.table2 (
  id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
  data JSON
);
CREATE TABLE ks3.table3 (
  id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
  data JSON
);

INSERT INTO ks2.table2 VALUES
(1, "{}"),
(2, "{}"),
(3, "{}"),
(4, "{}"),
(5, "{}"),
(6, "{}");

INSERT INTO ks3.table3 VALUES
(1, "{}"),
(2, "{}"),
(3, "{}"),
(4, "{}"),
(5, "{}"),
(6, "{}");

INSERT INTO ks1.table1 VALUES
(1, 1, 1, "{}"),
(2, 2, 1, "{}"),
(3, 3, 1, "{}"),
(4, 4, 1, "{}"),
(5, 5, 1, "{}"),
(6, 6, 1, "{}"),
(1, 1, 2, "{}"),
(2, 2, 2, "{}"),
(3, 3, 2, "{}"),
(4, 4, 2, "{}"),
(5, 5, 2, "{}"),
(6, 6, 2, "{}"),
(1, 1, 3, "{}"),
(2, 2, 3, "{}"),
(3, 3, 3, "{}"),
(4, 4, 3, "{}"),
(5, 5, 3, "{}"),
(6, 6, 3, "{}"),
(1, 1, 4, "{}"),
(2, 2, 4, "{}"),
(3, 3, 4, "{}"),
(4, 4, 4, "{}"),
(5, 5, 4, "{}"),
(6, 6, 4, "{}"),
(1, 1, 5, "{}"),
(2, 2, 5, "{}"),
(3, 3, 5, "{}"),
(4, 4, 5, "{}"),
(5, 5, 5, "{}"),
(6, 6, 5, "{}"),
(1, 1, 6, "{}"),
(2, 2, 6, "{}"),
(3, 3, 6, "{}"),
(4, 4, 6, "{}"),
(5, 5, 6, "{}"),
(6, 6, 6, "{}");

SELECT a.id, b.id, c.id
FROM
    table1 a
    INNER JOIN table2 b ON a.table2_id = b.id
    INNER JOIN table3 c ON a.table3_id = c.id
WHERE
    a.id = 1;

then I run the vt test tool like this:

$ ./vt test --vtexplain-vschema t/gsto-17582.vschema.json t/gsto-17582.t.txt
starting unsharded keyspace: 'ks1'
E0213 10:09:02.658041   83140 vtorc_process.go:105] configuration - {
	"instance-poll-time": "10h"
}
starting unsharded keyspace: 'ks2'
E0213 10:09:07.567058   83140 vtorc_process.go:105] configuration - {
	"instance-poll-time": "10h"
}
starting unsharded keyspace: 'ks3'
E0213 10:09:12.543644   83140 vtorc_process.go:105] configuration - {
	"instance-poll-time": "10h"
}
Error: mkdir /Users/mcrauwel/Workspace/Vitess/vitess/vtdataroot/vtroot_6701/vt_0000000000: file exists

this is the resulting directory layout in my ${VTDATAROOT} directory.

$ ls -hl /Users/mcrauwel/Workspace/Vitess/vitess/vtdataroot/
total 0
drwx------ 9 mcrauwel 288 Feb 13 10:09 vtroot_6701
$ ls -hl /Users/mcrauwel/Workspace/Vitess/vitess/vtdataroot/vtroot_6701
total 0
drwx------  2 mcrauwel   64 Feb 13 10:08 backups
drwx------ 60 mcrauwel 1.9K Feb 13 10:09 tmp_6703
drwx------  4 mcrauwel  128 Feb 13 10:08 topo_6702
drwx------ 15 mcrauwel  480 Feb 13 10:09 vt_0000000000
drwxr-xr-x 10 mcrauwel  320 Feb 13 10:09 vt_0000005236
drwxr-xr-x 10 mcrauwel  320 Feb 13 10:09 vt_0000005237
drwxr-xr-x 10 mcrauwel  320 Feb 13 10:09 vt_0000005238
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant