Daniel Urstöger wrote:
> 
> Paul J Stevens schrieb:
>> Michael Monnerie wrote:
>>> Error:[sql] dbpgsql.c,db_query(+287): query failed [INSERT INTO
>>> dbmail_headername (headername) VALUES
>>> ('x-valkarton-mailscanner-spamscore')] : [FEHLER:  duplizierter
>>> Schlüssel verletzt Unique-Constraint »dbmail_headername_1« ]
>>>
>>> How could this happen? I did a REINDEX now, there are no problems.
>>
>> This could be a race condition where two dbmail-lmtpd or dbmail-smtp
>> processes
>> try to store the same headername at the same time.
>>
>> Solving this type of concurrency issue is a driver for 2.3+ development..
>>
> 
> Paul I have two questions here:
> 
> I suppose this problem is not much of an issue or does it cause further
> damage?

It will abort the header-caching.

> And why do you store the headername and headervalue for an email in an
> extra table? is that for better performance for the IMAP daemon when
> just fetching a few flags or has that another purpose?

This was discussed at great length when header caching was first conceived. It
was determined that storing headernames and values in separate tables would
reduce storage and speed up lookups quite substantially.

It is not used for storing flags. System flags are stored as INT columns in the
messages table, keywords are stored in a separate table (in 2.3+) that has a key
constraint on the messages table.


-- 
  ________________________________________________________________
  Paul Stevens                                      paul at nfg.nl
  NET FACILITIES GROUP                     GPG/PGP: 1024D/11F8CD31
  The Netherlands________________________________http://www.nfg.nl
_______________________________________________
DBmail mailing list
[email protected]
https://mailman.fastxs.nl/mailman/listinfo/dbmail

Reply via email to