[jira] [Updated] (JAMES-3746) IDLE mailbox listener leak

2022-04-12 Thread Benoit Tellier (Jira)


 [ 
https://issues.apache.org/jira/browse/JAMES-3746?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benoit Tellier updated JAMES-3746:
--
Attachment: Screenshot from 2022-04-13 10-31-02.png

> IDLE mailbox listener leak
> --
>
> Key: JAMES-3746
> URL: https://issues.apache.org/jira/browse/JAMES-3746
> Project: James Server
>  Issue Type: Improvement
>  Components: IMAPServer, mailbox
>Affects Versions: 3.7.0
>Reporter: Benoit Tellier
>Priority: Major
> Fix For: master, 3.8.0
>
> Attachments: Screenshot from 2022-04-13 10-31-02.png
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> h3. What
> On a production instance running James 3.7.0 I have 2900 + IDLE listeners for 
> only 58 IMAP connections. Something is clearly wrong here!
> See attached screenshot.
> A code audit showed that the listener associated with IMAP IDLE is only 
> removed when the use inputs "DONE" to close the IDLE command.
> If the connection is unexpectedly dropped then the listener is never removed!
> This is even more critical that this keeps the UID-MSN mapping in memory 
> forver (!).
> h3. The fix
> This is fixed on master (upcoming 3.8.0) as we no longer put a distinct 
> registration for IMAP IDLE but reuse the connection for the Selected mailbox.
> Selected mailbox is cleaned up upon disconnection, deselection etc.. so we 
> don't need to worry.
> Also it puts less of a churn on RabbitMQ component as IDLE becomes 
> essentially a hook on the SelectedMailboxImpl listener.
> I propose to backport this to 3.7.1...



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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



[jira] [Commented] (JAMES-3746) IDLE mailbox listener leak

2022-04-12 Thread Benoit Tellier (Jira)


[ 
https://issues.apache.org/jira/browse/JAMES-3746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17521455#comment-17521455
 ] 

Benoit Tellier commented on JAMES-3746:
---

Soory, mistake!

> IDLE mailbox listener leak
> --
>
> Key: JAMES-3746
> URL: https://issues.apache.org/jira/browse/JAMES-3746
> Project: James Server
>  Issue Type: Improvement
>  Components: IMAPServer, mailbox
>Affects Versions: 3.7.0
>Reporter: Benoit Tellier
>Priority: Major
> Fix For: master, 3.8.0
>
> Attachments: Screenshot from 2022-04-13 10-31-02.png
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> h3. What
> On a production instance running James 3.7.0 I have 2900 + IDLE listeners for 
> only 58 IMAP connections. Something is clearly wrong here!
> See attached screenshot.
> A code audit showed that the listener associated with IMAP IDLE is only 
> removed when the use inputs "DONE" to close the IDLE command.
> If the connection is unexpectedly dropped then the listener is never removed!
> This is even more critical that this keeps the UID-MSN mapping in memory 
> forver (!).
> h3. The fix
> This is fixed on master (upcoming 3.8.0) as we no longer put a distinct 
> registration for IMAP IDLE but reuse the connection for the Selected mailbox.
> Selected mailbox is cleaned up upon disconnection, deselection etc.. so we 
> don't need to worry.
> Also it puts less of a churn on RabbitMQ component as IDLE becomes 
> essentially a hook on the SelectedMailboxImpl listener.
> I propose to backport this to 3.7.1...



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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



[jira] [Commented] (JAMES-3746) IDLE mailbox listener leak

2022-04-12 Thread Tran Hong Quan (Jira)


[ 
https://issues.apache.org/jira/browse/JAMES-3746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17521453#comment-17521453
 ] 

Tran Hong Quan commented on JAMES-3746:
---

> See attached screenshot.

 

Oops, no screenshot is available. Can you share it again?

> IDLE mailbox listener leak
> --
>
> Key: JAMES-3746
> URL: https://issues.apache.org/jira/browse/JAMES-3746
> Project: James Server
>  Issue Type: Improvement
>  Components: IMAPServer, mailbox
>Affects Versions: 3.7.0
>Reporter: Benoit Tellier
>Priority: Major
> Fix For: master, 3.8.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> h3. What
> On a production instance running James 3.7.0 I have 2900 + IDLE listeners for 
> only 58 IMAP connections. Something is clearly wrong here!
> See attached screenshot.
> A code audit showed that the listener associated with IMAP IDLE is only 
> removed when the use inputs "DONE" to close the IDLE command.
> If the connection is unexpectedly dropped then the listener is never removed!
> This is even more critical that this keeps the UID-MSN mapping in memory 
> forver (!).
> h3. The fix
> This is fixed on master (upcoming 3.8.0) as we no longer put a distinct 
> registration for IMAP IDLE but reuse the connection for the Selected mailbox.
> Selected mailbox is cleaned up upon disconnection, deselection etc.. so we 
> don't need to worry.
> Also it puts less of a churn on RabbitMQ component as IDLE becomes 
> essentially a hook on the SelectedMailboxImpl listener.
> I propose to backport this to 3.7.1...



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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



[jira] [Created] (JAMES-3746) IDLE mailbox listener leak

2022-04-12 Thread Benoit Tellier (Jira)
Benoit Tellier created JAMES-3746:
-

 Summary: IDLE mailbox listener leak
 Key: JAMES-3746
 URL: https://issues.apache.org/jira/browse/JAMES-3746
 Project: James Server
  Issue Type: Improvement
  Components: IMAPServer, mailbox
Affects Versions: 3.7.0
Reporter: Benoit Tellier
 Fix For: master, 3.8.0


h3. What

On a production instance running James 3.7.0 I have 2900 + IDLE listeners for 
only 58 IMAP connections. Something is clearly wrong here!

See attached screenshot.

A code audit showed that the listener associated with IMAP IDLE is only removed 
when the use inputs "DONE" to close the IDLE command.

If the connection is unexpectedly dropped then the listener is never removed!

This is even more critical that this keeps the UID-MSN mapping in memory forver 
(!).

h3. The fix

This is fixed on master (upcoming 3.8.0) as we no longer put a distinct 
registration for IMAP IDLE but reuse the connection for the Selected mailbox.

Selected mailbox is cleaned up upon disconnection, deselection etc.. so we 
don't need to worry.

Also it puts less of a churn on RabbitMQ component as IDLE becomes essentially 
a hook on the SelectedMailboxImpl listener.

I propose to backport this to 3.7.1...



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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