Matthew,

I've fixed this by making the filtered stream persistent in the
imapsession. Should speed up things quite a bit.

Paul J Stevens wrote:
> Matthew Sayler wrote:
> 
>>This is unsurprising, because dbmail_imap_session_printf does a pretty
>>huge amount of work on every call:
>>
>>1) vprintf the message
>>2) flush the output fd
>>3) dup the fd and create a new g_mime_stream_fs on it
>>4) create a new stream filter
>>5) add the filter to the stream
>>6) write the string (yay!)
>>7) free all the stuff it just created
> 
> 
> That's definitely a sub-optimal situation there. Moving the whole stream
> filter to clientinfo_t will solve this. That way we only need to
> initialize/cleanup once. I'll look into this.
> 


-- 
  ________________________________________________________________
  Paul Stevens                                      paul at nfg.nl
  NET FACILITIES GROUP                     GPG/PGP: 1024D/11F8CD31
  The Netherlands________________________________http://www.nfg.nl

Reply via email to