Sat, 15 Jul 2023 10:22:49 +0200 editorconfig: Explicitly specify preferred charset (UTF-8)
Kim Alvefur <zash@zash.se> [Sat, 15 Jul 2023 10:22:49 +0200] rev 13196
editorconfig: Explicitly specify preferred charset (UTF-8) Really should be the default everywhere by now, but doesn't hurt to be extra explicit
Sat, 15 Jul 2023 10:22:37 +0200 editorconfig: Add link to format description
Kim Alvefur <zash@zash.se> [Sat, 15 Jul 2023 10:22:37 +0200] rev 13195
editorconfig: Add link to format description
Wed, 12 Jul 2023 22:51:37 +0200 mod_storage_sql: Remove completed TODO (testing UPSERT on PostgreSQL)
Kim Alvefur <zash@zash.se> [Wed, 12 Jul 2023 22:51:37 +0200] rev 13194
mod_storage_sql: Remove completed TODO (testing UPSERT on PostgreSQL)
Wed, 12 Jul 2023 22:50:24 +0200 CHANGES: Move line about LuaSQLite3 to Storage section
Kim Alvefur <zash@zash.se> [Wed, 12 Jul 2023 22:50:24 +0200] rev 13193
CHANGES: Move line about LuaSQLite3 to Storage section
Wed, 12 Jul 2023 22:48:10 +0200 CHANGES: Mention performance improvements for internal archives
Kim Alvefur <zash@zash.se> [Wed, 12 Jul 2023 22:48:10 +0200] rev 13192
CHANGES: Mention performance improvements for internal archives Specifically the index and more efficient delete. These are however still in need of testing.
Wed, 12 Jul 2023 15:03:24 +0200 mod_storage_internal: Implement efficient deletion of oldest archive items
Kim Alvefur <zash@zash.se> [Wed, 12 Jul 2023 15:03:24 +0200] rev 13191
mod_storage_internal: Implement efficient deletion of oldest archive items Using the new shift function in datamanager, either the oldest items are removed or all the later items are moved into a new file that replaces the old. Hidden behind a feature flag for now.
Wed, 07 Jun 2023 00:39:30 +0200 util.datamanager: Pad list writes to avoid crossing block boundaries
Kim Alvefur <zash@zash.se> [Wed, 07 Jun 2023 00:39:30 +0200] rev 13190
util.datamanager: Pad list writes to avoid crossing block boundaries By padding items so that they do not cross block boundaries, it becomes eaiser to delete whole blocks with fallocate() without cutting items in half, improving efficiency of such operations. Since list stores are used for message archives, where the most common deletion operation would be of the oldest entires, at the top of the file. With this, all blocks that contain items to be removed could be deleted without needing to read, delete and write out the whole file.
Wed, 12 Jul 2023 11:45:12 +0200 util.datamanager: Efficiently remove whole blocks to shift lists
Kim Alvefur <zash@zash.se> [Wed, 12 Jul 2023 11:45:12 +0200] rev 13189
util.datamanager: Efficiently remove whole blocks to shift lists Using the new pposix.remove_blocks() it should be very performant to delete whole sections of a file, given a supporting file system.
Wed, 07 Jun 2023 05:07:03 +0200 util.pposix: Add remove_blocks() for deleting parts of files
Kim Alvefur <zash@zash.se> [Wed, 07 Jun 2023 05:07:03 +0200] rev 13188
util.pposix: Add remove_blocks() for deleting parts of files Allows implementing e.g. a FIFO Will probably only work on some Linux file systems like ext4.
Wed, 12 Jul 2023 11:42:41 +0200 util.datamanager: Add way to efficiently remove first items in a list
Kim Alvefur <zash@zash.se> [Wed, 12 Jul 2023 11:42:41 +0200] rev 13187
util.datamanager: Add way to efficiently remove first items in a list Copying data without parsing it should be more performant than parsing it serializing back.
(0) -10000 -3000 -1000 -300 -100 -10 +10 +100 tip