The memory settings were set by someone else, I assumed he had a reason, but he could have been overzealous in his pursuit. Though we do have 230 domains, and process a lot of mail.

Anyways, I looked at the configuration files, and there are two salient differences:

(1) the default uses files for storage (/var/) where my config uses the database for everything.

(2) Mailets. The default has many more mailets. Has the code for either matcher/mailet RecipientIsLocal/LocalDelivery changed between 2.2.0 and 2.3.1? If the mailet uses the same logic to look up users as the pop3server, then it makes no sense why one would succeed and the other fail.

Below is a pruned diff of config files, i think a quick glance shows the differences pretty well.

Maybe I should try reconstructing my config file by editing the default? If you look at the differences below, at least I couldn't see any appreciable differences. Maybe you can, i'm no James expert.

DK

==================================================

8,9c10,11
<       <postmaster>[EMAIL PROTECTED]</postmaster>
<       <servernames autodetect="false" autodetectIP="true">
---
>       <postmaster>[EMAIL PROTECTED]</postmaster>
>       <servernames autodetect="true" autodetectIP="true">
14c18
<          <repository destinationURL="db://maildb/inbox/" type="MAIL"/>
---
> <repository destinationURL="file://var/mail/inboxes/" type="MAIL"/>
31c34
<       <threads> 50 </threads>
---
>       <threads> 10 </threads>
37,39c38,40
< <mailet match="RemoteAddrInNetwork=xxx.xxx.xxx.xxx" class="ToProcessor">
<             <processor> transport </processor>
<          </mailet>
41,43c42,43
< <mailet match="InSpammerBlacklist=dnsbl.njabl.org" class="ToProcessor">
<             <processor> spam </processor>
< <notice>550 Requested action not taken: rejected - see http://njabl.org/ </notice>
---
> <mailet match="HasMailAttributeWithValue=org.apache.james.infected, true" class="ToProcessor">
>             <processor> virus </processor>
46,48c46,47
< <mailet match="InSpammerBlacklist=relays.ordb.org" class="ToProcessor">
<             <processor> spam </processor>
< <notice>550 Requested action not taken: rejected - see http://www.ordb.org/ </notice>
---
>          <mailet match="SMTPAuthSuccessful" class="ToProcessor">
>             <processor> transport </processor>
51,53c50,52
< <mailet match="InSpammerBlacklist=sbl-xbl.spamhaus.org" class="ToProcessor">
<             <processor> spam </processor>
< <notice>550 Requested action not taken: rejected - see http://www.spamhaus.org/ </notice>
---
>          <mailet match="InSpammerBlacklist=query.bondedsender.org."
>                  class="ToProcessor">
>            <processor> transport </processor>
56,60c55,60
< <mailet match="InSpammerBlacklist=dnsbl.ahbl.org" class="ToProcessor">
<             <processor> spam </processor>
< <notice>550 Requested action not taken: rejected - see http://www.ahbl.org/ </notice>
<          </mailet>
<
---
>          <mailet match="InSpammerBlacklist=dnsbl.njabl.org."
>                  class="ToProcessor">
>            <processor> spam </processor>
> <notice>550 Requested action not taken: rejected - see http://njabl.org/ </notice>
>          </mailet>
>
67,68c67,68
<          <mailet match="All" class="ToRepository">
< <repositoryPath> db://maildb/deadletter/error </ repositoryPath>
---
>          <mailet match="All" class="ToRepository">
>             <repositoryPath> file://var/mail/error/</repositoryPath>
73,74c73,80
<          <mailet match="All" class="JDBCVirtualUserTable">
<             <table>db://maildb/VirtualUserTable</table>
---
>          <mailet match="SMTPAuthSuccessful" class="SetMimeHeader">
>             <name>X-UserIsAuth</name>
>             <value>true</value>
>          </mailet>
>
> <mailet match="HasMailAttribute=org.apache.james.SMIMECheckSignature" class="SetMimeHeader">
>             <name>X-WasSigned</name>
>             <value>true</value>
89,91c96
<             <outgoing> db://maildb/spool/outgoing </outgoing>
<             <delayTime>  60000 </delayTime>
<             <delayTime>  60000 </delayTime>
---
>             <outgoing> file://var/mail/outgoing/ </outgoing>
99,100c104
<             <deliveryThreads> 30 </deliveryThreads>
<             <debug>false</debug>
---
>             <deliveryThreads> 1 </deliveryThreads>
101a106
>             <bounceProcessor>bounces</bounceProcessor>
107c113
< <repositoryPath> db://maildb/deadletter/spam </ repositoryPath>
---
>             <repositoryPath>file://var/mail/spam/</repositoryPath>
110a117,130
>       <processor name="virus">
>          <mailet match="All" class="SetMailAttribute">
> <org.apache.james.infected>true, bouncing</ org.apache.james.infected>
>          </mailet>
>
>          <mailet match="SMTPAuthSuccessful" class="Bounce">
>             <inline>heads</inline>
>             <attachment>none</attachment>
> <notice> Warning: We were unable to deliver the message below because it was found infected by virus(es). </notice>
>          </mailet>
>
>          <mailet match="All" class="Null" />
>       </processor>
>
112,113c132,133
<          <mailet match="All" class="ToRepository">
< <repositoryPath> db://maildb/deadletter/address-error </ repositoryPath>
---
>          <mailet match="All" class="ToRepository">
> <repositoryPath> file://var/mail/address-error/</ repositoryPath>
117,119c137,139
<       <processor name="relay-denied">
<          <mailet match="All" class="ToRepository">
< <repositoryPath> db://maildb/deadletter/relay-denied </ repositoryPath>
---
>       <processor name="relay-denied">
>          <mailet match="All" class="ToRepository">
> <repositoryPath>file://var/mail/relay-denied/</ repositoryPath>
121a142,147
>
>       <processor name="bounces">
>          <mailet match="All" class="DSNBounce">
>             <passThrough>false</passThrough>
>           </mailet>
>       </processor>
128a154
>       <autodiscover>true</autodiscover>
129a156
>       <maxcachesize>50000</maxcachesize>
132c159
<    <remotemanager>
---
>    <remotemanager enabled="true">
135c162
<          <helloName autodetect="false">out.myserver.net</helloName>
---
>          <helloName autodetect="true">myMailServer</helloName>
146c173,174
<          <helloName autodetect="false">myserver.net</helloName>
---
>          <helloName autodetect="true">myMailServer</helloName>
>          <connectiontimeout>120000</connectiontimeout>
153,155c181,184
<          <helloName autodetect="false">out.myserver.net</helloName>
<          <authRequired>true</authRequired>
<          <maxmessagesize>6400</maxmessagesize>
---
>          <helloName autodetect="true">myMailServer</helloName>
>          <connectiontimeout>360000</connectiontimeout>
>          <authorizedAddresses>127.0.0.0/8</authorizedAddresses>
>          <maxmessagesize>0</maxmessagesize>
183c213
<             <threadCount>2</threadCount>
---
>             <threadCount>1</threadCount>
188a219,220
> <spoolrepository destinationURL="file://var/mail/spool/" type="SPOOL"/>
304d331
< <spoolrepository destinationURL="db://maildb/spool/spool" type="SPOOL"/>
306,307c333,334
< <repository name="LocalUsers" class="org.apache.james.userrepository.JamesUsersJdbcRepository" destinationURL="db://maildb/users">
<          <sqlFile>file://conf/sqlResources.xml</sqlFile>
---
> <repository name="LocalUsers" class="org.apache.james.userrepository.UsersFileRepository">
>          <destination URL="file://var/users/"/>
334,335c342,343
<       <idle-timeout>5000</idle-timeout>
<       <max-connections>40</max-connections>
---
>       <idle-timeout>300000</idle-timeout>
>       <max-connections>30</max-connections>
353c360
<          <max-threads>250</max-threads>
---
>          <max-threads>100</max-threads>



On Dec 12, 2007, at 10:18 PM, Stefano Bagnara wrote:

Dain Kaplan ha scritto:
The settings i copied over from the 2.2.0 installation are: - Xms1536m
-Xmx2048m

1.5GB and 2GB ?? what kind of use do you make of JAMES ?
I manage almost 1 million mail per day with an Xmx set to 300MB, with
2.3.1....

The system has 4GB of memory, and James is the only thing running on it.
Using the -client option allowed me to confirm that moving the object
store repositories did not resolve the issue (thanks for that, I was
just about to ask about upgrading the jvm)

It is a known java issue that for big memories (2-4GB) it has allocation
problems during the hotspot compiler thread. If you search google you
will find some reference.

Also, when James 2.3.1 starts up and I try to POP, incredibly old (years
old) messages are fetched.  Could this be a symptom of why the mails
don't make it to the mailbox properly?  Every time i try switching
between the two versions, I am copying the var/ directories from 2.2.0
to 2.3.1.

This probably depends on your POP3 client. It probably make use of some
POP3 welcome message informations and when the server changes its
welcome message the pop3 client resets its memory about what it already downloaded in past. This "memory" is on the clients side: pop3 does not
have a concept or read and unread messages. (it had, once, but it is
deprecated and JAMES never supported it).

Is there anything else missing from the config file?  I asked before,
but smtphandlerchainConfig isn't needed?

smtphandlerchainConfig is not needed. There is a default handlerchain
that is used when that config is not included.

Currently I can't really understand why it doesn't work: no one ever had
a similar problem when upgraded. Double check your config.xml against
the official config.xml to understand if you may have forgot some
important piece.

Stefano



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to