Questions about hardlinks, alternate storage and compression

Gionatan Danti g.danti at assyoma.it
Mon Jul 13 09:48:08 UTC 2015


Hi Javier,
thanks for your reply.

I already checked SIS and, while interesting, is not what I want, because:
1) it can be difficult to restore a single message/attachment from a backup
2) only the attachments, and not the entire messages, are deduped.

Message-based hardlinks really exists for a reason. The good news is 
that I found _why_ they are not working: it depends from how dovecot and 
its sieve plugin (pigenhole) interact. Basically, if I define anything 
for the before_sieve and after_sieve variables, dovecot stops creating 
hardlinks for multiple copies of the same message.

On the other hand, private (per-user) sieve file works without 
interfering with hardlinks. In a similar manner, disabling sieve also 
permits dovecot to create multiple hardlinks for a single message.

Does someone know if newer dovecot versions change anything in this regard?

Thank you all.

On 13/07/15 11:10, Javier Miguel Rodríguez wrote:
> Search about "single instance storage dovecot". This is what you need.
>
> Regards
>
> Javier
>
> On 27/06/2015 18:18, Gionatan Danti wrote:
>> Hi all,
>> I have some questions about hardlinks, alternate storage and
>> compression. I already scanned the list for related information and I
>> have an idea of how things works, but I would like to have a definite
>> answer.
>>
>> System spec:
>> - CentOS 6.6 x64
>> - dovecot-2.0.9-8.el6_6.4.x86_64 RPM package/version
>> - sdbox mail store
>>
>> 1) About hardlinks: when sending the same message to two different
>> recipients, I see that the two u.x files are created as two different
>> files. Diffing them, I see that the only difference is a single char
>> (see [1] for an example). My questions are:
>>   a) it is possible to tell dovecot to create a single file + a single
>> hardlink (linkref=2)? As other IMAP servers support that features (eg:
>> Cyrus, CommunigatePro, etc) I am wondering if I missed something in
>> configuring dovecot...
>>   b) If it is not possible, can I run a script that compare the
>> various files and substitute equal ones (minus the changing line) with
>> hardlinks, or it will confuse dovecot? As a side note, why the
>> changing line ever exists?
>>
>> 2) About alternate storage and compression: actually, I use a single
>> mail_location without compression. I would like to have an alternate
>> storage and to enable compression on it only, leaving the main
>> location without compression. I if understand it correctly, it
>> _should_ be done using a command similar to "doveadm -Dv -o
>> "plugin/zlib_save=gz" altmove -uu testuser sentbefore 8d". I'm right
>> thinking that it should work? I will really end with a primary
>> uncompressed mail store and an alternate, zlib-compressed one?
>>
>> Thank you all and sorry if I did some naive questions.
>>
>> [1]
>> 63c63
>> < G2fd0811c64be8e553d970000eaa8309f
>> ---
>>> G2ed0811c64be8e553d970000eaa8309f
>>
>>
>>
>

-- 
Danti Gionatan
Supporto Tecnico
Assyoma S.r.l. - www.assyoma.it
email: g.danti at assyoma.it - info at assyoma.it
GPG public key ID: FF5F32A8


More information about the dovecot mailing list