Uploading large file throws timeout

Description

When we upload large files (for example 30 MB. 100 MB) to Tomcat 9 + Lucee 5.3.8.201 it always fails with timeout.

If we downgrade to Lucee 5.2.9.31 that contains Tomcat 8.5 it problem goes away.

In IIS config file upload limits are set to maximum available, so this is not a problem.

Please fix that issue so we can update production environments to newer versions.

 

UPDATE 14.04.2023:
Uploading 1GB file:

  • Using Lucee without IIS and Boncode: successful upload

  • Using Lucee + IIS + Boncode error in catalina*.log file:
    SEVERE [ajp-nio-0:0:0:0:0:0:0:1-8009-exec-6] org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun Error running socket processor

    java.lang.ThreadDeath

    at java.base/java.lang.Thread.stop(Unknown Source)

    at lucee.commons.io.SystemUtil._stop(SystemUtil.java:1342)

    at lucee.commons.io.SystemUtil.stop(SystemUtil.java:1333)

    at lucee.commons.io.StopThread.run(SystemUtil.java:1755)

 

If I didn’t use <PacketSize>65536</PacketSize> setting in BonCodeAJP13.settings and server.xml same error happened also when uploading 10 MB files …

 

I added upload.cfm attachment to test file upload.

Environment

  • Windows 10 22H2 19045.2788

  • IIS 10.0.19041.1

  • Boncode Connector 1.3

  • Lucee 5.3.10.120

  • Apache Tomcat/9.0.68

Attachments

3

Activity

Show:

Travis Peters 7 June 2023 at 15:46
Edited

Confirmed in 5.3.10.120

Steps to reproduce:

  1. Enable throttling

  2. Attempt to upload 20M file

alokra 14 April 2023 at 11:14

Same error happened to me - ThreadDeath. See issue details. It has sure something common with AJP protocol and Boncode connector, because if I use Lucee only it does not happen.

Pothys - MitrahSoft 23 March 2023 at 10:33
Edited

checked this ticket with the lucee version 5.3.10.120. When I upload a file where the upload takes longer than the timeout declared in lucee admin it throws timeout error and I set the timeout in application, it rarely throws internal server error and java.lang.ThreadDeath error is logged in the console log.

Stack trace:

Ryan 22 March 2023 at 15:36

Yes I am still able to reproduce it on Windows Apache 2.4.39, Lucee 5.3.10.120, Tomcat 9.0.53.

If I upload a file where the upload takes longer than the timeout declared in the Lucee administrator, I get an exception (java.lang.ThreadDeath). Regardless of what the timeout setting is in my application.cfc. This kind of makes sense to me, because this timeout is being reached while the file is still be uploaded, before any of my application.cfc code runs, and that code is what sets the extended timeout.

Our work around was to bump up the request timeout in the Lucee administrator.

BTW I do have Fusion Reactor installed, and the stack trace in the exception is full of lines from FusionReactor code. So there is a chance this issue could be related to Fusion Reactor, but I doubt it. I think it’s normal that FusionReactor code shows up in a stack trace like this.

Pothys - MitrahSoft 8 March 2023 at 05:50

Still you have the same issue on Apache + lucee? If yes, Please share the scenario you faced this issue. It would be help to reproduce the issue.

Cannot Reproduce

Details

Assignee

Reporter

Priority

New Issue warning screen

Before you create a new Issue, please post to the mailing list first https://dev.lucee.org

Once the issue has been verified, one of the Lucee team will ask you to file an issue

Created 18 October 2021 at 09:35
Updated 7 June 2023 at 15:47
Resolved 7 March 2023 at 08:17