Vitaly Baranov
dfa1053b9f
Use query scopes for async backup/restore.
2022-05-13 10:35:02 +02:00
Vitaly Baranov
dd51265218
Merge pull request #36864 from vitlibar/backup-improvements-4
...
Backup improvements
2022-05-05 15:37:51 +02:00
Vitaly Baranov
160bc288d3
Fix implementation of totalBytes() & totalRows() for Log family.
2022-05-04 00:15:21 +02:00
Vitaly Baranov
828f45f078
Add new restore setting 'allow_non_empty_tables'.
2022-05-03 16:18:45 +02:00
Robert Schulze
330212e0f4
Remove inherited create() method + disallow copying
...
The original motivation for this commit was that shared_ptr_helper used
std::shared_ptr<>() which does two heap allocations instead of
make_shared<>() which does a single allocation. Turned out that
1. the affected code (--> Storages/) is not on a hot path (rendering the
performance argument moot ...)
2. yet copying Storage objects is potentially dangerous and was
previously allowed.
Hence, this change
- removes shared_ptr_helper and as a result all inherited create() methods,
- instead, Storage objects are now created using make_shared<>() by the
caller (for that to work, many constructors had to be made public), and
- all Storage classes were marked as noncopyable using boost::noncopyable.
In sum, we are (likely) not making things faster but the code becomes
cleaner and harder to misuse.
2022-05-02 08:46:52 +02:00
Vitaly Baranov
68a020ecea
Implement BACKUP/RESTORE ON CLUSTER.
2022-04-25 16:34:33 +02:00
Robert Schulze
118e94523c
Activate clang-tidy warning "readability-container-contains"
...
This check suggests replacing <Container>.count() by
<Container>.contains() which is more speaking and in case of
multimaps/multisets also faster.
2022-04-18 23:53:11 +02:00
Vitaly Baranov
ce25afb2e9
Storages and databases are hollow by default now.
2022-03-20 20:02:15 +01:00
Vitaly Baranov
c884cf901f
Use BackupEntryFromAppendOnlyFile for Log engine,
...
and use a BackupEntriesBatch for Memort engine to improve performance.
A lot of minor corrections.
2022-03-20 20:02:15 +01:00
Vitaly Baranov
7f89b98308
Rework BackupSettings and RestoreSettings a little, pass StorageRestoreSettings to storages.
2022-03-20 20:02:15 +01:00
Vitaly Baranov
258a472001
Shorter names: rename IRestoreFromBackupTask -> IRestoreTask.
2022-03-20 20:02:15 +01:00
Vitaly Baranov
7a63feb3f7
Make restore tasks explicit.
2022-03-20 20:01:31 +01:00
Anton Popov
df3b07fe7c
Merge remote-tracking branch 'upstream/master' into HEAD
2022-03-03 22:25:28 +00:00
Maksim Kita
b1a956c5f1
clang-tidy check performance-move-const-arg fix
2022-03-02 18:15:27 +00:00
Anton Popov
fcdebea925
Merge remote-tracking branch 'upstream/master' into HEAD
2022-02-25 13:41:30 +03:00
feng lv
4ccd1c3278
try fix data race in StorageLog
2022-02-13 04:52:16 +00:00
Anton Popov
6f4d9a53b2
Merge remote-tracking branch 'origin/sparse-serialization' into HEAD
2021-12-01 15:54:33 +03:00
Raúl Marín
91bf938075
Reduce dependencies on ASTLiteral.h
...
590 -> 537
2021-11-26 17:54:57 +01:00
Anton Popov
ccd78e3838
Merge remote-tracking branch 'upstream/master' into HEAD
2021-11-22 17:19:35 +03:00
Vitaly Baranov
e0f475c724
Split backup implementation into two parts to help implementing other backup engines.
2021-11-10 11:03:03 +03:00
Anton Popov
a20922b2d3
Merge remote-tracking branch 'origin/sparse-serialization' into HEAD
2021-11-09 15:36:25 +03:00
Anton Popov
84e914e05a
minor fixes near serializations
2021-11-05 01:46:00 +03:00
Anton Popov
1628f50e51
Merge branch 'master' into sparse-serialization
2021-11-02 06:26:18 +03:00
Anton Popov
d50137013c
Merge remote-tracking branch 'upstream/master' into HEAD
2021-11-01 16:55:53 +03:00
Vitaly Baranov
a1f29d31ea
Support BACKUP & RESTORE for log family.
2021-11-01 12:07:17 +03:00
Anton Popov
c66207f606
fix nested
2021-11-01 05:13:07 +03:00
Vitaly Baranov
d2363d625c
Fix reading from TinyLog.
2021-11-01 04:07:43 +03:00
Vitaly Baranov
42596b16bc
Make StorageLog.cpp to implement both Log and TinyLog engines.
...
Refactoring of implementation of the Log family.
2021-10-31 03:52:36 +03:00
Anton Popov
0099dfd523
refactoring of SerializationInfo
2021-10-29 20:21:02 +03:00
Vitaly Baranov
5695ef55b3
Merge pull request #28125 from vitlibar/fix-writing-storage-log-marks
...
Fix writing marks in StorageLog
2021-10-21 20:10:01 +03:00
Anton Popov
d71ffc355a
Merge remote-tracking branch 'upstream/master' into HEAD
2021-10-18 15:18:22 +03:00
Anton Popov
71b474793c
Merge pull request #30174 from CurtizJ/better-interfaces
...
Better interfaces for `IDataType` and `ISerialization`
2021-10-18 12:07:04 +03:00
Nikolai Kochetov
a08c98d760
Move some files.
2021-10-16 17:03:50 +03:00
Nikolai Kochetov
c668696047
Merge pull request #30171 from ClickHouse/remove-stream-interfaces
...
Remove stream interfaces
2021-10-16 09:34:01 +03:00
alexey-milovidov
bc1662b9fe
Merge pull request #29946 from azat/log-fix-data-race
...
Fix data-race between LogSink::writeMarks() and LogSource in StorageLog
2021-10-15 01:30:58 +03:00
Nikolai Kochetov
ab28c6c855
Remove BlockInputStream interfaces.
2021-10-14 13:25:43 +03:00
Anton Popov
92413aed68
better interfaces for IDataType and ISerialization
2021-10-14 05:36:49 +03:00
Azat Khuzhin
eba6410fd5
Fix data-race between LogSink::writeMarks() and LogSource::readData() in StorageLog
...
CI founds [1], TSan report:
WARNING: ThreadSanitizer: data race (pid=497)
Write of size 8 at 0x7b1c00e4e8d8 by thread T922:
4 DB::LogSink::writeMarks() obj-x86_64-linux-gnu/../src/Storages/StorageLog.cpp:462:72 (clickhouse+0x1665cdaa)
5 DB::LogSink::consume() obj-x86_64-linux-gnu/../src/Storages/StorageLog.cpp:324:5 (clickhouse+0x1665c216)
Previous read of size 8 at 0x7b1c00e4e8d8 by thread T711:
1 DB::LogSource::readData()::$_0::operator()(bool) const::'lambda'()::operator()() const obj-x86_64-linux-gnu/../src/Storages/StorageLog.cpp:188:26 (clickhouse+0x16661baf)
9 DB::LogSource::readData() obj-x86_64-linux-gnu/../src/Storages/StorageLog.cpp:204:20 (clickhouse+0x1665bbcb)
[1]: https://clickhouse-test-reports.s3.yandex.net/29930/4bc90d1dd7dbd4b8a9b6920d00ca24e8b160358e/stress_test_(thread).html#fail1
Fixes : #29470
v2: rework locking, but this produce deadlock for 01499_log_deadlock test
v3: introduce per-file marks mutex
2021-10-14 00:17:45 +03:00
Azat Khuzhin
e4db862d85
Fix possible data-race between FileChecker and StorageLog/StorageStripeLog
2021-10-14 00:16:58 +03:00
Vitaly Baranov
200f655a2f
Fix writing marks in StorageLog.
2021-10-04 18:45:04 +03:00
Anton Popov
914781052e
Merge remote-tracking branch 'upstream/master' into HEAD
2021-09-29 17:37:07 +03:00
Nikolai Kochetov
4f802d1cea
Fix test_executable_table_function
2021-09-22 22:31:12 +03:00
Nikolai Kochetov
4e7d5191e3
Fix more tests
2021-09-20 22:07:33 +03:00
Nikolai Kochetov
c7533d58ee
Add debug output.
2021-09-20 19:09:39 +03:00
Nikolai Kochetov
9398c22aae
Fix more tests.
2021-09-20 12:05:34 +03:00
Nikolai Kochetov
f569a3e3f7
Merge branch 'master' into rewrite-pushing-to-views
2021-09-09 20:30:23 +03:00
Anton Popov
4c388e3d84
Merge remote-tracking branch 'origin/sparse-serialization' into HEAD
2021-09-09 14:10:16 +03:00
Anton Popov
8203bd1ac6
Merge remote-tracking branch 'upstream/master' into HEAD
2021-09-09 14:04:37 +03:00
Nikolai Kochetov
66a76ab70f
Rewrite PushingToViewsBlockOutputStream part 6
2021-09-03 20:29:36 +03:00
Alexey Milovidov
8f57216180
Progress on development
2021-08-25 00:45:58 +03:00