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 "Benoit Tellier (Jira)" <se...@james.apache.org> on 2019/12/06 02:51:00 UTC

[jira] [Commented] (JAMES-2993) Rebuild MessagePreviewStore content

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

Benoit Tellier commented on JAMES-2993:
---------------------------------------

I contributed an initial unsatisfactory work regarding this: https://github.com/linagora/james-project/pull/2932

From a suggestion of Matthieu Baechler, the endpoints evolved into :

```
POST /messages?task=rebuildMessageFastViewProjection
POST /users/BOB/mailboxes?task=rebuildMessageFastViewProjection
POST /messages/:messageId?task=rebuildMessageFastViewProjection

```

We end up with the need of supporting the following actions on
the same endpoint:

Example:

  POST /users/BOB/mailboxes?task=rebuildMessageFastViewProjection
  POST /users/BOB/mailboxes?task=reIndex

ReIndexing is a task defined in mailbox-api that any backend relying on
a message search index can rely on.

rebuildMessageFastViewProjection is an action that only make sense for
products shipping JMAP.

We need a way to 'combine' both actions within one endpoint in a modular
way.

See the following discussion: https://www.mail-archive.com/server-dev@james.apache.org/msg63547.html

That work is postponed.

> Rebuild MessagePreviewStore content
> -----------------------------------
>
>                 Key: JAMES-2993
>                 URL: https://issues.apache.org/jira/browse/JAMES-2993
>             Project: James Server
>          Issue Type: Sub-task
>            Reporter: Trần Tiến Đức
>            Priority: Major
>
> Proposal of API:
> {code:java}
> POST /jmap/messages/:messageId?action=recomputeJmapPreview
> POST /jmap?action=recomputeJmapPreview
> POST /jmap?action=recomputeJmapPreview&user=btellier
> {code}
> Will return a taskId.
> Write routes & tasks.
> DOD: Write a unit test showing we are able to recompute missing previews (using a memory implementation specific delete method of MemoryMessagePreviewStore to create the inconsistency). Use a MemoryMailboxManager.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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