Commit Graph

290 Commits

Author SHA1 Message Date
levlam
5945cc9b70 Add TQueue::clear. 2022-11-08 17:04:45 +03:00
levlam
ec86b34d55 Don't allow TQueue::run_gc to run for more than 50 milliseconds. 2022-10-13 16:04:24 +03:00
levlam
ec4ae065b0 Simplify TQueue::run_gc. 2022-10-13 15:22:06 +03:00
levlam
ee28a37906 Minor improvements. 2022-10-12 15:59:58 +03:00
levlam
5a29dcd337 Avoid redundant usages of Status::error(). 2022-10-09 14:15:54 +03:00
levlam
c6c8fdcb10 Improve SQLite logging. 2022-10-05 18:24:19 +03:00
levlam
515a9cfb48 Minor improvements. 2022-08-18 23:31:14 +03:00
levlam
af8042dc61 Use std::atomic for close_state. 2022-08-18 22:04:20 +03:00
levlam
6f7e775dee Ensure logical constness in TsSeqKeyValue. 2022-08-18 13:59:34 +03:00
levlam
f1c9d69077 Add TsSeqKeyValue::isset. 2022-08-17 16:52:27 +03:00
levlam
5b22effaa6 Remove unused SeqKeyValue method. 2022-08-17 16:34:21 +03:00
levlam
110ef61861 Move SQLite to namespace tdsqlite. 2022-08-04 14:37:08 +03:00
levlam
eced652ca6 Add close state to fatal error message. 2022-07-30 12:33:57 +03:00
levlam
7b8a016a9e Improve fatal error message. 2022-06-30 01:32:32 +03:00
levlam
32bac7bd24 Move Promise to tdutils. 2022-06-27 13:30:18 +03:00
levlam
d06a7ddf1c Don't sync just created binlog. 2022-05-23 02:24:52 +03:00
levlam
163e739302 Add set_promises/fail_promises helper functions. 2022-04-13 17:40:12 +03:00
levlam
f2de47e5b5 Improve PerfWarningTimer logging on database opening. 2022-02-13 22:51:53 +03:00
levlam
f5d8e4de83 Use table_remove_if. 2022-02-10 12:23:52 +03:00
levlam
9e6d106585 Minor improvements. 2022-02-10 11:55:32 +03:00
levlam
2b1314295d Check and fix half of FlatHashMap usages. 2022-02-10 00:59:52 +03:00
levlam
22ed61e1b7 More FlatHashMap usages. 2022-02-09 17:05:27 +03:00
levlam
bcc2adeb47 Fix includes and formatting. 2022-02-08 00:04:34 +03:00
Arseny Smirnov
86bceb2972 td: replace most of std::unordered_map usages to td::FlatHashMap 2022-02-07 21:21:31 +01:00
levlam
8085779cdc Update copyright year. 2022-01-01 03:35:39 +03:00
levlam
1782b8e478 Minor improvements. 2021-12-16 16:16:34 +03:00
levlam
7bff3ed912 Add SqliteKeyValue::set_all. 2021-12-12 22:34:19 +03:00
levlam
ef7ccc020a Remove SeqNo from SqliteKeyValue. 2021-12-12 15:41:06 +03:00
levlam
42aadccc8b Fix warning. 2021-12-07 13:10:30 +03:00
levlam
e740f5f86c Try a few times to find the new binlog after renaming it. This could help on some virtual file systems like /mnt directory on WSL 2.0. 2021-12-06 13:58:11 +03:00
levlam
a6c0902ad7 Silence g++ warnings. 2021-12-01 16:01:27 +03:00
levlam
e7dfed10a5 Increase performance warning time to a reasonable value. 2021-11-17 09:07:23 +03:00
levlam
43855f0ce4 Improve error message. 2021-11-14 10:07:04 +03:00
levlam
b731414d42 Init some fields just in case. 2021-11-11 17:39:09 +03:00
levlam
9f44816a62 Minor improvements. 2021-10-21 12:51:16 +03:00
levlam
1e49f6dc13 Use auto as variable type if it is initialized with a cast. 2021-10-20 01:27:02 +03:00
levlam
44a186c7c1 Minor improvements. 2021-10-18 19:26:14 +03:00
levlam
b34cfef4d0 Replace begin_transaction with begin_read_transaction and begin_write_transaction. 2021-10-07 13:18:00 +03:00
levlam
91f7d06282 Improve error message. 2021-09-25 21:25:51 +03:00
levlam
23f585caf0 Unify set SQLite PRAGMAs. 2021-09-23 11:20:42 +03:00
levlam
626caad19a Create database before attaching it. 2021-09-22 20:17:37 +03:00
levlam
a0cc1be3e6 Add allow_creation parameter to SqliteDb::init. 2021-09-22 19:04:56 +03:00
levlam
f073c790c5 Make DbKey required to construct SqliteConnectionSafe. 2021-09-22 17:20:10 +03:00
levlam
2008290425 Remove old way to init SqliteDb. 2021-09-22 17:05:52 +03:00
levlam
f8402d5d9d Simplify error message. 2021-09-22 14:56:48 +03:00
levlam
dc6d9822a2 Ignore shm deletion errors. 2021-09-22 11:33:28 +03:00
levlam
db18baa503 Unify include order. 2021-09-19 00:47:05 +03:00
levlam
a8e8208fa6 Improve order of binlog files deletion. 2021-07-26 21:09:39 +03:00
levlam
5e9cf68df1 Add more binlog reindex debug. 2021-07-14 05:24:45 +03:00
levlam
31bc98a7bd Improve logging on failed to rename binlogs. 2021-07-13 23:46:09 +03:00
levlam
40c5d47717 Make inherited classes final if possible. 2021-07-04 05:58:54 +03:00
levlam
edfa5d1d98 Use final instead of override. 2021-07-03 23:51:36 +03:00
levlam
9628668def Minor improvements. 2021-06-23 03:22:23 +03:00
levlam
a36266a764 Add BinlogKeyValue logging. 2021-06-16 05:23:22 +03:00
levlam
8db4febd4c Minor improvements. 2021-06-02 15:43:56 +03:00
levlam
a6a4eb6616 Don't include SliceBuilder.h in logging.h. 2021-05-17 15:21:11 +03:00
levlam
c171c9a743 Improve fatal error message. 2021-04-06 01:19:30 +03:00
levlam
e031a2c6c1 Improve Slice::truncate usage. 2021-02-04 15:54:12 +03:00
levlam
52c1da0a70 Update copyright year. 2021-01-01 15:57:46 +03:00
levlam
15359488be Fix database opening. 2020-11-18 21:08:41 +03:00
levlam
35a9a93fc9 Fix std::...::erase return value usages.
GitOrigin-RevId: d9729ccd619e3b99554f1e1c2262d8826f0a8571
2020-10-08 23:04:40 +03:00
levlam
fdc3920572 Fix some includes.
GitOrigin-RevId: 4b57613cc6e948ceb7d63b4378bc9124271e0f53
2020-10-08 18:30:36 +03:00
levlam
d2d0cb5cc0 Move log tags definitions out of logging.cpp.
GitOrigin-RevId: 0e74b94ec194f8ee678bb77a04d35df46702b330
2020-10-05 18:07:23 +03:00
levlam
cb3f390a92 Unify "log event" spelling.
GitOrigin-RevId: a1a491981596c56dbf7541d80ead1ea9f5d5bd04
2020-09-22 02:15:09 +03:00
levlam
3d8d4bcf1c Fix warning.
GitOrigin-RevId: 033adb463f56b8135180dd22d4c48e82b967fe39
2020-08-28 14:53:22 +03:00
levlam
dfd01bf87b Fix from_id check in TQueue.
GitOrigin-RevId: ad52ed5183780b806dcd994bb1a33e67ba508635
2020-08-26 21:36:29 +03:00
levlam
f0d1afcb7a Fix binlog closing.
GitOrigin-RevId: 3dc04b07a2d7c72e8f99f360c6b8f02cb74ce931
2020-08-16 16:48:20 +03:00
levlam
e0caa301a5 TQueue: fix adding already expired events.
GitOrigin-RevId: b78748cd001d9439c9e215b378b76b973a77a79a
2020-08-16 02:57:31 +03:00
levlam
f266aa3912 Minor fixes.
GitOrigin-RevId: a4aacfa1ecab2718475d32bcbd99f9671ba7e982
2020-08-14 22:51:10 +03:00
levlam
129e673769 Minor.
GitOrigin-RevId: 17528428dd1741527565d1b2bc012928d3f24c80
2020-08-14 19:53:26 +03:00
Arseny Smirnov
28596f1a3f TdDb: reuse derived sqlcipher version
GitOrigin-RevId: 28a94a5dee34f47850deb5cf1ca41e92e24bf648
2020-08-14 17:48:43 +03:00
Arseny Smirnov
45bfb1b384 TdDb: create sqlite db during SqliteDb::change_key
GitOrigin-RevId: bc0bff23a50f17d9111edac6ba4194fbdffaa1b4
2020-08-14 17:11:58 +03:00
Arseny Smirnov
11e09c5699 Sqlcipher: use compatibility mode instead of migration
GitOrigin-RevId: 91fe86328e7fcd2e03e298482ad2ffac2b48767f
2020-08-14 13:44:16 +03:00
Arseny Smirnov
cecea2ba08 Add debug for 'PRAGMA cipher_migrate'
GitOrigin-RevId: 69c9a979ccf27f77d106e6ce7712c6e4a939722c
2020-08-13 19:21:15 +03:00
Arseny Smirnov
b9de1b94d2 Sqlcipher: automatic migrate
GitOrigin-RevId: 209360f2b40a0d05ec53bb55890518e50c05f34a
2020-08-12 22:36:46 +03:00
levlam
fe5bf41980 Minor improvements.
GitOrigin-RevId: 45477784ae1840f217b9394e3d0cc56e1241f9ce
2020-08-07 22:14:42 +03:00
Arseny Smirnov
037bfb3776 Binlog: defragmentation of BinlogEvents buffers during reindex
GitOrigin-RevId: 89f61031d27d8aa20963a46566876a461ea3e338
2020-08-07 20:30:05 +03:00
Arseny Smirnov
80d98def74 TQueue: run_gc returns count of deleted events
GitOrigin-RevId: 7cddd57c1c2842eade83aa253209462e33629dc9
2020-08-07 19:36:23 +03:00
Arseny Smirnov
857f981847 TQueue: minor refactoring of gc
GitOrigin-RevId: 4f4d460723a60f075e2a66d2b1269bc8e41927d1
2020-08-07 14:03:39 +03:00
levlam
2097934da5 Optimize TQueue::run_gc, so it can be run arbitrary often.
GitOrigin-RevId: f7fc488cf3682683c0164c557992dbbc4eed9d4d
2020-08-07 06:06:29 +03:00
levlam
5109f43435 Use unix_time in TQueue.
GitOrigin-RevId: d49c0871c7cb1a4315e38a66c198f56cb2b89428
2020-08-06 04:02:54 +03:00
levlam
5749ddf33d Minor fixes.
GitOrigin-RevId: 6d9a609ab9c773d1e4f3fe81f84947e142e15f35
2020-08-04 22:48:23 +03:00
Arseny Smirnov
e75860b2ae BufferSlice: stats of total BufferSlices size
GitOrigin-RevId: df712161ba00c4f3d6eae9b6459c69ee046a9bda
2020-08-04 21:37:47 +03:00
levlam
7187b9c32f Erase the dummy event when new event is pushed to TQueue.
GitOrigin-RevId: 42f310f52cf74ddf32655fe3da42c731ff24e799
2020-07-25 03:11:03 +03:00
levlam
7d8d13606c Use std::map instead of VectorQueue in TQueue.
GitOrigin-RevId: a419aa0c9ee5954f8bf1681e6e4097b3e632fa0c
2020-07-25 00:37:45 +03:00
levlam
2882e96b63 Do not delete queue if there is no callback.
GitOrigin-RevId: d19a6b2c2c5ee517bae5cf809068f413217ca723
2020-07-24 14:03:59 +03:00
levlam
8132c4dfd3 Fix TQueue run_gc statistics.
GitOrigin-RevId: 2311da0ba65e33de466c3f627058ec2a973dcb76
2020-07-24 07:12:43 +03:00
levlam
85ba9e5654 Fix TQueue binlog replaying.
GitOrigin-RevId: 172d70847206253de981d38fed329276b2f778e0
2020-07-24 06:57:48 +03:00
levlam
db29976a90 Check queue constraints in TQueue::do_push.
GitOrigin-RevId: 385d120c8bdee21bb18d97699af4b7b78fa36277
2020-07-24 05:47:31 +03:00
levlam
692b0f18df Drop only one week old empty queues from TQueue.
GitOrigin-RevId: b7ce4c1b4471cfa385ca4d268e8e052db0896ef3
2020-07-24 05:26:25 +03:00
levlam
70534a8aca Add TQueue run_gc statistics.
GitOrigin-RevId: 371d38aa5c59d927b0f1e601f08ac7c7bbbdb137
2020-07-24 02:42:54 +03:00
levlam
1b2d42a7b6 Improve log messages.
GitOrigin-RevId: a431f8c5bfca3edea1293d0192ac78c9aec38de2
2020-07-15 14:28:53 +03:00
levlam
060c01ace3 Minor improvements.
GitOrigin-RevId: b4e5073248377d84cb8acdf4a032970ec5cf5df9
2020-07-14 20:54:38 +03:00
Arseny Smirnov
d701e17cc6 close(Promise<>) interface for TQueue and BinlogKeyValue
GitOrigin-RevId: d2c524407888b99c9e6207f74828eb2da29a7720
2020-07-14 19:10:26 +03:00
levlam
7767842d4c Minor fixes.
GitOrigin-RevId: b9f67c5e5edf818610c1739533f01a7873e6e1b6
2020-07-14 03:37:04 +03:00
levlam
32f9e4924f Add limit on total TQueue events size.
GitOrigin-RevId: cd0d77e4b0e2d66d7c5253a6d36bd543bca95bd1
2020-07-13 23:48:15 +03:00
levlam
416188fc67 binlog_dump: protect from accidental binlog creation and encryption.
GitOrigin-RevId: e1e624413c7f672e90b705fb954ed3000d6170c2
2020-07-13 20:46:17 +03:00
levlam
9072b73337 Make binlog reindex more aggressive.
GitOrigin-RevId: dea08e9bd9b1679c41f5e516c26cb365bdea7562
2020-07-13 16:26:36 +03:00
levlam
15c387eff0 Improve binlog_dump output.
GitOrigin-RevId: d817f60b8228d0c6270abda41dfeed8655be5493
2020-07-13 04:04:30 +03:00
levlam
27247f278a Simplify binlog_dump.
GitOrigin-RevId: dfcc9734abc7c71f88ca9df39c3fc6725680fdec
2020-07-13 03:40:03 +03:00