Hello,

I experience some strange and unexpected behavior with my James
server. As I am in development, the james server runs in localhost
with two localhost users (user1 and user2)
When I send a message from user1 to user2 and vica versa (using a very
simple java class which sends test mail), the mail stays in the spool
table indefinitely and the records in the inbox table grow every
couple of minutes. It seems that James is trying to deliver the
messages without removing it from the spool.

I pretty much did an out-of-the-box installation of James without any
modifications.

Attached my config.xml file. Anything I am doing wrong or am I missing
some processing mailets?

Cheers,

-Rogier



<!ENTITY listserverStores SYSTEM "../conf/james-liststores.xml">
<!ENTITY fetchmailConfig SYSTEM "../conf/james-fetchmail.xml">
<!ENTITY smtphandlerchainConfig SYSTEM "../conf/james-smtphandlerchain.xml">
]>

<config>
   <James>
      <postmaster>[EMAIL PROTECTED]</postmaster>
      <servernames autodetect="true" autodetectIP="true">
         <servername>localhost</servername>
      </servernames>
      <usernames ignoreCase="true" enableAliases="true"
enableForwarding="true"/>
      <inboxRepository>
         <repository destinationURL="db://maildb/inbox/" type="MAIL"/>
      </inboxRepository>
   </James>

   <mailetpackages>
      <mailetpackage>org.apache.james.transport.mailets</mailetpackage>
      <mailetpackage>org.apache.james.transport.mailets.smime</mailetpackage>
   </mailetpackages>
   <matcherpackages>
      <matcherpackage>org.apache.james.transport.matchers</matcherpackage>
      <matcherpackage>org.apache.james.transport.matchers.smime</matcherpackage>
   </matcherpackages>

   <spoolmanager>
      <threads> 10 </threads>
      <processor name="root">
         <mailet match="All" class="PostmasterAlias"/>
         <mailet match="RelayLimit=30" class="Null"/>
         <mailet
match="HasMailAttributeWithValue=org.apache.james.infected, true"
class="ToProcessor">
            <processor> virus </processor>
         </mailet>
         <mailet match="HasMailAttribute=spamChecked" class="ToProcessor">
            <processor> transport </processor>
         </mailet>
         <mailet match="All" class="SetMailAttribute">
            <spamChecked>true</spamChecked>
         </mailet>
         <mailet match="SMTPAuthSuccessful" class="ToProcessor">
            <processor> transport </processor>
         </mailet>
         <mailet match="InSpammerBlacklist=query.bondedsender.org."
                 class="ToProcessor">
           <processor> transport </processor>
         </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>
         <mailet match="All" class="ToProcessor">
            <processor> transport </processor>
         </mailet>
      </processor>
      <processor name="error">
         <mailet match="All" class="ToRepository">
           <repositoryPath> db://maildb/deadletter/error </repositoryPath>
         </mailet>
      </processor>

      <processor name="transport">
         <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>
         </mailet>

         <mailet match="RecipientIsLocal" class="LocalDelivery"/>
         <mailet match="HostIsLocal" class="ToProcessor">
            <processor> local-address-error </processor>
            <notice>550 - Requested action not taken: no such user here</notice>
         </mailet>
         <mailet match="RemoteAddrNotInNetwork=127.0.0.1" class="ToProcessor">
            <processor> relay-denied </processor>
            <notice>550 - Requested action not taken: relaying denied</notice>
         </mailet>
         <mailet match="All" class="RemoteDelivery">
            <outgoing> db://maildb/spool/outgoing </outgoing>
            <delayTime>  5 minutes </delayTime>
            <delayTime> 10 minutes </delayTime>
            <delayTime> 45 minutes </delayTime>
            <delayTime>  2 hours </delayTime>
            <delayTime>  3 hours </delayTime>
            <delayTime>  6 hours </delayTime>
            <maxRetries> 25 </maxRetries>
            <deliveryThreads> 1 </deliveryThreads>
            <sendpartial>false</sendpartial>
            <bounceProcessor>bounces</bounceProcessor>
         </mailet>
      </processor>
      <processor name="spam">
         <mailet match="All" class="ToRepository">
            <repositoryPath>db://maildb/deadletter/spam </repositoryPath>
         </mailet>
      </processor>
      <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>
      <processor name="local-address-error">
         <mailet match="All" class="ToRepository">
            <repositoryPath>
db://maildb/deadletter/address-error</repositoryPath>
         </mailet>
      </processor>
      <processor name="relay-denied">
         <mailet match="All" class="ToRepository">
            <repositoryPath>db://maildb/deadletter/relay-denied</repositoryPath>
         </mailet>
      </processor>
      <processor name="bounces">
         <mailet match="All" class="DSNBounce">
            <passThrough>false</passThrough>
          </mailet>
      </processor>
   </spoolmanager>
   <dnsserver>
      <servers>
          <server>192.168.0.51</server>
      </servers>
      <autodiscover>true</autodiscover>
      <authoritative>false</authoritative>
      <maxcachesize>50000</maxcachesize>
   </dnsserver>
   <remotemanager enabled="true">
      <port>4555</port>
      <handler>
         <helloName autodetect="true">myMailServer</helloName>
         <administrator_accounts>
            <account login="****" password="****"/>
         </administrator_accounts>
         <connectiontimeout> 60000 </connectiontimeout>
      </handler>
   </remotemanager>
   <pop3server enabled="true">
      <port>110</port>
      <handler>
         <helloName autodetect="true">myMailServer</helloName>
         <connectiontimeout>120000</connectiontimeout>
      </handler>
   </pop3server>

   <smtpserver enabled="true">
      <port>25</port>
      <handler>
         <helloName autodetect="true">myMailServer</helloName>
         <connectiontimeout>360000</connectiontimeout>
         <authorizedAddresses>127.0.0.0/8</authorizedAddresses>
         <maxmessagesize>0</maxmessagesize>
      </handler>
   </smtpserver>
   <nntpserver enabled="true">
      <port>119</port>
      <handler>
         <helloName autodetect="true">myMailServer</helloName>
         <connectiontimeout>120000</connectiontimeout>
         <authRequired>false</authRequired>
      </handler>
   </nntpserver>

   <nntp-repository>
      <readOnly>false</readOnly>
      <rootPath>file://var/nntp/groups</rootPath>
      <tempPath>file://var/nntp/temp</tempPath>
      <articleIDPath>file://var/nntp/articleid</articleIDPath>
      <articleIDDomainSuffix>news.james.apache.org</articleIDDomainSuffix>
      <newsgroups>
         <newsgroup>org.apache.james.dev</newsgroup>
         <newsgroup>org.apache.james.user</newsgroup>
         <newsgroup>org.apache.avalon.dev</newsgroup>
         <newsgroup>org.apache.avalon.user</newsgroup>
      </newsgroups>
      <spool>
         <configuration>
            <spoolPath>file://var/nntp/spool</spoolPath>
            <threadCount>1</threadCount>
            <threadIdleTime>60000</threadIdleTime>
         </configuration>
      </spool>
   </nntp-repository>
   <spoolrepository destinationURL="db://maildb/spool/spool" type="SPOOL"/>
   <mailstore>
      <repositories>
         <repository
class="org.apache.james.mailrepository.AvalonMailRepository">
            <protocols>
               <protocol>file</protocol>
            </protocols>
            <types>
               <type>MAIL</type>
            </types>
         </repository>
         <repository
class="org.apache.james.mailrepository.AvalonSpoolRepository">
            <protocols>
               <protocol>file</protocol>
            </protocols>
            <types>
               <type>SPOOL</type>
            </types>
         </repository>
         <repository class="org.apache.james.mailrepository.JDBCMailRepository">
            <protocols>
               <protocol>db</protocol>
            </protocols>
            <types>
               <type>MAIL</type>
            </types>
            <config>
               <sqlFile>file://conf/sqlResources.xml</sqlFile>
            </config>
         </repository>
         <repository
class="org.apache.james.mailrepository.JDBCSpoolRepository">
            <protocols>
               <protocol>db</protocol>
            </protocols>
            <types>
               <type>SPOOL</type>
            </types>
            <config>
               <sqlFile>file://conf/sqlResources.xml</sqlFile>
               <maxcache>1000</maxcache>
            </config>
         </repository>
         <repository class="org.apache.james.mailrepository.JDBCMailRepository">
            <protocols>
               <protocol>dbfile</protocol>
            </protocols>
            <types>
               <type>MAIL</type>
            </types>
            <config>
               <sqlFile>file://conf/sqlResources.xml</sqlFile>
               <filestore>file://var/dbmail</filestore>
            </config>
         </repository>
         <repository
class="org.apache.james.mailrepository.JDBCSpoolRepository">
            <protocols>
               <protocol>dbfile</protocol>
            </protocols>
            <types>
               <type>SPOOL</type>
            </types>
            <config>
               <sqlFile>file://conf/sqlResources.xml</sqlFile>
               <filestore>file://var/dbmail</filestore>
               <maxcache>1000</maxcache>
            </config>
         </repository>
         <repository class="org.apache.james.mailrepository.MBoxMailRepository">
            <protocols>
               <protocol>mbox</protocol>
            </protocols>
            <types>
               <type>MAIL</type>
            </types>
         </repository>
         <repository
class="org.apache.james.mailrepository.filepair.File_Persistent_Object_Repository">
            <protocols>
               <protocol>file</protocol>
            </protocols>
            <types>
               <type>OBJECT</type>
            </types>
            <models>
               <model>SYNCHRONOUS</model>
               <model>ASYNCHRONOUS</model>
               <model>CACHE</model>
            </models>
         </repository>
         <repository
class="org.apache.james.mailrepository.filepair.File_Persistent_Stream_Repository">
            <protocols>
               <protocol>file</protocol>
            </protocols>
            <types>
               <type>STREAM</type>
            </types>
            <models>
               <model>SYNCHRONOUS</model>
               <model>ASYNCHRONOUS</model>
               <model>CACHE</model>
            </models>
         </repository>
      </repositories>
   </mailstore>
   <users-store>
      <repository name="LocalUsers"
class="org.apache.james.userrepository.JamesUsersJdbcRepository"
                destinationURL="db://maildb/users">
         <sqlFile>file://conf/sqlResources.xml</sqlFile>
      </repository>
   </users-store>
      <database-connections>
     <data-source name="maildb"
class="org.apache.james.util.mordred.JdbcDataSource">
         <driver>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver>
         <dburl>jdbc:sqlserver://********;databaseName=****</dburl>
         <user>*****</user>
         <password>**********</password>
         <max>20</max>
      </data-source>
   </database-connections>
   <connections>
      <idle-timeout>300000</idle-timeout>
      <max-connections>30</max-connections>
   </connections>
   <sockets>
      <server-sockets>
         <factory name="plain"
class="org.apache.avalon.cornerstone.blocks.sockets.DefaultServerSocketFactory"/>
      </server-sockets>
      <client-sockets>
         <factory name="plain"
class="org.apache.avalon.cornerstone.blocks.sockets.DefaultSocketFactory"/>
      </client-sockets>
   </sockets>
   <thread-manager>
      <thread-group>
         <name>default</name>
         <priority>5</priority>
         <is-daemon>false</is-daemon>
         <max-threads>100</max-threads>
         <min-threads>20</min-threads>
         <min-spare-threads>20</min-spare-threads>
      </thread-group>
   </thread-manager>
</config>

-- 
Rogier Doekes
[EMAIL PROTECTED]

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

Reply via email to