Anton Popov
2ae3cfa9e0
Merge branch 'master' into dynamic-columns-14
2022-10-31 16:15:19 +01:00
Azat Khuzhin
4e76629aaf
Fixes for -Wshorten-64-to-32
...
- lots of static_cast
- add safe_cast
- types adjustments
- config
- IStorage::read/watch
- ...
- some TODO's (to convert types in future)
P.S. That was quite a journey...
v2: fixes after rebase
v3: fix conflicts after #42308 merged
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-10-21 13:25:19 +02:00
Anton Popov
86b29b7f1a
fix serilization of Object inside other types
2022-09-08 15:16:39 +00:00
Alexander Tokmakov
f2c4cad255
add flag that enables automatic canversion from Ordinary to Atomic
2022-08-05 21:41:25 +02:00
Anton Popov
089009c996
fix reading from StorageLog with mmap
2022-07-13 20:36:18 +00:00
Vitaly Baranov
1dba3d9f9c
Make temporary files in better places.
2022-07-04 11:02:58 +02:00
Vitaly Baranov
92e0ee0b6f
More detailed error messages.
2022-07-03 14:20:19 +02:00
Vitaly Baranov
031ca28fdc
Add test for partition clause. More checks for data compatibility on restore.
2022-06-30 08:37:18 +02:00
Vitaly Baranov
8a7c970ce0
Fix style.
2022-06-19 15:58:26 +02:00
Vitaly Baranov
1198e86295
Fix storing temporary tables and skipping system tables while making a backup.
2022-06-15 20:32:34 +02:00
Vitaly Baranov
21f3bed435
Simplify path calculations in backup.
2022-06-15 20:32:34 +02:00
Vitaly Baranov
592f568f83
Move backup/restore code to storages and databases - part 2.
2022-06-15 20:32:31 +02:00
Vitaly Baranov
724bc4dc57
Move backup/restore code to storages and databases - part 1.
2022-06-15 20:28:43 +02:00
Vitaly Baranov
73b1894a21
Rework collecting replicated parts.
2022-06-15 20:28:42 +02:00
Nikolai Kochetov
1b85f2c1d6
Merge branch 'master' into refactor-read-metrics-and-callbacks
2022-05-25 16:27:40 +02:00
Nikolai Kochetov
56feef01e7
Move some resources
2022-05-20 19:49:31 +00:00
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
Anton Popov
e36736b50c
Merge remote-tracking branch 'origin/sparse-serialization' into HEAD
2021-08-02 22:52:02 +03:00
Anton Popov
16ed0f6ed4
Merge remote-tracking branch 'upstream/master' into HEAD
2021-08-02 17:55:17 +03:00
Nikolai Kochetov
fa1c223269
Fix some tests.
2021-07-26 13:08:40 +03:00
Nikolai Kochetov
9c92f43359
Update storages.
2021-07-23 22:33:59 +03:00
Anton Popov
f99374cca6
Merge remote-tracking branch 'origin/sparse-serialization' into HEAD
2021-07-20 18:20:21 +03:00
Anton Popov
c4b454494f
Merge remote-tracking branch 'upstream/master' into HEAD
2021-07-20 15:41:01 +03:00
Alexey Milovidov
261a220227
Remove some code
2021-07-17 21:06:46 +03:00
Anton Popov
5f71a6f5bb
improve performance of getting columns list
2021-07-15 16:29:01 +03:00
Nikolay Degterinsky
75be358250
Fix style
2021-07-12 19:47:13 +00:00
Nikolay Degterinsky
8d2da5933c
Minor fixes
2021-07-12 19:04:53 +00:00
Nikolay Degterinsky
8bdd1e93ae
Fix
2021-07-12 13:40:22 +00:00
Nikolay Degterinsky
fb661bc38d
Minor fixes
2021-07-12 10:58:53 +00:00
Nikolay Degterinsky
dc18f68b72
Minor fix
2021-07-12 10:21:17 +00:00
Nikolay Degterinsky
fd957f332e
Add column sizes for Log tables
2021-07-12 10:06:24 +00:00
Anton Popov
3ed7f5a6cc
dynamic subcolumns: add snapshot for storage
2021-07-09 06:15:41 +03:00
Anton Popov
0bdf9d207c
Merge remote-tracking branch 'origin/sparse-serialization' into HEAD
2021-05-26 00:25:47 +03:00
Anton Popov
3e92c7f61a
Merge remote-tracking branch 'upstream/master' into HEAD
2021-05-25 21:45:19 +03:00
Alexey Milovidov
d32819f068
Mark false positives for PVS-Studio
2021-05-24 06:59:12 +03:00
Anton Popov
cd37cd32ef
fix StorageLog with subcolumns
2021-05-19 23:07:46 +03:00
Anton Popov
76613a5dd1
serialization: better interfaces
2021-05-19 04:48:46 +03:00
Anton Popov
e44706911e
dynamic columns: better getting of sample block
2021-05-05 02:02:54 +03:00
Anton Popov
644df6be7d
dynamic subcolumns: wip
2021-04-24 07:09:01 +03:00
feng lv
4ffe199d39
Implement table comments
2021-04-23 12:18:23 +00:00
Ivan
495c6e03aa
Replace all Context references with std::weak_ptr ( #22297 )
...
* Replace all Context references with std::weak_ptr
* Fix shared context captured by value
* Fix build
* Fix Context with named sessions
* Fix copy context
* Fix gcc build
* Merge with master and fix build
* Fix gcc-9 build
2021-04-11 02:33:54 +03:00
Azat Khuzhin
89a96cf14d
StorageLog: avoid UB for rwlock unlock due to unlock from another thread
2021-04-04 13:25:44 +03:00
Anton Popov
bc417cf54a
refactoring of serializations
2021-03-09 17:46:52 +03:00
Anton Popov
36ae0e4d35
Merge remote-tracking branch 'upstream/master' into HEAD
2021-01-11 13:51:12 +03:00
Alexey Milovidov
5368b20a71
Fix error
2021-01-05 04:49:15 +03:00
Anton Popov
40b5ffe3b5
minor renames
2020-12-22 18:06:12 +03:00
alexey-milovidov
69719f743d
Merge branch 'master' into revert-15259-revert-14962-log-avoid-deadlock
2020-12-22 00:41:52 +03:00
Anton Popov
06d5b87bc9
fix nested and subcolumns
2020-12-07 22:02:26 +03:00
Anton Popov
1f65478b49
implement nested with multiple nesting
2020-11-21 20:27:42 +03:00
Anton Popov
9b354be66f
Merge remote-tracking branch 'upstream/master' into HEAD
2020-11-10 16:21:11 +03:00
Anton Popov
e32349ea56
fixes related to Nested
2020-10-29 17:14:23 +03:00