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

Benoit Tellier commented on JAMES-2985:
---------------------------------------

That would be very welcomed.

I confirm JPAMessageManager is not behaving the right way:

{code:java}
    @Override
    public Map<MessageUid, MessageMetaData> deleteMessages(Mailbox mailbox, 
List<MessageUid> uids) throws MailboxException {
        JPAId mailboxId = (JPAId) mailbox.getMailboxId();
        Map<MessageUid, MessageMetaData> data = new HashMap<>();
        List<MessageRange> ranges = MessageRange.toRanges(uids);

        ranges.forEach(range -> {
            List<MailboxMessage> messages = findDeletedMessages(range, 
mailboxId);
            data.putAll(createMetaData(messages));
            deleteDeletedMessages(range, mailboxId);
        });

        return data;
    }
{code}

We may need more tests for this code as well (MessageMapperTest).

Help on this topic is much welcomed.


> Mails deleted via POP3 DELE command are not actually deleted
> ------------------------------------------------------------
>
>                 Key: JAMES-2985
>                 URL: https://issues.apache.org/jira/browse/JAMES-2985
>             Project: James Server
>          Issue Type: Bug
>          Components: POP3Server
>    Affects Versions: master
>            Reporter: Jörg Thomas (ConSol)
>            Priority: Critical
>             Fix For: 3.5.0
>
>         Attachments: patch.txt
>
>
> As per the title - mails can't be deleted via POP3 DELE.
> Steps to reproduce:
>  - build the project (spring app in this case, but I don't think that matters)
>  ** {{git clone [https://github.com/apache/james-project]}}
>  ** {{cd james-project}}
>  ** {{docker build -t james/project dockerfiles/compilation/java-8}}
>  ** {{docker run -v $HOME/.m2:/root/.m2 -v $PWD:/origin -v 
> $PWD/dockerfiles/run/spring/destination:/spring/destination -t james/project 
> -s HEAD}}
>  ** {{cd dockerfiles/run/spring/destination/}}
>  ** {{unzip james-server-app-3.5.0-SNAPSHOT-app.zip}}
>  ** {{cd james-server-app-3.5.0-SNAPSHOT/bin}}
>  ** {{./run.sh}}
>  - add a user
>  ** {{./james-cli.sh test@localhost test123}}
>  - send a mail to that user
>  ** {{nc -C localhost 25}}
>  ** ...
>  - login via POP3 and fetch the mail
>  ** {{nc -C localhost 110}}
>  ** {{USER test@localhost}}
>  ** {{PASS test123}}
>  ** {{LIST}}
>  *** (should list only one mail, the one you sent before)
>  ** {{RETR 1}}
>  *** (should display said mail's contents)
>  ** {{DELE 1}}
>  *** (should display `+OK Message deleted`)
>  ** {{LIST}}
>  *** (should display `+OK 0 0`)
>  ** {{QUIT}}
>  - login via POP3 again
>  ** {{LIST}}
>  *** (oops, the mail is still there, just like before)



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

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

Reply via email to