diff --git a/src/Disks/IDisk.h b/src/Disks/IDisk.h index 5068ac5dde9..12200e99507 100644 --- a/src/Disks/IDisk.h +++ b/src/Disks/IDisk.h @@ -248,6 +248,10 @@ public: /// Overrode in remote fs disks. virtual bool supportZeroCopyReplication() const = 0; + /// Whether this disk support parallel write + /// Overrode in remote fs disks. + virtual bool supportParallelWrite() const { return false; } + virtual bool isReadOnly() const { return false; } /// Check if disk is broken. Broken disks will have 0 space and not be used. diff --git a/src/Disks/IDiskRemote.cpp b/src/Disks/IDiskRemote.cpp index 2a9aded039b..fa529600714 100644 --- a/src/Disks/IDiskRemote.cpp +++ b/src/Disks/IDiskRemote.cpp @@ -4,7 +4,6 @@ #include #include #include -#include #include #include #include diff --git a/src/Disks/S3/DiskS3.h b/src/Disks/S3/DiskS3.h index 698fa6173c2..b52246ff4ac 100644 --- a/src/Disks/S3/DiskS3.h +++ b/src/Disks/S3/DiskS3.h @@ -103,6 +103,8 @@ public: bool supportZeroCopyReplication() const override { return true; } + bool supportParallelWrite() const override { return true; } + void shutdown() override; void startup() override;