{"action":"created","issue":{"url":"https://api.github.com/repos/tpitale/mail_room/issues/46","labels_url":"https://api.github.com/repos/tpitale/mail_room/issues/46/labels{/name}","comments_url":"https://api.github.com/repos/tpitale/mail_room/issues/46/comments","events_url":"https://api.github.com/repos/tpitale/mail_room/issues/46/events","html_url":"https://github.com/tpitale/mail_room/issues/46","id":109260714,"number":46,"title":"Having N mail_rooms on N application servers will result in 1 message being processed N times","user":{"login":"DouweM","id":159434,"avatar_url":"https://avatars.githubusercontent.com/u/159434?v=3","gravatar_id":"","url":"https://api.github.com/users/DouweM","html_url":"https://github.com/DouweM","followers_url":"https://api.github.com/users/DouweM/followers","following_url":"https://api.github.com/users/DouweM/following{/other_user}","gists_url":"https://api.github.com/users/DouweM/gists{/gist_id}","starred_url":"https://api.github.com/users/DouweM/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DouweM/subscriptions","organizations_url":"https://api.github.com/users/DouweM/orgs","repos_url":"https://api.github.com/users/DouweM/repos","events_url":"https://api.github.com/users/DouweM/events{/privacy}","received_events_url":"https://api.github.com/users/DouweM/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-10-01T09:22:29Z","updated_at":"2015-10-01T12:26:55Z","closed_at":null,"body":"In the case of GitLab, this means every \"Reply by email\" message would result in N comments being created.\r\n\r\nSee https://gitlab.com/gitlab-org/gitlab-ce/issues/2870.\r\n\r\n@tpitale What's your take on this? Our (@jacobvosmaer and me) solution has mail_room use Redis to keep track of what messages have been processed, so that only one mail_room ever processes a specific message, but this does add complexity to mail_room that a lot of use cases (like yours, it appears) don't need."},"comment":{"url":"https://api.github.com/repos/tpitale/mail_room/issues/comments/144711673","html_url":"https://github.com/tpitale/mail_room/issues/46#issuecomment-144711673","issue_url":"https://api.github.com/repos/tpitale/mail_room/issues/46","id":144711673,"user":{"login":"tpitale","id":163,"avatar_url":"https://avatars.githubusercontent.com/u/163?v=3","gravatar_id":"","url":"https://api.github.com/users/tpitale","html_url":"https://github.com/tpitale","followers_url":"https://api.github.com/users/tpitale/followers","following_url":"https://api.github.com/users/tpitale/following{/other_user}","gists_url":"https://api.github.com/users/tpitale/gists{/gist_id}","starred_url":"https://api.github.com/users/tpitale/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tpitale/subscriptions","organizations_url":"https://api.github.com/users/tpitale/orgs","repos_url":"https://api.github.com/users/tpitale/repos","events_url":"https://api.github.com/users/tpitale/events{/privacy}","received_events_url":"https://api.github.com/users/tpitale/received_events","type":"User","site_admin":false},"created_at":"2015-10-01T12:26:55Z","updated_at":"2015-10-01T12:26:55Z","body":"I think we should pass the message id from the IMAP server. Then the receiving application can choose to process a message or not.\n\nTrying to introduce a syncing system to mail room will most likely be a nightmare. And will probably just result in race conditions we may not be able to solve because they are environment specific."}}