jruby multipart post 对于大于 800k 左右的文件失败

发布于 2024-09-30 05:07:03 字数 1628 浏览 5 评论 0原文

我有一个使用 glassfish-gem 和 apache 前端部署的 jruby 应用程序。当我对文件进行表单发布时,超过一定大小的文件会失败,似乎在 800k 左右。如果有帮助的话,错误如下。

glassfish.yml 已生成,除了增加一些 java 内存设置外,默认情况下没有任何更改。

我已经绕过 apache 并直接进入应用程序,但仍然有问题。在导轨中启用线程会使问题变得更糟。

INFO: /!\ FAILSAFE /!\  Fri Oct 29 04:54:17 +0000 2010
Status: 500 Internal Server Error
Stream closed
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/rack-1.1.0/lib/rack/utils.rb:466:in `parse_multipart'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/rack-1.1.0/lib/rack/request.rb:268:in `parse_multipart'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/rack-1.1.0/lib/rack/request.rb:146:in `POST'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/facebooker-1.0.75/lib/rack/facebook.rb:38:in `call'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/actionpack-2.3.10/lib/action_controller/session/cookie_store.rb:100:in `call'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/actionpack-2.3.10/lib/action_controller/failsafe.rb:26:in `call'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/rack-1.1.0/lib/rack/lock.rb:11:in `call'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:106:in `call'
/usr/local/rvm/gems/jruby-head/gems/glassfish-1.0.3.dev-universal-java/lib/../lib/rack/adapter/rails.rb:133:in `call'
/usr/local/rvm/gems/jruby-head/gems/glassfish-1.0.3.dev-universal-java/lib/../lib/rack/handler/grizzly.rb:55:in `call'
:1

Oct 29, 2010 4:54:17 AM com.sun.grizzly.http.SocketChannelOutputBuffer flushChannel
FINEST: flushChannel isAsyncHttpWriteEnabled=false bb=java.nio.HeapByteBuffer[pos=0 lim=1088 cap=33368]

I have a jruby application deployed using glassfish-gem with an apache front end. When I do a form post of a file it fails on files over a certian size, seems to be around 800k. The error is below if it helps any.

glassfish.yml is generated, no changes from default other than to increase some java memory settings.

I have bypassed apache and gone straight to the app but still have issues. Enabling threading in rails makes the problem worse.

INFO: /!\ FAILSAFE /!\  Fri Oct 29 04:54:17 +0000 2010
Status: 500 Internal Server Error
Stream closed
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/rack-1.1.0/lib/rack/utils.rb:466:in `parse_multipart'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/rack-1.1.0/lib/rack/request.rb:268:in `parse_multipart'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/rack-1.1.0/lib/rack/request.rb:146:in `POST'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/facebooker-1.0.75/lib/rack/facebook.rb:38:in `call'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/actionpack-2.3.10/lib/action_controller/session/cookie_store.rb:100:in `call'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/actionpack-2.3.10/lib/action_controller/failsafe.rb:26:in `call'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/rack-1.1.0/lib/rack/lock.rb:11:in `call'
/var/www/LocalHabit/shared/bundle/jruby/1.8/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:106:in `call'
/usr/local/rvm/gems/jruby-head/gems/glassfish-1.0.3.dev-universal-java/lib/../lib/rack/adapter/rails.rb:133:in `call'
/usr/local/rvm/gems/jruby-head/gems/glassfish-1.0.3.dev-universal-java/lib/../lib/rack/handler/grizzly.rb:55:in `call'
:1

Oct 29, 2010 4:54:17 AM com.sun.grizzly.http.SocketChannelOutputBuffer flushChannel
FINEST: flushChannel isAsyncHttpWriteEnabled=false bb=java.nio.HeapByteBuffer[pos=0 lim=1088 cap=33368]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

左岸枫 2024-10-07 05:07:04

结果发现 jruby 版本 1.5.1 中引入了一个错误,据说该错误已在 1.5.6 中修复,但我放错了该错误的详细信息。这实际上与 jruby 中的一个帖子问题有关。

Turns out there was a bug introduced in jruby version 1.5.1, that is supposedly fixed in 1.5.6, but I misplaced the details on the bug. It was actually related to a post issue in jruby in general.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文