[galaxy-dev] nginx upload - traceback
I’ve been trying to get the nxinx upload stuff working… I think i have the nginx config is working properly (files are present in the right spot with correct ownership and have correct content), but I see a traceback in the log (see below). I don’t see anything in the mail list search about this, so maybe I’ve done something wrong... — here’s are the relevant bits of my galaxy config file --- # nginx can also handle file uploads (user-to-Galaxy) via nginx_upload_module. # Configuration for this is complex and explained in detail in the # documentation linked above. The upload store is a temporary directory in # which files uploaded by the upload module will be placed. nginx_upload_store = /mnt/galaxy/data/galaxy/tmp/upload_store # This value overrides the action set on the file upload form, e.g. the web # path where the nginx_upload_module has been configured to intercept upload # requests. nginx_upload_path = /_upload ——nginx config —— #direct file uploads location /_upload { upload_store /mnt/galaxy/data/galaxy/tmp/upload_store; upload_pass_form_field ; upload_set_form_field __${upload_field_name}__is_composite true; upload_set_form_field __${upload_field_name}__keys name path; upload_set_form_field ${upload_field_name}_name $upload_file_name; upload_set_form_field ${upload_field_name}_path $upload_tmp_path; upload_pass_args on; upload_pass /_upload_done; } location /_upload_done { set $dst /tool_runner/index; if ($args ~ nginx_redir=([^]+)) { set $dst $1; } rewrite $dst; } Any ideas? Brad File '/mnt/galaxy/data/galaxy/galaxy-dist/lib/galaxy/web/framework/middleware/remoteuser.py', line 92 in __call__ return self.app( environ, start_response ) File '/mnt/galaxy/data/galaxy/galaxy-dist/eggs/Paste-1.7.5.1-py2.7.egg/paste/httpexceptions.py', line 633 in __call__ return self.application(environ, start_response) File '/mnt/galaxy/data/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line 132 in __call__ return self.handle_request( environ, start_response ) File '/mnt/galaxy/data/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line 190 in handle_request body = method( trans, **kwargs ) File '/mnt/galaxy/data/galaxy/galaxy-dist/lib/galaxy/webapps/galaxy/controllers/tool_runner.py', line 84 in index template, vars = tool.handle_input( trans, params.__dict__ ) File '/mnt/galaxy/data/galaxy/galaxy-dist/lib/galaxy/tools/__init__.py', line 1869 in handle_input self.update_state( trans, self.inputs_by_page[state.page], state.inputs, incoming, old_errors=old_errors or {}, source=source ) File '/mnt/galaxy/data/galaxy/galaxy-dist/lib/galaxy/tools/__init__.py', line 2263 in update_state current_case = input.get_current_case( value, trans ) File '/mnt/galaxy/data/galaxy/galaxy-dist/lib/galaxy/tools/parameters/grouping.py', line 462 in get_current_case raise Exception( No case matched value:, self.name, str_value ) Exception: ('No case matched value:', 'files_metadata', None) CGI Variables - CONTENT_LENGTH: '-1' CONTENT_TYPE: 'multipart/form-data; boundary=WebKitFormBoundaryfTsa16a7MJyYSF0i' HTTP_ACCEPT: 'application/json' HTTP_ACCEPT_ENCODING: 'gzip,deflate,sdch' HTTP_ACCEPT_LANGUAGE: 'en-US,en;q=0.8' HTTP_AUTHORIZATION: 'Basic bGFuZ2hvcnN0Om1pZWRoaWRsc2hhZmRv' HTTP_CACHE_CONTROL: 'no-cache' HTTP_CONNECTION: 'close' HTTP_COOKIE: 'galaxysession=dacacca08a0d5b7ec42fdebd408f7de21fe616408da7cc0a81d03a170f28a8adb286af52e48220be; __utma=171448127.504006193.1380078797.1392 167382.1394500277.13; __utmc=171448127; __utmz=171448127.1392167382.12.5.utmcsr=duckduckgo.comhttp://duckduckgo.com|utmccn=(referral)|utmcmd=referral|utmcct=/' HTTP_DNT: '1' HTTP_HOST: 'galaxy.neb.comhttp://galaxy.neb.com' HTTP_ORIGIN: 'http://galaxy.neb.com' HTTP_REFERER: 'http://galaxy.neb.com/' HTTP_REMOTE_USER: 'langho...@neb.commailto:langho...@neb.com' HTTP_USER_AGENT: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36' HTTP_X_FORWARDED_FOR: '172.17.1.252' HTTP_X_FORWARDED_HOST: 'galaxy.neb.comhttp://galaxy.neb.com' HTTP_X_REQUESTED_WITH: 'XMLHttpRequest' ORGINAL_HTTP_HOST: 'galaxy_app' ORGINAL_REMOTE_ADDR: '127.0.0.1' PATH_INFO: '/tool_runner/index' REMOTE_ADDR: '172.17.1.252' REQUEST_METHOD: 'POST' SERVER_NAME: '127.0.0.1' SERVER_PORT: '8080' SERVER_PROTOCOL: 'HTTP/1.0' WSGI Variables -- application: paste.recursive.RecursiveMiddleware object at 0x98d8cd0 is_api_request: False paste.cookies: (SimpleCookie: __utma='171448127.504006193.1380078797.1392167382.1394500277.13' __utmc='171448127' __utmz='171448127.1392167382.12.5.utmcsr=duckduckgo.comhttp://duckduckgo.com|utmccn=(referral)|utmcmd=referral|utmcct=/'
[galaxy-dev] nginx upload
Hi, I'm trying to debug file uploads using the file browser. I have nginx setup to proxy but not to a sub directory. /usr/sbin/nginx -V nginx version: nginx/1.4.3 --add-module=/usr/local/src/nginx_upload_module-2.2.0 Here are the settings in my universe_wsgi.ini: nginx_upload_store = database/tmp/upload_store nginx_upload_path = /_upload Here is the nginx config: user galaxy; worker_processes 1; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; gzip on; gzip_http_version 1.1; gzip_vary on; gzip_comp_level 4; gzip_proxied any; gzip_types text/plain text/css application/x-javascript text/xml applicatio$ gzip_buffers 16 8k; gzip_disable MSIE [1-6].(?!.*SV1); upstream galaxy_app { server localhost:8080; } log_format main '$remote_addr - $remote_user [$time_local] $request ' '$status $body_bytes_sent $http_referer ' '$http_user_agent $http_x_forwarded_for'; access_log /var/log/nginx/access.log main; sendfileon; keepalive_timeout 65; server { listen 80; server_name localhost eugene.imb.nrc.ca; client_max_body_size 10G; #charset koi8-r; #access_log /var/log/nginx/log/host.access.log main; location / { proxy_pass http://galaxy_app; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } location /static { alias /software/packages/galaxy/galaxy-dist/static; expires 24h; } location /static/style { alias /software/packages/galaxy/galaxy-dist/static/june_2007_style/blue; expires 24h; } location /static/scripts { alias /software/packages/galaxy/galaxy-dist/static/scripts/packed; } location /favicon.ico { alias /software/packages/galaxy/galaxy_dist/static/favicon.ico; } location /robots.txt { alias /software/packages/galaxy/galaxy-dist/static/robots.txt; } location /_x_accel_redirect/ { internal; alias /; } location /_upload { upload_store /software/packages/galaxy/galaxy-dist/database/tmp/upload_store; upload_pass_form_field ; upload_set_form_field __${upload_field_name}__is_composite true; upload_set_form_field __${upload_field_name}__keys name path; upload_set_form_field ${upload_field_name}_name $upload_file_name; upload_set_form_field ${upload_field_name}_path $upload_tmp_path; upload_pass_args on; upload_pass /_upload_done; } location /_upload_done { set $dst /tool_runner/index; if ($args ~ nginx_redir=([^]+)) { set $dst $1; } rewrite $dst; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } The upload store is on a NFS filesystem. There is nothing in the nginx error log. There is nothing in the paster log. I've noticed that files start to be written to the upload store directory but get cut off by a refresh: -234101252030936 Content-Disposition: form-data; name=refresh refresh The upload usually tries again ~10 times, unless manually cutoff earlier, before giving up. The user usually sees that the data is uploading and that message never goes away. I should mention that I have not yet upgraded to the latest release: $ hg summary parent: 11216:c458a0fe1ba8 I also have debug settings on for galaxy. Likely some setting I've messed up. I'd be grateful for a point in the right direction. I've looked through the archives and googled bunch without success. I saw there have been changes to how the upload module works with nginx 1.3.9+. Should I downgrade my nginx if the newer version don't play nicely with galaxy? Thanks, -Sheldon Sheldon Briand NRC Research Computing Support Analyst Research Computing Support / Soutien Informartique a la Recherche Operations, Science Portfolio / Operations, Portefeuil des sciences SSC-NRC / SPC-CNRC Rm 329A, 1411 Oxford Street / Piece 329A, 1411 Rue Oxford Halifax, NS B3H 3Z1 902 426-1677 sheldon.bri...@ssc-spc.gc.ca ___ Please keep all replies on the list by using reply all in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/ To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/
[galaxy-dev] Nginx upload configuration question
Dear All, When I turn on Nginx upload (as below) I get and error: Not Found The resource cannot be found No route for /data/database/tmp/upload_store The nginx upload settings for universe.ini are: # nginx can also handle file uploads (user-to-Galaxy) via nginx_upload_module. # Configuration for this is complex and explained in detail in the # documentation linked above. The upload store is a temporary directory in # which files uploaded by the upload module will be placed. nginx_upload_store = True # This value overrides the action set on the file upload form, e.g. the web # path where the nginx_upload_module has been configured to intercept upload # requests. nginx_upload_path = /data/database/tmp/upload_store The nginx.conf settings are: location /_upload { upload_store /data/database/tmp/upload_store; upload_pass_form_field ; upload_set_form_field __${upload_field_name}__is_composite true; upload_set_form_field __${upload_field_name}__keys name path; upload_set_form_field ${upload_field_name}_name $upload_file_name; upload_set_form_field ${upload_field_name}_path $upload_tmp_path; upload_pass_args on; upload_pass /_upload_done; } location /_upload_done { set $dst /tool_runner/index; if ($args ~ nginx_redir=([^]+)) { set $dst $1; } rewrite $dst; } } If I comment out the 2 universe.ini settings above then the upload works correctly. I would appreciate any suggestions, Yours Bart. ___ Please keep all replies on the list by using reply all in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/