I forgot to mention, the Amazon ELB is configured to handle the SSL encryption, although perhaps is not relevant.
On Thu, Jul 9, 2015 at 1:52 AM, Tecno Brain <cerebrotecnolog...@gmail.com> wrote: > I am running Tomcat 8.0.20 in Ubuntu with Java 1.8u45 > This server runs in Amazon EC2 behind an ELB (load balancer), although the > cluster size is just one server. > > My application allows to download some data in CSV format. > The CSV data is generated on the fly, and there is no way to known in > advance the size of the response. So, the data is an attachment. > > response.setContentType("text/csv;charset=utf-8"); > > filename = "data.csv" > > response.setHeader("Content-Disposition", "attachment; filename=\"" + > filename + ".csv\""); > > > The download starts immediately but after 100 MB the browser stopped > received data -my internet connection was not the best-, so I canceled the > download as it was not progressing anymore. > > Nevertheless, my web app keeps generating the CSV data, unaware that the > connection has been dropped. I was expecting that my code would get an > IOException when writing to the servlet OutputStream (which was wrapped by > a BufferedOutputStream and wrapped by an OutputStreamWriter). > > Is this a problem I can solve through the configuration of the NIO > connector ? > Or is this a problem of Amazon ELB that still consumes the stream even > though it can't be forwarded to the browser anymore? > > I don't remember having this problem when working with Apache HTTP as the > load balancer. If I remember correctly, I would get an error indicating > that the client closed the connection. > > Any pointers are appreciated. > > -Jorge > >