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 "Stefano Bagnara (JIRA)" <se...@james.apache.org> on 2005/05/04 18:53:07 UTC

[jira] Created: (JAMES-371) Speed improvement in SpoolManager

Speed improvement in SpoolManager
---------------------------------

         Key: JAMES-371
         URL: http://issues.apache.org/jira/browse/JAMES-371
     Project: James
        Type: Improvement
  Components: SpoolManager & Processors  
    Versions: 2.2.1    
 Environment: James SVN branch truck-merged 20050504.
    Reporter: Stefano Bagnara
    Priority: Minor
 Attachments: JamesSpoolManager.java.patch, LinearProcessor.java.patch

Processor invoke store() on the spool when a message change its state but the message is still lockend and the notify called by the spool does not work (As far as I understand).

I removed spool.store from the processor and leave spool handling to the spoolmanager thread.

I also added a loop to the run of the spoolmanager thread so that it will process every state till GHOST or ERROR and not only one state at a time.



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
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] Assigned: (JAMES-371) Speed improvement in SpoolManager

Posted by "Stefano Bagnara (JIRA)" <se...@james.apache.org>.
     [ http://issues.apache.org/jira/browse/JAMES-371?page=all ]

Stefano Bagnara reassigned JAMES-371:
-------------------------------------

    Assign To: Stefano Bagnara

> Speed improvement in SpoolManager
> ---------------------------------
>
>          Key: JAMES-371
>          URL: http://issues.apache.org/jira/browse/JAMES-371
>      Project: James
>         Type: Improvement
>   Components: SpoolManager & Processors
>     Versions: 2.2.1
>  Environment: James SVN branch truck-merged 20050504.
>     Reporter: Stefano Bagnara
>     Assignee: Stefano Bagnara
>     Priority: Minor
>  Attachments: JamesSpoolManager.java.patch, JamesSpoolManager.java.patch, LinearProcessor.java.patch
>
> Processor invoke store() on the spool when a message change its state but the message is still lockend and the notify called by the spool does not work (As far as I understand).
> I removed spool.store from the processor and leave spool handling to the spoolmanager thread.
> I also added a loop to the run of the spoolmanager thread so that it will process every state till GHOST or ERROR and not only one state at a time.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
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-371) Speed improvement in SpoolManager

Posted by "Stefano Bagnara (JIRA)" <se...@james.apache.org>.
     [ http://issues.apache.org/jira/browse/JAMES-371?page=all ]
     
Stefano Bagnara resolved JAMES-371:
-----------------------------------

    Fix Version: 2.3.0a2
     Resolution: Won't Fix

The patch submitted was invalid.
I changed many code that could have optimized the spoolmanager but the change proposed in the issue is not applicable: to further improve the spooling we should change the spoolmanager interface.

> Speed improvement in SpoolManager
> ---------------------------------
>
>          Key: JAMES-371
>          URL: http://issues.apache.org/jira/browse/JAMES-371
>      Project: James
>         Type: Improvement

>   Components: SpoolManager & Processors
>     Versions: 2.3.0a1
>  Environment: James SVN branch truck-merged 20050504.
>     Reporter: Stefano Bagnara
>     Assignee: Stefano Bagnara
>     Priority: Minor
>      Fix For: 2.3.0a2
>  Attachments: JamesSpoolManager.java.patch, JamesSpoolManager.java.patch, LinearProcessor.java.patch
>
> Processor invoke store() on the spool when a message change its state but the message is still lockend and the notify called by the spool does not work (As far as I understand).
> I removed spool.store from the processor and leave spool handling to the spoolmanager thread.
> I also added a loop to the run of the spoolmanager thread so that it will process every state till GHOST or ERROR and not only one state at a time.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
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] Updated: (JAMES-371) Speed improvement in SpoolManager

Posted by "Stefano Bagnara (JIRA)" <se...@james.apache.org>.
     [ http://issues.apache.org/jira/browse/JAMES-371?page=all ]

Stefano Bagnara updated JAMES-371:
----------------------------------

    Attachment: JamesSpoolManager.java.patch
                LinearProcessor.java.patch

> Speed improvement in SpoolManager
> ---------------------------------
>
>          Key: JAMES-371
>          URL: http://issues.apache.org/jira/browse/JAMES-371
>      Project: James
>         Type: Improvement
>   Components: SpoolManager & Processors
>     Versions: 2.2.1
>  Environment: James SVN branch truck-merged 20050504.
>     Reporter: Stefano Bagnara
>     Priority: Minor
>  Attachments: JamesSpoolManager.java.patch, LinearProcessor.java.patch
>
> Processor invoke store() on the spool when a message change its state but the message is still lockend and the notify called by the spool does not work (As far as I understand).
> I removed spool.store from the processor and leave spool handling to the spoolmanager thread.
> I also added a loop to the run of the spoolmanager thread so that it will process every state till GHOST or ERROR and not only one state at a time.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
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] Updated: (JAMES-371) Speed improvement in SpoolManager

Posted by "Stefano Bagnara (JIRA)" <se...@james.apache.org>.
     [ http://issues.apache.org/jira/browse/JAMES-371?page=all ]

Stefano Bagnara updated JAMES-371:
----------------------------------

    Attachment: JamesSpoolManager.java.patch

Forgot to move an error logging in the right place.

> Speed improvement in SpoolManager
> ---------------------------------
>
>          Key: JAMES-371
>          URL: http://issues.apache.org/jira/browse/JAMES-371
>      Project: James
>         Type: Improvement
>   Components: SpoolManager & Processors
>     Versions: 2.2.1
>  Environment: James SVN branch truck-merged 20050504.
>     Reporter: Stefano Bagnara
>     Priority: Minor
>  Attachments: JamesSpoolManager.java.patch, JamesSpoolManager.java.patch, LinearProcessor.java.patch
>
> Processor invoke store() on the spool when a message change its state but the message is still lockend and the notify called by the spool does not work (As far as I understand).
> I removed spool.store from the processor and leave spool handling to the spoolmanager thread.
> I also added a loop to the run of the spoolmanager thread so that it will process every state till GHOST or ERROR and not only one state at a time.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
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] Commented: (JAMES-371) Speed improvement in SpoolManager

Posted by "Stefano Bagnara (JIRA)" <se...@james.apache.org>.
     [ http://issues.apache.org/jira/browse/JAMES-371?page=comments#action_65340 ]
     
Stefano Bagnara commented on JAMES-371:
---------------------------------------

After a few more thought I think I've found the bug of this speed improvement.
new MailImpl created by the LinearProcessor after a partial recipients match will never be persisted in the spool. So they will be lost after the end of the processor.

Expect the patch soon.

> Speed improvement in SpoolManager
> ---------------------------------
>
>          Key: JAMES-371
>          URL: http://issues.apache.org/jira/browse/JAMES-371
>      Project: James
>         Type: Improvement
>   Components: SpoolManager & Processors
>     Versions: 2.2.1
>  Environment: James SVN branch truck-merged 20050504.
>     Reporter: Stefano Bagnara
>     Priority: Minor
>  Attachments: JamesSpoolManager.java.patch, JamesSpoolManager.java.patch, LinearProcessor.java.patch
>
> Processor invoke store() on the spool when a message change its state but the message is still lockend and the notify called by the spool does not work (As far as I understand).
> I removed spool.store from the processor and leave spool handling to the spoolmanager thread.
> I also added a loop to the run of the spoolmanager thread so that it will process every state till GHOST or ERROR and not only one state at a time.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
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