tabixio / tabix

Tabix.io UI
https://tabix.io
Other
2.14k stars 265 forks source link

Can`t connect to clickhouse with tabix after update to ch version 21.4.4.30 #224

Closed AlexanderDobrokhodov closed 2 years ago

AlexanderDobrokhodov commented 3 years ago

Can`t connect to direct ch with tabix after update to version 21.4.4.30 with error Code: 47, e.displayText() = DB::Exception: Missing columns: 'key' while processing query: 'SELECT name, key, attribute.names, attribute.types FROM system.dictionaries ARRAY JOIN attribute ORDER BY name ASC, attribute.names ASC', required columns: 'name' 'key', maybe you meant: ['name'], arrayJoin columns: 'attribute.names' 'attribute.types' (version 21.4.4.30 (official build)) system.dictionaries have been modified at version 21.4.4.30 https://github.com/ClickHouse/ClickHouse/commit/a53c90e509d0ab9596e73747f085cf0191284311?branch=a53c90e509d0ab9596e73747f085cf0191284311&diff=unified

tomjackone commented 3 years ago

same here. any alternatives?

tomjackone commented 3 years ago

line 174 of src/app/services/api.js: ..... this.fetchQuery("SELECT name,key,attribute.names,attribute.types from system.dictionaries ARRAY JOIN attribute ORDER BY name,attribute.names", null).then((dictionaries) => { ......

In the latest release note: Column keys in table system.dictionaries was replaced to columns key.names and key.types. Columns key.names, key.types, attribute.names, attribute.types from system.dictionaries table does not require dictionary to be loaded. #21884 (Maksim Kita).

Fahrenheit35 commented 3 years ago

Hello to everyone! Today I can fix this bug by updating the files: /build/scripts/app-65ac869b2e.js /build/scripts/app.js I replaced the "key" by "key.names" and "key.types" in line in both files: image After it, I build the new image and run it! and everything work!

AlexanderDobrokhodov commented 3 years ago

Hello @Fahrenheit35 Can you post a modified version for public access?

wq2455175746 commented 3 years ago

docker run mode /var/www/html/scripts/app-59ab3f78f6.js /var/www/html/scripts/app.js you can replace the "key" by "key.names" and "key.types" in line in both files: then docker run --rm -d --network=host --name ck_tabix -v /ssd1/services/tabix/app-59ab3f78f6.js:/var/www/html/scripts/app-59ab3f78f6.js -v /ssd1/services/tabix/app.js:/var/www/html/scripts/app.js spoonest/clickhouse-tabix-web-client

AlexanderDobrokhodov commented 3 years ago

I use tabix locally. After replace "key" by "key.names" and "key.types" in line in both files it still didn`t work. How i can rebuild it?

oxydaemon commented 3 years ago

If you use it locally and don't rebuild you can directly change the files in build/scripts (the two js app files) as per @Fahrenheit35 fix above

@AlexanderDobrokhodov make sure you're loading the right files and clear your browser cache/do a hard reload, it works for me

alex-kabin commented 3 years ago

you can use fixed version in my docker image: alexkabin/clickhouse-tabix-web-client:18.07.1a

isublimity commented 2 years ago

Tabix update to new engine. Thx you issue.