diff --git a/src/Storages/StorageKeeperMap.cpp b/src/Storages/StorageKeeperMap.cpp index 316eced1ed6..70e20eba431 100644 --- a/src/Storages/StorageKeeperMap.cpp +++ b/src/Storages/StorageKeeperMap.cpp @@ -1028,9 +1028,9 @@ void StorageKeeperMap::restoreDataImpl( if (!dynamic_cast(in.get())) { temp_data_file.emplace(temporary_disk); - auto out = std::make_unique(temp_data_file->getAbsolutePath()); - copyData(*in, *out); - out.reset(); + auto out = WriteBufferFromFile(temp_data_file->getAbsolutePath()); + copyData(*in, out); + out.finalize(); in = createReadBufferFromFileBase(temp_data_file->getAbsolutePath(), {}); } std::unique_ptr in_from_file{static_cast(in.release())};