Comments (4)
Some of our new discoveries:
- The first DDL after the instance is started will always fail
I suspect it's because of the order in which the instances are started.
In the patch of check_session_valid patch, introduced a session node in zookeeper. It is designed to mange the version of keeper connections. The path of the session node is taken from the UUID of the server.
https://github.com/ClickHouse/ClickHouse/blob/24.3/programs/server/Server.cpp#L896
When startup, create zk connection, including creating a zookeeper object and executing initSession. initSession is used to create a session node or modify the version of the session node.
However, uuid has not been loaded at this time.
Consequences of the problem:
- The session node is not created or does not have an updated version, which causes the DDL to fail after restarting.
from clickhouse.
This error is expected and is thrown as extra protection to prevent stale sessions from applying changes.
The exception should be self-explanatory and it works like following:
- on some of multi requests, internally append the
check
request on a znode containing the session id and the current latest (known) version of that znode - on response
- if the session that made the multi request is still most up to date session, check will pass with ZOK
- if the session is not the most up to date session, check will return ZBADVERSION
- as the ZBADVERSION for a check request on an internal znode does not provide any useful information to the user, we return a more descriptive information with "Session moved to another server"
- remove the check response from other responses
When you see such error it means the extra protection triggered and as a safety mechanism it decided to ignore the request.
Protection is against rare but scary problems related to correctness (e.g. a data loss could occur during inserts).
from clickhouse.
This could explain the issue
I'll verify and create a fix for it
thanks for catching it!
from clickhouse.
Fix: #64986
from clickhouse.
Related Issues (20)
- Test `00180_no_seek_avoiding_when_reading_from_cache` is flaky
- Subqueries of `[GLOBAL] IN` are not executed in parallel HOT 1
- When executing the ATTACH partition file operation in ClickHouse, the server's memory usage decreases significantly. HOT 1
- LDAP method `verification_cooldown` not effective
- Lightweight delete disable the trivial count optimization forever (don't work even after table optimize & reattach) HOT 3
- Test `03144_parallel_alter_add_drop_column_zookeeper_on_steroids` is flaky
- javaHash sharding algorithm implementation HOT 2
- Reading a Delta Table that has a partition value with a whitespace fails
- SHOW CREATE TABLE Output With Quotes Instead of Backticks
- Object storages with s3_create_new_file_on_insert = 1 doesn't work properly after server restart
- Add support for processing ddsketch data type as input HOT 7
- about javaHash
- Full Join Using has strange behaviour
- Crash Bug - Segmentation fault - Address: NULL pointer. Access: read. Address not mapped to object. HOT 1
- AzureBlobStorage fails with named collections
- S3Queue dropping rows
- Introduce a column in system.tables: `parametrized_view_parameters` HOT 2
- input_format_parquet_allow_missing_columns is documented inconsistently in multiple places...
- Incorrect discribe csv format
- [analyzer] Cannot parse DateTime: In scope SELECT _CAST('0', 'DateTime64(3)') AS `toDateTime64('1970-01-01 00:00:00', 3)` for distributed table with more than one host in select HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from clickhouse.