【问题标题】:ClickHouse Unknown Codec Family Error on Version Update版本更新时出现 ClickHouse 未知编解码器系列错误
【发布时间】:2019-09-27 14:24:56
【问题描述】:

我一直在使用 ReplicatedMergeTree 创建一个包含表的三节点 ClickHouse 集群。我最近将它的一个节点从版本 18.14.2 更新为 19.3.7。但是,升级后,由于数据没有同步,我无法与升级后的节点建立连接。

ClickHouse 错误日志如下。

(StorageReplicatedMergeTree): DB::StorageReplicatedMergeTree::queueTask()::<lambda(DB::StorageReplicatedMergeTree::LogEntryPtr&)>: Code: 432, e.displayText() = DB::Exception: Unknown codec family code : 130, Stack trace:

0. clickhouse-server(StackTrace::StackTrace()+0x16) [0x5d9fdf6]
1. clickhouse-server(DB::Exception::Exception(std::string const&, int)+0x1f) [0x2ceb79f]
2. clickhouse-server(DB::CompressionCodecFactory::get(unsigned char) const+0x185) [0x5af35b5]
3. clickhouse-server(DB::CompressedReadBufferBase::readCompressedData(unsigned long&, unsigned long&)+0x911) [0x5af0e31]
4. clickhouse-server(DB::CompressedReadBuffer::nextImpl()+0x26) [0x5aef7b6]
5. clickhouse-server(DB::MergeTreeDataPartChecksums::read_v3(DB::ReadBuffer&)+0x834) [0x5738604]
6. clickhouse-server(DB::MergeTreeDataPartChecksums::read_v4(DB::ReadBuffer&)+0xb2) [0x5738fd2]
7. clickhouse-server(DB::MergeTreeDataPartChecksums::read(DB::ReadBuffer&, unsigned long)+0x28) [0x5739f68]
8. clickhouse-server(DB::MergeTreeDataPartChecksums::read(DB::ReadBuffer&)+0x94) [0x573a114]
9. clickhouse-server(DB::MergeTreeDataPart::loadChecksums(bool)+0x119) [0x572f6b9]
10. clickhouse-server(DB::MergeTreeDataPart::loadColumnsChecksumsIndexes(bool, bool)+0x39) [0x57338a9]
11. clickhouse-server(DB::DataPartsExchange::Fetcher::fetchPart(std::string const&, std::string const&, std::string const&, int, DB::ConnectionTimeouts const&, std::string const&, std::string const&, std::string const&, bool, std::string const&)+0xdde) [0x56d955e]
12. clickhouse-server() [0x567a556]
13. clickhouse-server(DB::StorageReplicatedMergeTree::fetchPart(std::string const&, std::string const&, bool, unsigned long)+0x7a9) [0x569c379]
14. clickhouse-server(DB::StorageReplicatedMergeTree::executeFetch(DB::ReplicatedMergeTreeLogEntry&)+0x999) [0x569ebf9]
15. clickhouse-server(DB::StorageReplicatedMergeTree::executeLogEntry(DB::ReplicatedMergeTreeLogEntry&)+0x9f) [0x56a3c9f]
16. clickhouse-server() [0x56a4610]
17. clickhouse-server(DB::ReplicatedMergeTreeQueue::processEntry(std::function<std::shared_ptr<zkutil::ZooKeeper> ()>, std::shared_ptr<DB::ReplicatedMergeTreeLogEntry>&, std::function<bool (std::shared_ptr<DB::ReplicatedMergeTreeLogEntry>&)>)+0x3e) [0x57aadfe]
18. clickhouse-server(DB::StorageReplicatedMergeTree::queueTask()+0x192) [0x5678b62]
19. clickhouse-server(DB::BackgroundProcessingPool::threadFunction()+0x396) [0x56d3b86]
20. clickhouse-server() [0x56d4484]
21. clickhouse-server(ThreadPoolImpl<std::thread>::worker(std::_List_iterator<std::thread>)+0x199) [0x5da8aa9]
22. clickhouse-server() [0x65ce86f]
23. /lib64/libpthread.so.0(+0x7e25) [0x7fb7b43ffe25]
24. /lib64/libc.so.6(clone+0x6d) [0x7fb7b3c2334d]

编辑 1:

升级到 19.4.3.11 修复了这个错误。但是,现在不断出现以下错误,仍然无法与服务器建立连接。

(StorageReplicatedMergeTree): DB::StorageReplicatedMergeTree::queueTask()::: Poco::Exception。代码:1000,e.code() = 0,e.displayText() = Null 指针:_pInstance in file "/home/centos/clickhouse-rpm/rpmbuild/BUILD/ClickHouse-19.4.3.11-stable/contrib/poco/ Util/include/Poco/Util/Application.h”,第 457 行

编辑 2:

发现上面是ClickHouse v19.4.3.11的另一个bug - https://github.com/yandex/ClickHouse/issues/5005

【问题讨论】:

    标签: database olap clickhouse


    【解决方案1】:

    我遇到了同样的异常,需要在失败的节点上执行下面的查询(见github: DB::Exception: Unknown codec family code : 4):

    SYSTEM DROP MARK CACHE
    

    【讨论】:

    • 我无法通过 ClickHouse 客户端连接到服务器。如果没有连接,我将无法运行查询。
    • 尝试重启节点并运行CH客户端,就像CH服务器一样。
    • 这是我在尝试运行 CH 客户端时遇到的错误。 Code: 210. DB::NetException: Connection refused (mynodeip:9000)
    • 服务器正在启动,请尝试多次运行此命令。
    • 这个错误已经重复了好几个小时。服务器仍未启动,无法获得连接。有没有办法手动删除损坏的部分?
    猜你喜欢
    • 2021-05-06
    • 2020-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-15
    • 2019-11-30
    • 1970-01-01
    相关资源
    最近更新 更多