You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "Norman Maurer (JIRA)" <se...@james.apache.org> on 2011/09/18 21:31:08 UTC

[jira] [Created] (JAMES-1320) MimeMessageWrapper.writeTo(...) calls saveChanges() even if not needed

MimeMessageWrapper.writeTo(...) calls saveChanges() even if not needed
----------------------------------------------------------------------

                 Key: JAMES-1320
                 URL: https://issues.apache.org/jira/browse/JAMES-1320
             Project: JAMES Server
          Issue Type: Improvement
    Affects Versions: 3.0-beta3
            Reporter: Norman Maurer
            Assignee: Norman Maurer
             Fix For: 3.0-beta4


When MimeMessageWrapper.writeTo(...) is called we call saveChanges() everytime even when the messagewas not modified at all. This is not neeed and also can throw exceptions on malformated messages.

See the related stacktrace:
org.apache.james.queue.api.MailQueue$MailQueueException: Unable to enqueue mail;
  nested exception is:
        javax.mail.internet.ParseException: Expected ';', got "windows-1250"
        at org.apache.james.queue.file.FileMailQueue.enQueue(FileMailQueue.java:193)
        at org.apache.james.queue.file.FileMailQueue.enQueue(FileMailQueue.java:230)
        at org.apache.james.smtpserver.SendMailHandler.onMessage(SendMailHandler.java:64)
        at org.apache.james.smtpserver.DataLineJamesMessageHookHandler.processExtensions(DataLineJamesMessageHookHandler.java:178)
        at org.apache.james.smtpserver.DataLineJamesMessageHookHandler.onLine(DataLineJamesMessageHookHandler.java:96)
        at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:76)
        at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:61)
        at org.apache.james.protocols.smtp.core.ReceivedDataLineFilter.onLine(ReceivedDataLineFilter.java:54)
        at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:76)
        at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:61)
        at org.apache.james.protocols.smtp.core.esmtp.MailSizeEsmtpExtension.onLine(MailSizeEsmtpExtension.java:147)
        at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:76)
        at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:61)
        at org.apache.james.protocols.impl.LineHandlerUpstreamHandler.messageReceived(LineHandlerUpstreamHandler.java:57)
        at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
        at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)
        at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)
        at org.jboss.netty.handler.execution.ChannelEventRunnable.run(ChannelEventRunnable.java:69)
        at org.jboss.netty.handler.execution.OrderedMemoryAwareThreadPoolExecutor$ChildExecutor.run(OrderedMemoryAwareThreadPoolExecutor.java:316)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:679)
Caused by: javax.mail.internet.ParseException: Expected ';', got "windows-1250"
        at javax.mail.internet.ParameterList.<init>(ParameterList.java:289)
        at javax.mail.internet.ContentType.<init>(ContentType.java:114)
        at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1322)
        at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1021)
        at javax.mail.internet.MimeMultipart.updateHeaders(MimeMultipart.java:419)
        at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1345)
        at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1021)
        at javax.mail.internet.MimeMultipart.updateHeaders(MimeMultipart.java:419)
        at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1345)
        at javax.mail.internet.MimeMessage.updateHeaders(MimeMessage.java:2106)
        at javax.mail.internet.MimeMessage.saveChanges(MimeMessage.java:2074)
        at org.apache.james.core.MimeMessageWrapper.writeTo(MimeMessageWrapper.java:295)
        at org.apache.james.core.MimeMessageWrapper.writeTo(MimeMessageWrapper.java:290)
        at org.apache.james.core.MimeMessageWrapper.writeTo(MimeMessageWrapper.java:286)
        at org.apache.james.core.MimeMessageWrapper.writeTo(MimeMessageWrapper.java:271)
        at org.apache.james.core.MimeMessageCopyOnWriteProxy.writeTo(MimeMessageCopyOnWriteProxy.java:184)
        at org.apache.james.queue.file.FileMailQueue.enQueue(FileMailQueue.java:161)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[jira] [Resolved] (JAMES-1320) MimeMessageWrapper.writeTo(...) calls saveChanges() even if not needed

Posted by "Norman Maurer (JIRA)" <se...@james.apache.org>.
     [ https://issues.apache.org/jira/browse/JAMES-1320?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Norman Maurer resolved JAMES-1320.
----------------------------------

    Resolution: Fixed

done

> MimeMessageWrapper.writeTo(...) calls saveChanges() even if not needed
> ----------------------------------------------------------------------
>
>                 Key: JAMES-1320
>                 URL: https://issues.apache.org/jira/browse/JAMES-1320
>             Project: JAMES Server
>          Issue Type: Improvement
>    Affects Versions: 3.0-beta3
>            Reporter: Norman Maurer
>            Assignee: Norman Maurer
>             Fix For: 3.0-beta4
>
>
> When MimeMessageWrapper.writeTo(...) is called we call saveChanges() everytime even when the messagewas not modified at all. This is not neeed and also can throw exceptions on malformated messages.
> See the related stacktrace:
> org.apache.james.queue.api.MailQueue$MailQueueException: Unable to enqueue mail;
>   nested exception is:
>         javax.mail.internet.ParseException: Expected ';', got "windows-1250"
>         at org.apache.james.queue.file.FileMailQueue.enQueue(FileMailQueue.java:193)
>         at org.apache.james.queue.file.FileMailQueue.enQueue(FileMailQueue.java:230)
>         at org.apache.james.smtpserver.SendMailHandler.onMessage(SendMailHandler.java:64)
>         at org.apache.james.smtpserver.DataLineJamesMessageHookHandler.processExtensions(DataLineJamesMessageHookHandler.java:178)
>         at org.apache.james.smtpserver.DataLineJamesMessageHookHandler.onLine(DataLineJamesMessageHookHandler.java:96)
>         at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:76)
>         at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:61)
>         at org.apache.james.protocols.smtp.core.ReceivedDataLineFilter.onLine(ReceivedDataLineFilter.java:54)
>         at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:76)
>         at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:61)
>         at org.apache.james.protocols.smtp.core.esmtp.MailSizeEsmtpExtension.onLine(MailSizeEsmtpExtension.java:147)
>         at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:76)
>         at org.apache.james.protocols.smtp.core.DataCmdHandler$DataLineFilterWrapper.onLine(DataCmdHandler.java:61)
>         at org.apache.james.protocols.impl.LineHandlerUpstreamHandler.messageReceived(LineHandlerUpstreamHandler.java:57)
>         at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
>         at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)
>         at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)
>         at org.jboss.netty.handler.execution.ChannelEventRunnable.run(ChannelEventRunnable.java:69)
>         at org.jboss.netty.handler.execution.OrderedMemoryAwareThreadPoolExecutor$ChildExecutor.run(OrderedMemoryAwareThreadPoolExecutor.java:316)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>         at java.lang.Thread.run(Thread.java:679)
> Caused by: javax.mail.internet.ParseException: Expected ';', got "windows-1250"
>         at javax.mail.internet.ParameterList.<init>(ParameterList.java:289)
>         at javax.mail.internet.ContentType.<init>(ContentType.java:114)
>         at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1322)
>         at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1021)
>         at javax.mail.internet.MimeMultipart.updateHeaders(MimeMultipart.java:419)
>         at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1345)
>         at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1021)
>         at javax.mail.internet.MimeMultipart.updateHeaders(MimeMultipart.java:419)
>         at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1345)
>         at javax.mail.internet.MimeMessage.updateHeaders(MimeMessage.java:2106)
>         at javax.mail.internet.MimeMessage.saveChanges(MimeMessage.java:2074)
>         at org.apache.james.core.MimeMessageWrapper.writeTo(MimeMessageWrapper.java:295)
>         at org.apache.james.core.MimeMessageWrapper.writeTo(MimeMessageWrapper.java:290)
>         at org.apache.james.core.MimeMessageWrapper.writeTo(MimeMessageWrapper.java:286)
>         at org.apache.james.core.MimeMessageWrapper.writeTo(MimeMessageWrapper.java:271)
>         at org.apache.james.core.MimeMessageCopyOnWriteProxy.writeTo(MimeMessageCopyOnWriteProxy.java:184)
>         at org.apache.james.queue.file.FileMailQueue.enQueue(FileMailQueue.java:161)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org