Skip to content

Fake in-memory ZooKeeper server inside ClickHouse#16877

Merged
alesapin merged 76 commits intomasterfrom
complete_zk_api
Dec 10, 2020
Merged

Fake in-memory ZooKeeper server inside ClickHouse#16877
alesapin merged 76 commits intomasterfrom
complete_zk_api

Conversation

@alesapin
Copy link
Copy Markdown
Member

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en

Changelog category (leave one):

  • Build/Testing/Packaging Improvement

Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Now ClickHouse can pretend to be a fake ZooKeeper. Currently, storage implementation is just stored in-memory hash-table, and server partially support ZooKeeper protocol.

@robot-clickhouse robot-clickhouse added the pr-build Pull request with build/testing/packaging improvement label Nov 11, 2020
@alesapin alesapin changed the title Complete zk api Fake im-memory ZooKeeper server inside ClickHouse Nov 11, 2020
@alesapin
Copy link
Copy Markdown
Member Author

alesapin commented Nov 11, 2020

TODO:

@alesapin alesapin marked this pull request as draft November 11, 2020 14:12
@alexey-milovidov alexey-milovidov changed the title Fake im-memory ZooKeeper server inside ClickHouse Fake in-memory ZooKeeper server inside ClickHouse Nov 11, 2020
@alesapin
Copy link
Copy Markdown
Member Author

Something wrong with 01509_check_many_parallel_quorum_inserts and sometimes it reproduces locally. Possibly incorrect watch processing.

@alesapin
Copy link
Copy Markdown
Member Author

01317_no_password_in_command_line -- known flaky test.
Ok, only kazoo tests left. I think we can make TestKeeperStorage as TestKeeper backend later.

@alesapin
Copy link
Copy Markdown
Member Author

Thread sanitizer fixed in #17498

@alesapin
Copy link
Copy Markdown
Member Author

alesapin commented Dec 8, 2020

Make TestKeeperStorage a backend for TestKeeper (remove a bunch of duplicated code)
Now it's not quite easy, Not going to do it in this PR.

@alesapin alesapin marked this pull request as ready for review December 9, 2020 09:02
@alesapin
Copy link
Copy Markdown
Member Author

Integration test failure is not related to changes. Tried tests multiple times and every time everything is OK.
I'm going to merge this PR without additional refactoring and comments/documentation. I think this code will change significantly after adding the RAFT implementation.

@alesapin
Copy link
Copy Markdown
Member Author

Related #15090

@bj1116
Copy link
Copy Markdown

bj1116 commented Jun 24, 2021

How to config without zookeeper ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-build Pull request with build/testing/packaging improvement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants