-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi, sis attachment deduplication is broken in 2.2.16 upwards. It is caused by this commit. https://github.com/dovecot/core/commit/664bf3e236c214aee86294483c379e4fa66c2e63 in src/lib-fs/fs-sis.c function fs_sis_try_link() is comparation of inodes of hash files. Because fs_stat() after that commit use fstat() on open fd of temporary file instead of stat on filename. But that temporary file has differnt inode. It not cause any corruption but it will not save any space. Because every duplicate attachment will be in separate file. - -- [ Ohodnotte kvalitu mailu: https://www.nicereply.com/websupport/4afafd34 ] Pavel Stano | Troubleshooter http://WebSupport.sk *** BERTE A VYCHUTNAVAJTE *** -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJW3XkgAAoJEJDF0QA0DLajmJ0QAIZTFTkN0KMJDT3I/rft5Dpp QYM6kyTVdr/FNeR200LLPjXsHXHF8hhoxkQbpfq1D9ceQO0ERDVaL6knKK7/j5Zj EffO+ercXUkcJbE8iYRNcbdpXltUjgYYzgOha7ULiCk0VxROxcujThNTGCDHY8g/ zHXre2aW7hQ8o1yjjhITIOU5WsENSI8PbFktvvWF6OEMVwv8EnaEckJTRGwEl2fu FEPSV+eQg6jHTs/fgiMxAbd4DSzRa2tkeOrw4l4oprtIuthU5hAi9G42Dk+IFvXk k6imnsI6QMPhlrHCm+8Ym+8FwCv7S75JJ/iRp/sS2zHuEwvfwFcVi8pBSjeV50kZ Z0Xglm35tFrHNLAFFb1CVnEw6ftQpuMEE7o/IYrLMVVdPB0C/1IP0s9ucKK0ccQ0 Ld9RULBo6jLgxsVodEntgtMABkfvxybut/tF3O4mm/iN0rDzlOZHMeQ+lsgcdrZd J7h3ow/J0OYosR7CfRFLA875ue2g4GsF+FFP9/oKx/1TkHXJNXpKAhhjOCnSgxHe h44bDrpJyYKlrCaLcOjQM4iUO0upBPpepOnJu50Fde1hNmyr4NaiHLTo23OGX/v3 kEA6xEgmTsXyr3kjhg51/0tdradqKvih2yIptmhpw8P+RWp+ceMoDX2hF95EGB8q FGklrxdxCIoGPAZTOVyf =imfX -----END PGP SIGNATURE-----
On 08 Mar 2016, at 01:50, Pavel Stano <stanojr at websupport.sk> wrote:> > > sis attachment deduplication is broken in 2.2.16 upwards. > It is caused by this commit. > https://github.com/dovecot/core/commit/664bf3e236c214aee86294483c379e4fa66c2e63 > > in src/lib-fs/fs-sis.c function fs_sis_try_link() is comparation of > inodes of hash files. > Because fs_stat() after that commit use fstat() on open fd of temporary > file instead of stat on filename. But that temporary file has differnt > inode. > > It not cause any corruption but it will not save any space. > Because every duplicate attachment will be in separate file.Thanks, fixed: https://github.com/dovecot/core/commit/3b39022ea0513363241cf852b7d454c841584ea1
On 3/9/2016 9:02 PM, Timo Sirainen <tss at iki.fi> wrote:> On 08 Mar 2016, at 01:50, Pavel Stano <stanojr at websupport.sk> wrote: >> >> sis attachment deduplication is broken in 2.2.16 upwards. >> It is caused by this commit. >> https://github.com/dovecot/core/commit/664bf3e236c214aee86294483c379e4fa66c2e63 >> >> in src/lib-fs/fs-sis.c function fs_sis_try_link() is comparation of >> inodes of hash files. >> Because fs_stat() after that commit use fstat() on open fd of temporary >> file instead of stat on filename. But that temporary file has differnt >> inode. >> >> It not cause any corruption but it will not save any space. >> Because every duplicate attachment will be in separate file. > Thanks, fixed: https://github.com/dovecot/core/commit/3b39022ea0513363241cf852b7d454c841584ea1So, after the fix is applied, does dovecot silently delete the duplicated files, or is there a command that needs to be run manually?
Apparently Analagous Threads
- sis deduplication broken from 2.2.16 upwards
- attachment sis + EMLINK (too many links) = segfault bug (2.2.12)
- Remove all messages in a mailbox
- replication + attachment sis + zlib bug ? (HEAD version from xi.rename-it.nl)
- mdbox with mail_attachment_dir per user in 2.2.12