

![]() | Start a set with this search |
![]() | Include this search in one of my sets |
![]() | Exclude this search from one of my sets |
![]() | Permalink to these results Paste this link in email or IM: |
| Atom feed for tracking future search results Paste this URL into your reader: |
24 messages in net.sourceforge.lists.courier-usersRe: [courier-users] problem courier p...| From | Sent On | Attachments |
|---|---|---|
| Jérôme Bolliet | Jan 8, 2003 4:19 am | |
| Roland Schneider | Jan 8, 2003 6:05 am | |
| Jérôme Bolliet | Jan 9, 2003 3:51 am | |
| Xavier Beaudouin | Jan 9, 2003 4:28 am | |
| Roland Schneider | Jan 9, 2003 5:09 am | |
| Sam Varshavchik | Jan 9, 2003 5:11 am | |
| Xavier Beaudouin | Jan 9, 2003 5:54 am | |
| Jérôme Bolliet | Jan 9, 2003 6:37 am | |
| Brian Candler | Jan 9, 2003 7:00 am | |
| Jérôme Bolliet | Jan 9, 2003 7:46 am | |
| Brian Candler | Jan 9, 2003 7:59 am | |
| Xavier Beaudouin | Jan 9, 2003 8:04 am | |
| bi...@mics.org.uk | Jan 9, 2003 8:15 am | |
| Jérôme Bolliet | Jan 9, 2003 8:43 am | |
| Matt Pavlovich | Jan 9, 2003 8:56 am | |
| Brian Candler | Jan 9, 2003 9:06 am | |
| Xavier Beaudouin | Jan 9, 2003 9:46 am | |
| Gordon Messmer | Jan 9, 2003 2:22 pm | |
| Gordon Messmer | Jan 9, 2003 2:23 pm | |
| Sam Varshavchik | Jan 9, 2003 2:56 pm | |
| Sam Varshavchik | Jan 9, 2003 2:56 pm | |
| Xavier Beaudouin | Jan 9, 2003 3:49 pm | |
| Xavier Beaudouin | Jan 9, 2003 4:03 pm | |
| Jérôme Bolliet | Jan 9, 2003 11:43 pm |

![]() | Permalink for this message Paste this link in email or IM: |
![]() | Permalink for this thread Paste this link in email or IM: |
| Atom feed for this thread Paste this URL into your reader: |
| Subject: | Re: [courier-users] problem courier pop3d & load average | Actions... |
|---|---|---|
| From: | Roland Schneider (list...@serv.ch) | |
| Date: | Jan 8, 2003 6:05:39 am | |
| List: | net.sourceforge.lists.courier-users | |
--Jérôme Bolliet wrote on 08.01.2003 13:20 +0100: [...]
If i'm compare two SGI, one running Qmail POP3D and the other running Courier POP3D 1.6.1, each in production with 100-110 connection each, i have :
Qmail POP3D : IRIX64 vercors 6.5 IP27 load averages: 0.86 1.13 1.19 13:13:43 98 processes: 97 sleeping, 1 running 2 CPUs: 58.9% idle, 16.3% usr, 23.9% ker, 0.0% wait, 0.0% xbrk, 1.0% intr Memory: 1152M max, 878M avail, 733M free, 1024M swap, 1024M free swap
Courier POP3D :
IRIX64 maupassant 6.5 IP27 load averages: 55.41 59.31 70.62 13:05:57 149 processes: 146 sleeping, 1 zombie, 2 running 2 CPUs: 0.0% idle, 23.8% usr, 45.8% ker, 22.8% wait, 0.0% xbrk, 7.6% intr Memory: 1280M max, 877M avail, 706M free, 1024M swap, 1024M free swap
courierpop3d scans every single line on every login to compute the size with crlf as required/recommended by rfc.
I had a mailbox with ~2500 messages on a crypto-fs which took more than 12 cpu-seconds at each poll on a P200. 100 concurrent users scanning their pop3 continously explain the load of 55, only a faster raid would help somewhat.
qmail-pop3d simply returns the filesize from a stat, the only problem I know was with fetchmail about 2..3 years ago.
If you deliver with courier (or maildrop or deliverquota) the size of the file will be embedded into the filename, and allows very fast operation, even faster than qmail and polling the mailbox with the 2500 messages above takes less than one second.
The patch below is quite simple, and expects to find ',S=nnn' in the filename or will fall back to the traditional method. You also could add a stat there.
+++ imap/pop3dserver.c @@ -113,6 +113,9 @@ DIR *dirp; struct dirent *de; struct msglist *m; +// PATCH: dont scan every file, ignore rfc like qmail-pop3d +char *p; +long s;
if ((dirp=opendir("cur")) == 0) { @@ -140,7 +143,13 @@ m->next=msglist_l; msglist_l=m; msglist_cnt++; - calcsize(m); + + // PATCH: dont scan every file, ignore rfc like qmail-pop3d + // de->d_name =~ 1018021353.83146_0.host.dom,S=9249:2,S + if( (p=strstr(de->d_name,",S=")) && (s=atol(p+3))>0 ) + m->size = (off_t)s; + else // fallback to slow rfc-conformant scan + calcsize(m); } closedir(dirp); }







