View Issue Details

IDProjectCategoryView StatusLast Update
0004938SOGowith SOGopublic2020-05-15 17:03
Reporteroscarfp Assigned Toludovic  
PriorityurgentSeveritycrashReproducibilityrandom
Status closedResolutionno change required 
Platform[Client] MicrosoftOSWindowsOS Version8
Product Version4.2.0 
Summary0004938: Lost attachment
Description

the following incident occurs randomly, the user writes an email, attaches three files and sends the email, ok because in the recipient's mailbox, sometimes he doesn't receive the attachments, or he only receives one, or two and sometimes he receives all three, but the most common is that there are missing attachments, what is observed is that when this happens, in the drafts folder there is a draft with the files that were not sent

Steps To Reproduce

new mail
select recipient
attach several files
and send

Additional Information

Ubuntu 18.04
Sogo4.2.0

TagsNo tags attached.

Activities

Christian Mack

Christian Mack

2020-01-21 12:22

developer   ~0014078

Where those attachments uploaded completely before sending?
You can see the upload progress with the red background of the file name.

oscarfp

oscarfp

2020-01-21 12:28

reporter   ~0014079

Thanks for your response, it goes up perfectly, the error is when you make the shipment, the mail arrives at the recipient, but the attachments remain in draft, I think it is a session problem, I have an https balancer, round robin mode, and I think that changes the sessions, although it defines persistence of ip, since all the connections are of the dmz of the firewall, that is to say the same ip

Christian Mack

Christian Mack

2020-01-21 13:43

developer   ~0014082

Did you set up shared SOGoMailSpoolPath and NGMimeBuildMimeTempDirectory (e.g. via NFS) between all used SOGo instances?
I assume the second is not in your configuration.

oscarfp

oscarfp

2020-01-26 12:46

reporter   ~0014106

I have the three servers with these variables that point to two folders in an nfs cluster:
SOGoMailSpoolPath = / mnt / spool;
NGImap4ConnectionStringSeparator = / mnt / temp;
 
but the problem continues, it fails to upload the attachments and when the email is sent, they remain in the drafts

Christian Mack

Christian Mack

2020-01-27 08:50

developer   ~0014108

NGImap4ConnectionStringSeparator should only "/" or ".", not a path.
You should set NGMimeBuildMimeTempDirectory to that path.

oscarfp

oscarfp

2020-01-27 20:34

reporter   ~0014109

I have changed it as you say, I start balancing with round robin, same priorities in the three servers, in the first test when uploading 3 small pdf files, it already gives an error and begins to generate different drafts, one with the two files that has uploaded well and another draft with the file that failed.

Christian Mack

Christian Mack

2020-01-28 10:42

developer   ~0014111

Did you upload those files sequentially?
I mean, did you wait till one upload was done, before you started the next?

oscarfp

oscarfp

2020-01-28 10:44

reporter   ~0014112

no, select three files at once

Christian Mack

Christian Mack

2020-01-28 12:41

developer   ~0014113

Then you probably have different memcached server for each of your server?

oscarfp

oscarfp

2020-01-28 12:51

reporter   ~0014114

on each of the three servers in the sogo.conf SOGoMemcachedHost = 127.0.0.1
is not correct?

Christian Mack

Christian Mack

2020-01-28 15:32

developer   ~0014115

Your problem stems from using multiple uploads at once for one user.
Each file will open one connection in order to upload.
Those can potentially hit different servers.
Each server will not know if and what other servers get.
Therefore they only will see the other uploads, when they show up on NFS, which will take a while, because of caching.
Depending on file size, network speed and server load they will finish those uploads at different times.
Not knowing of the other uploads each server will assemble an email with only those attachment known to it.

In your example, you were lucky, as 2 uploads landed on the same server.

With only one memcached, those 3 servers can share information.
Therefore they will know of the other uploads and assemble the email accordingly.

Without that, you have to upload each file sequentially.

ludovic

ludovic

2020-05-15 17:03

administrator   ~0014344

Configuration error - multiple servers require a shared spool path for uploads and also a shared memcached server.

Issue History

Date Modified Username Field Change
2020-01-15 18:41 oscarfp New Issue
2020-01-21 12:22 Christian Mack Note Added: 0014078
2020-01-21 12:28 oscarfp Note Added: 0014079
2020-01-21 13:43 Christian Mack Note Added: 0014082
2020-01-26 12:46 oscarfp Note Added: 0014106
2020-01-27 08:50 Christian Mack Note Added: 0014108
2020-01-27 20:34 oscarfp Note Added: 0014109
2020-01-28 10:42 Christian Mack Note Added: 0014111
2020-01-28 10:44 oscarfp Note Added: 0014112
2020-01-28 12:41 Christian Mack Note Added: 0014113
2020-01-28 12:51 oscarfp Note Added: 0014114
2020-01-28 15:32 Christian Mack Note Added: 0014115
2020-05-15 17:03 ludovic Assigned To => ludovic
2020-05-15 17:03 ludovic Status new => closed
2020-05-15 17:03 ludovic Resolution open => no change required
2020-05-15 17:03 ludovic Note Added: 0014344