DiskRestartProxy refactoring.

This commit is contained in:
Pavel Kovalenko 2021-04-20 21:52:58 +03:00
parent 98f8cbbdb2
commit 016a9c674b
2 changed files with 11 additions and 11 deletions

View File

@ -384,13 +384,13 @@ private:
}; };
/// Stores data in S3 and adds the object key (S3 path) and object size to metadata file on local FS. /// Stores data in S3 and adds the object key (S3 path) and object size to metadata file on local FS.
class WriteIndirectBufferFromS3 final : public WriteBufferFromFileDecorator<WriteBufferFromS3> class WriteIndirectBufferFromS3 final : public WriteBufferFromFileDecorator
{ {
public: public:
WriteIndirectBufferFromS3( WriteIndirectBufferFromS3(
std::unique_ptr<WriteBufferFromS3> impl_, std::unique_ptr<WriteBufferFromS3> impl_,
DiskS3::Metadata metadata_, DiskS3::Metadata metadata_,
const String & s3_path_) String & s3_path_)
: WriteBufferFromFileDecorator(std::move(impl_)) : WriteBufferFromFileDecorator(std::move(impl_))
, metadata(std::move(metadata_)) , metadata(std::move(metadata_))
, s3_path(s3_path_) , s3_path(s3_path_)
@ -695,7 +695,7 @@ std::unique_ptr<WriteBufferFromFileBase> DiskS3::writeFile(const String & path,
std::move(object_metadata), std::move(object_metadata),
buf_size); buf_size);
return std::make_unique<WriteIndirectBufferFromS3>(std::move(s3_buffer), std::move(metadata), std::move(s3_path)); return std::make_unique<WriteIndirectBufferFromS3>(std::move(s3_buffer), std::move(metadata), s3_path);
} }
void DiskS3::removeMeta(const String & path, AwsS3KeyKeeper & keys) void DiskS3::removeMeta(const String & path, AwsS3KeyKeeper & keys)

View File

@ -5,13 +5,13 @@
namespace DB namespace DB
{ {
WriteBufferFromFileDecorator<WriteBuffer>::WriteBufferFromFileDecorator(std::unique_ptr<WriteBuffer> impl_) WriteBufferFromFileDecorator::WriteBufferFromFileDecorator(std::unique_ptr<WriteBuffer> impl_)
: WriteBufferFromFileBase(0, nullptr, 0), impl(std::move(impl_)) : WriteBufferFromFileBase(0, nullptr, 0), impl(std::move(impl_))
{ {
swap(*impl); swap(*impl);
} }
WriteBufferFromFileDecorator<WriteBuffer>::finalize() void WriteBufferFromFileDecorator::finalize()
{ {
if (finalized) if (finalized)
return; return;
@ -24,7 +24,7 @@ WriteBufferFromFileDecorator<WriteBuffer>::finalize()
finalized = true; finalized = true;
} }
WriteBufferFromFileDecorator<WriteBuffer>::~WriteBufferFromFileDecorator() WriteBufferFromFileDecorator::~WriteBufferFromFileDecorator()
{ {
try try
{ {
@ -36,19 +36,19 @@ WriteBufferFromFileDecorator<WriteBuffer>::~WriteBufferFromFileDecorator()
} }
} }
void WriteBufferFromFileDecorator<WriteBuffer>::sync() void WriteBufferFromFileDecorator::sync()
{ {
impl->sync(); impl->sync();
} }
std::string WriteBufferFromFileDecorator<WriteBuffer>::getFileName() const std::string WriteBufferFromFileDecorator::getFileName() const
{ {
if (auto & buffer = dynamic_cast<WriteBufferFromFileBase&>(*impl)) if (WriteBufferFromFileBase * buffer = dynamic_cast<WriteBufferFromFileBase*>(impl.get()))
return buffer.getFileName(); return buffer->getFileName();
return std::string(); return std::string();
} }
void WriteBufferFromFileDecorator<WriteBuffer>::nextImpl() void WriteBufferFromFileDecorator::nextImpl()
{ {
swap(*impl); swap(*impl);
impl->next(); impl->next();