[jira] [Commented] (JAMES-3979) "Email/import" doesn't change the state

"Benoit Tellier (Jira)" <[email protected]>
Newsgroups gmane.comp.jakarta.james.devel
Message-ID <[email protected]>
    [ https://issues.apache.org/jira/browse/JAMES-3979?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17922131#comment-17922131 ] 

Benoit Tellier commented on JAMES-3979:
---------------------------------------

More development and experiments on this topic...

On real word deployment we encountered the following issues:
 - RabbitMQ downtime and-or bugs caused JMAP view to be unmaintained and outdated
 - When we implement websocket, deviceA should discard websocket notifications it generated and only resynchronize changes it generates. Doing so helps dramatically lower request rates we experienced following websocket production deployment.

Both of those issues are connected to JMAP state being managed asynchronously...

We solved this problem in Twake Mail by making our eventbus (the regular RabbitMQ eventbus modified to handle pubsub with Redis) able to run selected listeners synchronously: https://github.com/linagora/tmail-backend/pull/1438 

It works great, and with no code impact on James side, though it makes one more thing to configure...

Would there be interest in merging this upstream?

If so, we likely need to base the decision on EventListener::getExecutionMode (which I ignored in Tmail to minimize impact): rework it to be async by default and rework selected listeners to be run synchronously.

Best regards,

Benoit

> "Email/import" doesn't change the state
> ---------------------------------------
>
>                 Key: JAMES-3979
>                 URL: https://issues.apache.org/jira/browse/JAMES-3979
>             Project: James Server
>          Issue Type: Bug
>          Components: JMAP
>            Reporter: Zhivko Vasilev
>            Assignee: Antoine Duprat
>            Priority: Minor
>         Attachments: james_email_import_response.json
>
>
> I have created an automated test in which two app instances run on one account. In this test, app1 imports emails into different folders or changes email properties (read/unread/etc.), and the other app syncs and checks that they are okay.
> However, it seems that "Email/import" doesn't change the state. As a result, the sync from the other app instance cannot detect the changes.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.