什么可能导致这个轨道ioerror封闭流? [英] what could be causing this rails ioerror closed stream?

查看:201
本文介绍了什么可能导致这个轨道ioerror封闭流?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个rails应用程序,以开发模式运行(使用sqlite数据库)。该应用程序的目的是允许用户通过java客户端上传文件。



如果用户想要上传文件夹,其中的所有文件将被递归上传。如果用户想要上传文件,文件将被正常上传。



以下是我收到的错误:

  
IOError

在UploadedFilesController#new

关闭流

这是应用程序跟踪:

  
/usr/lib/ruby/1.8/tempfile.rb: 167:在`close'
/usr/lib/ruby/1.8/tempfile.rb:167:in`callback'
/var/lib/gems/1.8/gems/activesupport-2.0.2/ lib / active_support / vendor / builder-2.1.2 / blankslate.rb:85:在`call'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder -2.1.2 / blankslate.rb:85:在`method_added'
app / controllers / uploaded_files_controller.rb:114
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib $ / $ / $ / $ / $ $ b /var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:342:in`new_constan ts_in'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:202:in`load_file'
/var/lib/gems/1.8/ gems / activesupport-2.0.2 / lib / active_support / dependencies.rb:94:在`require_or_load'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb :248:在`load_missing_constant'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:453:in`const_missing'
/ var / lib $ g $ / $ / $ / $ / $ /在__size / '
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/routing.rb:1426:in'识别'
/var/lib/gems/1.8/gems /rails-2.0.2/lib/webrick_server.rb:78:in`service'
/var/lib/gems/1.8/gems/rails-2.0.2/li b / commands / servers / webrick.rb:66
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:496:in`require'
$ / $ / $ / $ / $ / $ / $ / $ / $ /在/ etc /

这是框架跟踪:

 code> 
/usr/lib/ruby/1.8/tempfile.rb:167:in`close'
/usr/lib/ruby/1.8/tempfile.rb:167:in`callback '
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder-2.1.2/blankslate.rb:85:in`call'
/ var /lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder-2.1.2/blankslate.rb:85:in`method_added'
/var/lib/gems/1.8/ gems / actionpack-2.0.2 / lib / action_controller / dispatcher.rb:170:在`handle_request'
/var/lib/gems/1.8/gems/actionpack -2.0.2 / lib / action_controller / dispatcher.rb:115:在`dispatch'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:126中:在`dispatch_cgi'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:9:in`dispatch'
/ var / lib / gems / 1.8 / gems / rails-2.0.2 / lib / webrick_server.rb:112:在`handle_dispatch'
/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in`service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in`run'
/usr/lib/ruby/1.8/webrick/server.rb:173:in`start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:162:in`start'
/usr/lib/ruby/1.8/webrick/server.rb:162:in`start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:95:in`start'
/usr/lib/ruby/1.8/webrick/server.rb:92:in`each'
/ usr / lib / ruby​​ / b / usr / lib / ruby​​ / ck_server.rb:62:在`dispatch'
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in`gem_original_require'
/usr/lib/ruby/1.8/rubygems/ custom_require.rb:31:在`require'
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in`gem_original_require'
/usr/lib/ruby/1.8/rubygems/ custom_require.rb:31:在`require'
脚本/服务器:3

完整的追踪:

  
/usr/lib/ruby/1.8/tempfile.rb:167:in`close '
/usr/lib/ruby/1.8/tempfile.rb:167:in`callback'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor /builder-2.1.2/blankslate.rb:85:in`call'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder-2.1.2/ blankslate.rb:85:在`method_added'
app / controllers / uploaded_files_controller.rb:114
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies。 rb:203:在`load_without_new_constant_marking'
/var/lib/gems/1.8/gems/act ivesupport-2.0.2 / lib / active_support / dependencies.rb:203:在`load_file'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:342 :在`new_constants_in'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:202:in`load_file'
/ var / lib / gems $ 1 $ / $ / $ / $ dependencies.rb:248:在`load_missing_constant'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:453:in`const_missing'
/ var / lib / gems / 1.8 / gems / activesupport-2.0.2 / lib / active_support / dependencies.rb:465:在`const_missing'
/var/lib/gems/1.8/gems/activesupport-2.0.2 $ lib $ / $ / $ / $ / $ /在`constantize'
/var/lib/gems/1.8/gems/actionpack-2.0.2/li b / action_controller / routing.rb:1426:in`recognition'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:170:in`handle_request'$ $ b / b / b / b / b / b / b / -2.0.2 / lib / action_controller / dispatcher.rb:126:在`dispatch_cgi'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:9:在`dispatch'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/webrick_server.rb:112:in`handle_dispatch'
/var/lib/gems/1.8/ gems / rails-2.0.2 / lib / webrick_server.rb:78:在'service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in'service'
/ usr / lib / ruby​​ / 1.8 / webrick / httpserver.rb:65:在`run'
/usr/lib/ruby/1.8/webrick/server.rb:173:in`start_thread'
/ usr / lib / ruby​​ / 1.8 / webrick / server.rb:162:在`start'
/usr/lib/ruby/1.8/webrick/server.rb:162:in`start_thread'
/ usr / lib / ruby​​ / 1.8 / webrick / server.rb:95:在`start
/usr/lib/ruby/1.8/webrick/server.rb:92:in`each'
/usr/lib/ruby/1.8/webrick/server.rb:92:in`start'
/usr/lib/ruby/1.8/webrick/server.rb:23:in`start'
/usr/lib/ruby/1.8/webrick/server.rb:82:in`start'
/ var / lib / gems / $ 2.0 $ / $ / $ / $ / $ / $ / $ /1.8/rubygems/custom_require.rb:31:in`require'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:496:in`require'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:342:in`new_constants_in'
/var/lib/gems/1.8/gems/ activesupport-2.0.2 / lib / active_support / dependencies.rb:496:在`require'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/commands/server.rb:39
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in`gem_original_require'
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in`require'
script / server:3

我不知道为什么会发生这种情况...客户端在出现此错误之前,可以上传大约15-30个文件(从文件夹,通过java客户端)。我正在运行Rails 2.0.2。可能事实上,我以开发模式运行sqlite作为数据库导致这个?任何帮助将不胜感激 !



谢谢你们!

解决方案

我想我认为至少我觉得我这样做(客户端只是继续上传,无错误)。
从您上传的文件中读取数据后,您还应该关闭。谁曾想到? :P


I have a rails application, running in development mode ( with a sqlite database ). The application's purpose is to allow users to upload files through a java client.

If a user wants to upload a folder, all the files inside it will be recursively uploaded. If a user wants to upload a file, the file will be uploaded normally.

Here's the error I'm receiving :


 IOError

    in UploadedFilesController#new

closed stream

Here is the application trace :


/usr/lib/ruby/1.8/tempfile.rb:167:in `close'
/usr/lib/ruby/1.8/tempfile.rb:167:in `callback'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder-2.1.2/blankslate.rb:85:in `call'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder-2.1.2/blankslate.rb:85:in `method_added'
app/controllers/uploaded_files_controller.rb:114
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:203:in `load_file'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:342:in `new_constants_in'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:202:in `load_file'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:94:in `require_or_load'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:248:in `load_missing_constant'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:453:in `const_missing'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:465:in `const_missing'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/inflector.rb:257:in `constantize'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/core_ext/string/inflections.rb:148:in `constantize'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/routing.rb:1426:in `recognize'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/webrick_server.rb:78:in `service'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/commands/servers/webrick.rb:66
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:496:in `require'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:342:in `new_constants_in'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:496:in `require'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/commands/server.rb:39

Here is the framework trace :


/usr/lib/ruby/1.8/tempfile.rb:167:in `close'
/usr/lib/ruby/1.8/tempfile.rb:167:in `callback'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder-2.1.2/blankslate.rb:85:in `call'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder-2.1.2/blankslate.rb:85:in `method_added'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:170:in `handle_request'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:115:in `dispatch'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:126:in `dispatch_cgi'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:9:in `dispatch'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/webrick_server.rb:112:in `handle_dispatch'
/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:95:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `each'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:23:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:82:in `start'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/webrick_server.rb:62:in `dispatch'
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require'
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require'
script/server:3

Here is the full trace :


/usr/lib/ruby/1.8/tempfile.rb:167:in `close'
/usr/lib/ruby/1.8/tempfile.rb:167:in `callback'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder-2.1.2/blankslate.rb:85:in `call'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/vendor/builder-2.1.2/blankslate.rb:85:in `method_added'
app/controllers/uploaded_files_controller.rb:114
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:203:in `load_without_new_constant_marking'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:203:in `load_file'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:342:in `new_constants_in'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:202:in `load_file'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:94:in `require_or_load'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:248:in `load_missing_constant'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:453:in `const_missing'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:465:in `const_missing'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/inflector.rb:257:in `constantize'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/core_ext/string/inflections.rb:148:in `constantize'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/routing.rb:1426:in `recognize'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:170:in `handle_request'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:115:in `dispatch'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:126:in `dispatch_cgi'
/var/lib/gems/1.8/gems/actionpack-2.0.2/lib/action_controller/dispatcher.rb:9:in `dispatch'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/webrick_server.rb:112:in `handle_dispatch'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/webrick_server.rb:78:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:95:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `each'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:23:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:82:in `start'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/webrick_server.rb:62:in `dispatch'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/commands/servers/webrick.rb:66
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:496:in `require'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:342:in `new_constants_in'
/var/lib/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:496:in `require'
/var/lib/gems/1.8/gems/rails-2.0.2/lib/commands/server.rb:39
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require'
script/server:3

I have no clue why this happens ... the client gets to upload about 15-30 files ( from a folder, through the java client ) before this error appears. I am running Rails 2.0.2 . Could the fact that I'm running in development mode using sqlite as a database cause this ? Any help would be greatly appreciated !

Thanks guys !

解决方案

I think I've figured it out, at least I think I do ( the client just keeps on uploading now, error-free ) . After you read data from a file that you upload, you should also CLOSE it. Who would have thought? :P

这篇关于什么可能导致这个轨道ioerror封闭流?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆