Better code

This commit is contained in:
Alexey Milovidov 2020-11-08 19:24:58 +03:00
parent 2ea93f4b67
commit 2d9f07e601
5 changed files with 16 additions and 6 deletions

View File

@ -519,6 +519,7 @@
M(550, CONDITIONAL_TREE_PARENT_NOT_FOUND) \
M(551, ILLEGAL_PROJECTION_MANIPULATOR) \
M(552, UNRECOGNIZED_ARGUMENTS) \
M(553, ROCKSDB_ERROR) \
\
M(999, KEEPER_EXCEPTION) \
M(1000, POCO_EXCEPTION) \

View File

@ -2,6 +2,7 @@
#include <Interpreters/Context.h>
#include <Storages/RocksDB/StorageEmbeddedRocksDB.h>
#include <Storages/RocksDB/EmbeddedRocksDBBlockInputStream.h>
#include <rocksdb/db.h>
#include <ext/enumerate.h>

View File

@ -1,13 +1,18 @@
#pragma once
#include <DataStreams/IBlockInputStream.h>
#include <Storages/RocksDB/StorageEmbeddedRocksDB.h>
#include <rocksdb/db.h>
namespace rocksdb
{
class Iterator;
}
namespace DB
{
class StorageEmbeddedRocksDB;
class EmbeddedRocksDBBlockInputStream : public IBlockInputStream
{
@ -15,7 +20,7 @@ public:
EmbeddedRocksDBBlockInputStream(
StorageEmbeddedRocksDB & storage_, const StorageMetadataPtr & metadata_snapshot_, size_t max_block_size_);
String getName() const override { return storage.getName(); }
String getName() const override { return "EmbeddedRocksDB"; }
Block getHeader() const override { return sample_block; }
Block readImpl() override;

View File

@ -1,5 +1,6 @@
#include <Storages/RocksDB/EmbeddedRocksDBBlockOutputStream.h>
#include <Storages/RocksDB/StorageEmbeddedRocksDB.h>
#include <IO/WriteBufferFromString.h>
namespace DB
@ -7,7 +8,7 @@ namespace DB
namespace ErrorCodes
{
extern const int SYSTEM_ERROR;
extern const int ROCKSDB_ERROR;
}
Block EmbeddedRocksDBBlockOutputStream::getHeader() const
@ -44,7 +45,7 @@ void EmbeddedRocksDBBlockOutputStream::write(const Block & block)
}
auto status = storage.rocksdb_ptr->Write(rocksdb::WriteOptions(), &batch);
if (!status.ok())
throw Exception("RocksDB write error: " + status.ToString(), ErrorCodes::SYSTEM_ERROR);
throw Exception("RocksDB write error: " + status.ToString(), ErrorCodes::ROCKSDB_ERROR);
}
}

View File

@ -1,12 +1,14 @@
#pragma once
#include <DataStreams/IBlockOutputStream.h>
#include <Storages/RocksDB/StorageEmbeddedRocksDB.h>
#include <Storages/StorageInMemoryMetadata.h>
namespace DB
{
class StorageEmbeddedRocksDB;
class EmbeddedRocksDBBlockOutputStream : public IBlockOutputStream
{
public: