Commit Graph

123 Commits

Author SHA1 Message Date
Robert Schulze
777b5bc15b
Don't let storages inherit from boost::noncopyable
... IStorage has deleted copy ctor / assignment already
2022-05-03 09:07:08 +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
Amos Bird
4a5e4274f0
base should not depend on Common 2022-04-29 10:26:35 +08:00
Alexey Milovidov
294efeccfe Fix clang-tidy-14 (part 1) 2022-04-16 04:54:04 +02:00
Alexander Tokmakov
7f54e7b422 Merge branch 'master' into mvcc_prototype 2022-04-07 15:14:06 +02:00
Alexander Tokmakov
8290ffa88d Merge branch 'master' into mvcc_prototype 2022-04-07 13:50:42 +02:00
fenglv
517c2ae8df Fix data race in StorgeFileLog 2022-04-07 02:20:20 +00:00
fenglv
a2ce366c34 parallel reading files for FileLog Engine 2022-04-06 04:49:43 +00:00
Alexander Tokmakov
07d952b728 use snapshots for semistructured data, durability fixes 2022-03-17 18:26:18 +01:00
Anton Popov
0bc57da238 Merge remote-tracking branch 'upstream/master' into HEAD 2022-03-07 14:46:08 +00:00
Kseniia Sumarokova
3ec6cd3128
Update StorageFileLog.cpp 2022-03-06 11:03:22 +01:00
Anton Popov
df3b07fe7c Merge remote-tracking branch 'upstream/master' into HEAD 2022-03-03 22:25:28 +00:00
kssenii
d19f199e93 Revert 2022-03-03 15:25:27 +01:00
kssenii
5e84c75942 Fix 2022-03-02 15:31:34 +01:00
kssenii
ef344a581b Fix bug in FileLog storage 2022-03-02 15:28:17 +01:00
kssenii
aa1c71a877 Merge master 2022-03-01 19:25:04 +01:00
kssenii
755e63ed03 Keep compatibility 2022-03-01 19:21:59 +01:00
Anton Popov
c1fdcf7a64 Merge remote-tracking branch 'upstream/master' into HEAD 2022-03-01 20:21:39 +03:00
Hongbin
99bd56e2de
Fix some code comments style 2022-02-28 08:15:37 +08:00
kssenii
2ba9010a34 Fix 2022-02-25 17:53:19 +01:00
kssenii
6c8401bfbd Fix 2022-02-25 16:35:37 +01:00
Anton Popov
fcdebea925 Merge remote-tracking branch 'upstream/master' into HEAD 2022-02-25 13:41:30 +03:00
tavplubix
43626b3ffd
Update src/Storages/FileLog/StorageFileLog.cpp
Co-authored-by: Kseniia Sumarokova <54203879+kssenii@users.noreply.github.com>
2022-02-23 21:07:37 +03:00
Alexander Tokmakov
5a26f856d9 remove trash that shouldn't have been merged 2022-02-22 23:41:33 +03:00
Anton Popov
18940b8637 Merge remote-tracking branch 'upstream/master' into HEAD 2022-02-09 23:38:38 +03:00
feng lv
6325d4d9b0 continue of #34317
fix

fix
2022-02-06 08:59:17 +00:00
Anton Popov
e8ce091e68 Merge remote-tracking branch 'upstream/master' into HEAD 2022-01-21 20:11:18 +03:00
Alexey Milovidov
204cc11e29 Fix incorrect include 2021-12-24 12:25:26 +03:00
Anton Popov
99ebabd822 Merge remote-tracking branch 'upstream/master' into HEAD 2021-12-17 19:02:29 +03:00
Kseniia Sumarokova
7b1d4631bf
Update FileLogSource.cpp 2021-12-03 18:56:29 +03:00
Kseniia Sumarokova
87574e8bf6
Merge pull request #31053 from kssenii/rabbit-kafka-select-commit
rabbitmq/kafka allow to commit on select only under setting
2021-12-01 18:23:08 +03:00
Anton Popov
6f4d9a53b2 Merge remote-tracking branch 'origin/sparse-serialization' into HEAD 2021-12-01 15:54:33 +03:00
Kseniia Sumarokova
18e200b1e2
Merge pull request #31967 from ucasfl/fix-filelog
Fix FileLog engine unnesessary create meta data directory when create table failed
2021-11-30 15:38:05 +03:00
feng lv
0efabb39cf Fix FileLog engine unnesessary create meta data directory when create table failed.
fix style
2021-11-30 04:39:55 +00:00
kssenii
2ea4e7c4e7 Better 2021-11-29 15:05:02 +00:00
Anton Popov
a20922b2d3 Merge remote-tracking branch 'origin/sparse-serialization' into HEAD 2021-11-09 15:36:25 +03:00
nautaa
cc00c6993e remove unnecessary assert 2021-11-06 21:00:24 +08:00
Kseniia Sumarokova
ca48c5f302
Merge pull request #30832 from ucasfl/filelog-fix
filelog engine tests improve
2021-10-31 21:27:48 +03:00
Kseniia Sumarokova
1cc1417ba4
Update StorageFileLog.cpp 2021-10-29 09:53:48 +03:00
feng lv
13a305d648 filelog engine tests improve
fix
2021-10-29 06:25:21 +00:00
kssenii
37cd91c0bf Fix 2021-10-28 07:59:57 +00:00
feng lv
4ac120b883 remove some unneeded header files 2021-10-27 04:13:12 +00:00
feng lv
235339d530 fix 2021-10-23 09:35:33 +00:00
feng lv
54dc9693fb fix 2021-10-22 07:08:08 +00:00
feng lv
5cb783aed0 fix 2021-10-22 02:36:24 +00:00
feng lv
6565e1d4b2 fix conflict 2021-10-20 15:22:16 +00:00
feng lv
ab0d2504e5 fix 2021-10-18 15:44:54 +00:00
feng lv
81fb4bcf76 fix style 2021-10-18 08:14:54 +00:00
feng lv
0c628726af fix build 2021-10-18 07:48:58 +00:00
feng lv
6cf82f859c fix 2021-10-18 07:27:37 +00:00