[ https://issues.apache.org/jira/browse/JAMES-2985?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16977557#comment-16977557 ]
Jörg Thomas (ConSol) edited comment on JAMES-2985 at 11/19/19 3:28 PM: ----------------------------------------------------------------------- My i-don't-know-what-i'm-doing-patch (...formatting seems complicated here, i'm attaching the patch as file) was (Author: jtconsol): My i-don't-know-what-i'm-doing-patch: {{diff --git a/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/JPAMessageMapper.java b/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/JPAMessageMapper.java index f7fde59..10eb779 100644 --- a/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/JPAMessageMapper.java +++ b/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/JPAMessageMapper.java @@ -25,11 +25,13 @@ import java.util.Map; import java.util.Optional; import javax.mail.Flags; +import javax.mail.Flags.Flag; import javax.persistence.EntityManagerFactory; import javax.persistence.PersistenceException; import javax.persistence.Query; import org.apache.james.mailbox.MailboxSession; +import org.apache.james.mailbox.MessageManager; import org.apache.james.mailbox.MessageUid; import org.apache.james.mailbox.exception.MailboxException; import org.apache.james.mailbox.jpa.JPAId; @@ -214,6 +216,10 @@ public class JPAMessageMapper extends JPATransactionalMapper implements MessageM Map<MessageUid, MessageMetaData> data = new HashMap<>(); List<MessageRange> ranges = MessageRange.toRanges(uids); + for (MessageRange range : ranges) { + updateFlags(mailbox, new FlagsUpdateCalculator(new Flags(Flag.DELETED), MessageManager.FlagsUpdateMode.ADD), range); + } + ranges.forEach(range -> { List<MailboxMessage> messages = findDeletedMessages(range, mailboxId); data.putAll(createMetaData(messages));}} > 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 > > > 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