6a4bfb2b0bb9f53fb1d4e705bf3948ef4d1ecccb |
|
11-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-index: Improve error messages when transaction log is unexpectedly lost |
3403e054eacf125e757bf6c66abf0ea9f086a4b6 |
|
14-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-index: Fixes to handling resized records. |
0dffa25d211be541ee3c953b23566a1a990789df |
|
06-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: unsigned int:1 -> bool:1
perl -i -pe 's/unsigned int ([^,:;]+):1;/bool $1:1;/' **/*.[ch] |
4ee00532a265bdfb38539d811fcd12d51210ac35 |
|
19-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
Array API changed: ARRAY_DEFINE(name, type) -> ARRAY(type) name
Easy way to update your existing code:
perl -i -pe 's:ARRAY_DEFINE\(([^,]+), *([^)]+)\);:ARRAY($2) $1;:' **/*.[ch] |
d7c8280f58292cc292eba9209dcc9024fe96cf06 |
|
03-May-2012 |
Timo Sirainen <tss@iki.fi> |
lib-index: Updated dovecot.index file only by recreating it, never write to it directly.
This is safer, and nowadays there shouldn't be much of a performance loss
with it either, since dovecot.index isn't updated very often.
This also allows removing all locking from dovecot.index file, although for
now we'll keep it in case old Dovecot versions are simultaneously writing to
the index. |
93e8e70062fe33db681a9b3b66bb5e523e5a84f7 |
|
29-Apr-2010 |
Timo Sirainen <tss@iki.fi> |
lib-index: mail_index_sync_ext_atomic_inc() does now better error checking.
--HG--
branch : HEAD |
e76f5e07be5bec4e5ca99c3e093ff7f11edbe1b7 |
|
20-Nov-2009 |
Timo Sirainen <tss@iki.fi> |
mail_index_update_header_ext(): Couldn't handle >=64k headers.
--HG--
branch : HEAD |
c5794838af9995f50bfecb06a3cd4f9a0ac77858 |
|
04-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
Added mail_index_atomic_inc_ext() for atomically incrementing numbers in extensions.
--HG--
branch : HEAD |
a2f250a332dfc1e6cd4ffd196c621eb9dbf7b8a1 |
|
15-Mar-2008 |
Timo Sirainen <tss@iki.fi> |
Initial CONDSTORE support.
--HG--
branch : HEAD |
20b9283d4af31e45e588014da427fb2dbcd3227a |
|
07-Jan-2008 |
Timo Sirainen <tss@iki.fi> |
Reverted fix for dropping expunged messages from flag updates. It's more
common that the UID range was actually meant to include the expunged
message.
--HG--
branch : HEAD |
200c36b2e0816ac102f7f9a55e6b1b7d75848256 |
|
06-Jan-2008 |
Timo Sirainen <tss@iki.fi> |
If a message was expunged but is still visible in a view, its flags/keywords
might have been updated if an uid range included the expunged message.
--HG--
branch : HEAD |
43d32cbe60fdaef2699d99f1ca259053e9350411 |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Renamed __attr_*__ to ATTR_*. Renamed __attrs_used__ to ATTRS_DEFINED.
--HG--
branch : HEAD |
c25356d5978632df6203437e1953bcb29e0c736f |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Changed .h ifdef/defines to use <NAME>_H format.
--HG--
branch : HEAD |
08f03325b34becc0e9f2bb130ac013bf54b9cca3 |
|
15-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Make sure extensions updates don't modify keywords.
--HG--
branch : HEAD |
7ded22760598b78ee29f9418eacc0abe3fb51055 |
|
02-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Only index extension indexes are now called "ext_id". For map extension
indexes use "map_ext_idx".
--HG--
branch : HEAD |
91d4c7b37580b031ed7b0154ae10c643521803f3 |
|
02-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Complain about unknown extension introduction IDs in log only once per sync.
--HG--
branch : HEAD |
a28a6267f48971117dec958b160deefd14ebb7a6 |
|
06-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Prevent copying record data when appending new messages.
--HG--
branch : HEAD |
b0be0bead3d6963149f7f2a9504b8ab5aced9af5 |
|
01-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
mail_index_map now contains pointer to index, so all functions taking map
parameter don't need index anymore.
--HG--
branch : HEAD |
e3689d0f073341e844638f34e1e4d0b7bb053cc8 |
|
28-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
Handle losing index file better. Handle fsck better.
--HG--
branch : HEAD |
e26a771fad55dfba4d5021d12ed5685c951d9b7b |
|
20-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
DEBUG: Verify header counters/lowwaters more often.
--HG--
branch : HEAD |
f81a4d2002da0db33d11ca694d3a91b3ee2a0fdb |
|
19-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
Update log_file_head_offset when replacing current syncing map.
--HG--
branch : HEAD |
9bc6e10d9c6d6ffb4a2ed49a3b3d2a180f2a87a3 |
|
18-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
View's counters can no longer be unreliable or broken.
--HG--
branch : HEAD |
edb8fb9a0de6a8df52049e9a5cc4f2933a7f25c6 |
|
15-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
Removed unused/unneeded code.
--HG--
branch : HEAD |
2a6af811ea3de3cf9e2f15e446674dd21b0705f3 |
|
11-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
Initial commit for major index file code cleanup.
- dovecot.index file isn't anymore required to be updated when syncing.
- Getting the latest index file mapping is now done always by reading
dovecot.index and then reading the latest changes from dovecot.index.log.
- mmap()ing dovecot.index file is slower than reading it, so it's not
currently done unless the file is at 256kB. This may change though.
- Some things are still broken.
--HG--
branch : HEAD |
aa0647f2debf0d48d504a321186f66c85596aaf4 |
|
22-May-2007 |
Timo Sirainen <tss@iki.fi> |
mail_index_sync_begin() returns now transaction directly so the syncing code
doesn't need to create it. It's also automatically committed/rollbacked.
--HG--
branch : HEAD |
2c677e9d339bc91d5b54376ba2986f71476c06ab |
|
09-Mar-2007 |
Timo Sirainen <tss@iki.fi> |
Don't set log sync position right after extension introduction, unless it's
at the end of the file. This should fix some "Extension reset without intro
prefix" errors.
--HG--
branch : HEAD |
945631faab2bf1aed8d95a1fd0c317a9ce153725 |
|
23-Jan-2007 |
Timo Sirainen <tss@iki.fi> |
Some mmap_disable=no fixes. Some debug additions. Some generic index fixes.
--HG--
branch : HEAD |
190237ce467d2389dfb809874b0fec86d3c7968d |
|
18-Jan-2007 |
Timo Sirainen <tss@iki.fi> |
Keywords were sometimes being re-added to the index even while they already
existed, causing the record size to bloat.
--HG--
branch : HEAD |
da985034a708db2f61394b30d117050ae6829ee5 |
|
11-Jul-2006 |
Timo Sirainen <tss@iki.fi> |
Added support for calling expunge handler for an extension even if the
extension isn't used in the opened index file. Added context-parameter to
the callback function. If the function returns -1, the sync is failed.
--HG--
branch : HEAD |
8d80659e504ffb34bb0c6a633184fece35751b18 |
|
28-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
Array API redesigned to work using unions. It now provides type safety
without having to enable DEBUG, as long as the compiler supports typeof().
Its API changed a bit. It now allows directly accessing the array contents,
although that's not necessarily recommended. Changed existing array usage to
be type safe in a bit more places. Removed array_t completely. Also did
s/modifyable/modifiable/.
--HG--
branch : HEAD |
9887c39c5ba429169389153ca99de49e084a73f0 |
|
30-May-2006 |
Timo Sirainen <tss@iki.fi> |
If we're synchronizing a view (and not index itself) from transaction log,
give a different error message and don't mark the file corrupted.
--HG--
branch : HEAD |
fa5957ffc9b676bfd649fa9953e63e72ee4ebeb4 |
|
03-May-2006 |
Timo Sirainen <tss@iki.fi> |
Index header's seen/recent/deleted counters weren't always correct after
syncing a view. This caused some problems with recent SEARCH optimizations,
eg. EXPUNGE not always working.
--HG--
branch : HEAD |
6ef7e31619edfaa17ed044b45861d106a86191ef |
|
13-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Added "bool" type and changed all ints that were used as booleans to bool.
--HG--
branch : HEAD |
020a39a395d2adb768e0179631b37bc78ecd9471 |
|
06-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Changed mail_index_view_sync_next() to return struct
mail_index_view_sync_rec records which only contain the type and UID range.
Makes it clearer that the caller won't get anything else, and flag updates
now don't need to update add_flags/remove_flags fields.
--HG--
branch : HEAD |
bb10ebcf076c959c752f583746d83805d7686df8 |
|
02-Apr-2005 |
Timo Sirainen <tss@iki.fi> |
Keywords are now stored in X-Keywords headers in mbox. Did several related
API changes to get better performance.
--HG--
branch : HEAD |
67d0d392020205daa85c5b109ab82d266eb6eefb |
|
02-Apr-2005 |
Timo Sirainen <tss@iki.fi> |
Added ARRAY_DEFINE_PTR() which needs to be used instead of ARRAY_DEFINE()
for pointers.
--HG--
branch : HEAD |
26ff8f8a4867bf8e9551a27a2de8c12cd138b065 |
|
14-Mar-2005 |
Timo Sirainen <tss@iki.fi> |
mail_index_sync_next() now returns keyword updates (now only thing left to
do is to fix maildir and mbox syncing to use them).
--HG--
branch : HEAD |
287ba82a8da3eaa473b5735d4eeac2fb4c5d8117 |
|
12-Mar-2005 |
Timo Sirainen <tss@iki.fi> |
Changed many buffers to arrays. Cleans up the code a lot.
--HG--
branch : HEAD |
faed8babca9914257f34fb2e603d74016d563b2d |
|
05-Feb-2005 |
Timo Sirainen <tss@iki.fi> |
Internal changes in how keywords are handled. struct mail_keywords isn't
automatically freed anymore, added *_keywords_free() for that.
--HG--
branch : HEAD |
6aa38bc4f4d4626a4a79abb59a9d415e4bd9b6b5 |
|
31-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Recent flags weren't being removed from index causing needless syncing.
--HG--
branch : HEAD |
e8acc691a14a6d0884c5ca9aa4d8507f1e082040 |
|
22-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Instead of using separate transaction sorting code for syncing, just put the
data from transactions into a temporary transaction and read it from there.
--HG--
branch : HEAD |
41e1c7380edda701719d8ce1fb4d465d2ec4c84d |
|
10-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Keyword fixes.
--HG--
branch : HEAD |
16c89b1260c9d07c01c83a9219424d3727069b2e |
|
26-Dec-2004 |
Timo Sirainen <tss@iki.fi> |
Initial support for keywords. Syncing to mbox/maildir doesn't work yet.
--HG--
branch : HEAD |
a0d34d3982507f513a9d800082481e9faeb9a943 |
|
07-Dec-2004 |
Timo Sirainen <tss@iki.fi> |
Moved extension syncing code to separate file.
--HG--
branch : HEAD |
5626ae5e3316eced244adb6485c0927f1c7fdc41 |
|
08-Nov-2004 |
Timo Sirainen <tss@iki.fi> |
Cache invalidating needed to hook into view syncing as well.
--HG--
branch : HEAD |
6a19e109ee8c5a6f688da83a86a7f6abeb71abdd |
|
06-Nov-2004 |
Timo Sirainen <tss@iki.fi> |
Removed cache_offset from mail_index_record and changed it to use extension
instead. Added possibility to register sync and expunge handlers for
extensions. Changed the way extension resets work: all extension updates
which were committed without having seen the reset are ignored.
--HG--
branch : HEAD |
2a734f36105e33ab452d057df6bc7a2b7d9f96f0 |
|
25-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Use separate sync offsets for internal/external transactions. Pending external
transactions are committed into index at the beginning of syncing, internal
ones aren't.
--HG--
branch : HEAD |
d143077bd518de129b8d446fb58e003903e50867 |
|
17-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
New way of handling extension introductions in transaction log.
--HG--
branch : HEAD |
757726d9acbd04cf0d0d4be8ce14e11525476a0b |
|
04-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
When we had dirty messages, we kept resyncing the whole mailbox constantly.
--HG--
branch : HEAD |
7394389230750c45b105cdefb5850c81cae8cdc0 |
|
05-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
fixing crashes from last changes
--HG--
branch : HEAD |
a40d26f83af808a0ea1e212c001d682a96d870b0 |
|
04-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Caching fixes and optimizations. Removed all network byte ordering code -
it's not worth the trouble and would require massive changes in indexing
code as well to be useful. Changed next_offset to prev_offset which is
updated while syncing index.
--HG--
branch : HEAD |
7e94cf9d70ce9fdeccb7a85ff400b899e6386f36 |
|
24-Jun-2004 |
Timo Sirainen <tss@iki.fi> |
Record size is allowed to change between index files. This will allow adding
extensions dynamically for existing indexes.
--HG--
branch : HEAD |
8603622835ec0566e49056ee839ef5992b48c46d |
|
30-May-2004 |
Timo Sirainen <tss@iki.fi> |
fixes
--HG--
branch : HEAD |
e06c0b65c16ccce69bbee009ead14d7d3d17a256 |
|
24-May-2004 |
Timo Sirainen <tss@iki.fi> |
Index header changes now go through transaction log. Removed the kludgy
parameters for mail_index_sync_end(). Removed code duplication of syncing
index root mapping and view mapping. Some fixes to handling uidvalidity and
nextuid in syncing.
--HG--
branch : HEAD |
b35f7104715edee0cfac6d46ab0b342033867eb7 |
|
22-May-2004 |
Timo Sirainen <tss@iki.fi> |
Set dirty flags through transaction log, not directly. Some other flag
fixes etc.
--HG--
branch : HEAD |
659fe5d24825b160cae512538088020d97a60239 |
|
22-May-2004 |
Timo Sirainen <tss@iki.fi> |
Transaction log contains only UIDs now, no more sequences which just mess up
everything.
--HG--
branch : HEAD |
d67f54632110cfb6aafe2d7cd1f99b031c0b208a |
|
10-May-2004 |
Timo Sirainen <tss@iki.fi> |
syncing fixes
--HG--
branch : HEAD |
fd3d711f219fd6813492acbe051e04327f0ca0f0 |
|
02-May-2004 |
Timo Sirainen <tss@iki.fi> |
Added support for setting dirty flags for messages (TODO: undirty..)
s/mail_index_record_flag/mail_cache_record_flag/
--HG--
branch : HEAD |
b7b81543899e306c71e6152516d8698416162bcb |
|
02-May-2004 |
Timo Sirainen <tss@iki.fi> |
Syncing optimizations.
--HG--
branch : HEAD |
0cb2e8eb55e70f8ebe1e8349bdf49e4cbe5d8834 |
|
27-Apr-2004 |
Timo Sirainen <tss@iki.fi> |
importing new index code. mbox still broken.
--HG--
branch : HEAD |