Hello Zhaozhen,

this is a known problem. The shed_tool_conf.xml got moved along with other configs into /config folder but unfortunately some tools stored the path absolutely in the DB. You can use the following script (which you should find in the Galaxy /scripts folder):
https://github.com/galaxyproject/galaxy/blob/dev/scripts/update_shed_config_path.py
to update your DB to have the correct path to the config. 

Sorry for the inconvenience.

Martin, Galaxy Team


On Tue, Apr 7, 2015 at 10:16 AM 孙兆朕 <sunzzn502@163.com> wrote:
Hi all,

I want to update some of my tool plug-in and some problem shows, even if I updated my Galaxy instance to the latest. I suppose it is not related to the version of Galaxy. 

The problem occured when I used the administrator's panel and update my plug-in using the  "Get updates" option. The next page reports that an internal Server Error has occured and the update was not successful.  All the plug-in updates seems had the same problem.

I checked the logs where I get the following message:

CGI Variables
-------------
  CONTENT_LENGTH: '0'
  HTTP_ACCEPT: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8'
  HTTP_ACCEPT_ENCODING: 'gzip,deflate,sdch'
  HTTP_ACCEPT_LANGUAGE: 'zh-CN,zh;q=0.8'
  HTTP_CONNECTION: 'close'
  HTTP_COOKIE: 'galaxysession=c6ca0ddb55be603a23b93349895e875da395c1164de6cfc693d5dd79dc3d9d2edcd8d527c7310424'
  HTTP_HOST: '222.28.163.110'
  HTTP_USER_AGENT: 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.116 Safari/537.36'
  HTTP_X_FORWARDED_FOR: '222.28.170.89'
  HTTP_X_FORWARDED_HOST: '222.28.163.110'
  ORGINAL_HTTP_HOST: '127.0.0.1:8080'
  ORGINAL_REMOTE_ADDR: '127.0.0.1'
  PATH_INFO: '/admin_toolshed/update_to_changeset_revision'
  REMOTE_ADDR: '222.28.170.89'
  REQUEST_METHOD: 'GET'
  SERVER_NAME: '127.0.0.1'
  SERVER_PORT: '8080'
  SERVER_PROTOCOL: 'HTTP/1.0'


WSGI Variables
--------------
  application: <paste.recursive.RecursiveMiddleware object at 0xd888510>
  is_api_request: False
  paste.cookies: (<SimpleCookie: galaxysession='c6ca0ddb55be603a23b93349895e875da395c1164de6cfc693d5dd79dc3d9d2edcd8d527c7310424'>, 'galaxysession=c6ca0ddb55be603a23b93349895e875da395c1164de6cfc693d5dd79dc3d9d2edcd8d527c7310424')
  paste.expected_exceptions: [<class 'paste.httpexceptions.HTTPException'>]
  paste.httpexceptions: <paste.httpexceptions.HTTPExceptionHandler object at 0xd888fd0>
  paste.httpserver.thread_pool: <paste.httpserver.ThreadPool object at 0xdcf8650>
  paste.parsed_querystring: ([('tool_shed_url', 'https://toolshed.g2.bx.psu.edu/'), ('name', 'blast_datatypes'), ('owner', 'devteam'), ('changeset_revision', 'de11e1a921c4'), ('latest_changeset_revision', '5482a8cd0f36'), ('latest_ctx_rev', '10')], 'tool_shed_url=https://toolshed.g2.bx.psu.edu/&name=blast_datatypes&owner=devteam&changeset_revision=de11e1a921c4&latest_changeset_revision=5482a8cd0f36&latest_ctx_rev=10')
  paste.recursive.forward: <paste.recursive.Forwarder from />
  paste.recursive.include: <paste.recursive.Includer from />
  paste.recursive.include_app_iter: <paste.recursive.IncluderAppIter from />
  paste.recursive.script_name: ''
  paste.throw_errors: True
  request_id: 'a12a5604dce911e4a05000215e543aa8'
  webob._parsed_query_vars: (MultiDict([('tool_shed_url', 'https://toolshed.g2.bx.psu.edu/'), ('name', 'blast_datatypes'), ('owner', 'devteam'), ('changeset_revision', 'de11e1a921c4'), ('latest_changeset_revision', '5482a8cd0f36'), ('latest_ctx_rev', '10')]), 'tool_shed_url=https://toolshed.g2.bx.psu.edu/&name=blast_datatypes&owner=devteam&changeset_revision=de11e1a921c4&latest_changeset_revision=5482a8cd0f36&latest_ctx_rev=10')
  wsgi process: 'Multithreaded'
------------------------------------------------------------
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 39438)
Traceback (most recent call last):
  File "/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/eggs/Paste-1.7.5.1-py2.6.egg/paste/httpserver.py", line 1068, in process_request_in_thread
    self.finish_request(request, client_address)
  File "/usr/lib64/python2.6/SocketServer.py", line 322, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "/usr/lib64/python2.6/SocketServer.py", line 618, in __init__
    self.finish()
  File "/usr/lib64/python2.6/SocketServer.py", line 661, in finish
    self.wfile.flush()
  File "/usr/lib64/python2.6/socket.py", line 303, in flush
    self._sock.sendall(buffer(data, write_offset, buffer_size))
error: [Errno 32] Broken pipe
----------------------------------------
222.28.170.89 - - [07/Apr/2015:13:47:59 +0800] "GET /admin_toolshed/update_to_changeset_revision?tool_shed_url=https://toolshed.g2.bx.psu.edu/&name=blast_datatypes&owner=devteam&changeset_revision=de11e1a921c4&latest_changeset_revision=5482a8cd0f36&latest_ctx_rev=10 HTTP/1.0" 500 - "http://222.28.163.110/admin_toolshed/browse_repositories?status=done&message=The+status+has+not+changed+in+the+tool+shed+for+repository+%3Cb%3Eblast_datatypes%3C%2Fb%3E." "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.116 Safari/537.36"
Error - <type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'get'
File '/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/lib/galaxy/web/framework/middleware/error.py', line 149 in __call__
  app_iter = self.application(environ, sr_checker)
File '/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/eggs/Paste-1.7.5.1-py2.6.egg/paste/recursive.py', line 84 in __call__
  return self.application(environ, start_response)
File '/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/eggs/Paste-1.7.5.1-py2.6.egg/paste/httpexceptions.py', line 633 in __call__
  return self.application(environ, start_response)
File '/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/lib/galaxy/web/framework/base.py', line 133 in __call__
  return self.handle_request( environ, start_response )
File '/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/lib/galaxy/web/framework/base.py', line 191 in handle_request
  body = method( trans, **kwargs )
File '/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/lib/galaxy/web/framework/decorators.py', line 87 in decorator
  return func( self, trans, *args, **kwargs )
File '/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/lib/galaxy/webapps/galaxy/controllers/admin_toolshed.py', line 1954 in update_to_changeset_revision
  persist=True )
File '/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/lib/tool_shed/galaxy_install/metadata/installed_repository_metadata_manager.py', line 31 in __init__
  metadata_dict=metadata_dict, user=None )
File '/share/apps/galaxy/Galaxy_Test2015/galaxy-dist/lib/tool_shed/metadata/metadata_generator.py', line 60 in __init__
  self.metadata_dict = { 'shed_config_filename' : self.shed_config_dict.get( 'config_filename', None ) }
AttributeError: 'NoneType' object has no attribute 'get'


CGI Variables
-------------
  CONTENT_LENGTH: '0'
  HTTP_ACCEPT: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8'
  HTTP_ACCEPT_ENCODING: 'gzip,deflate,sdch'
  HTTP_ACCEPT_LANGUAGE: 'zh-CN,zh;q=0.8'
  HTTP_CONNECTION: 'close'
  HTTP_COOKIE: 'galaxysession=c6ca0ddb55be603a23b93349895e875da395c1164de6cfc693d5dd79dc3d9d2edcd8d527c7310424'
  HTTP_HOST: '222.28.163.110'
  HTTP_USER_AGENT: 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.116 Safari/537.36'
  HTTP_X_FORWARDED_FOR: '222.28.170.89'
  HTTP_X_FORWARDED_HOST: '222.28.163.110'
  ORGINAL_HTTP_HOST: '127.0.0.1:8080'
  ORGINAL_REMOTE_ADDR: '127.0.0.1'
  PATH_INFO: '/admin_toolshed/update_to_changeset_revision'
  REMOTE_ADDR: '222.28.170.89'
  REQUEST_METHOD: 'GET'
  SERVER_NAME: '127.0.0.1'
  SERVER_PORT: '8080'
  SERVER_PROTOCOL: 'HTTP/1.0'


WSGI Variables
--------------
  application: <paste.recursive.RecursiveMiddleware object at 0xd888510>
  is_api_request: False
  paste.cookies: (<SimpleCookie: galaxysession='c6ca0ddb55be603a23b93349895e875da395c1164de6cfc693d5dd79dc3d9d2edcd8d527c7310424'>, 'galaxysession=c6ca0ddb55be603a23b93349895e875da395c1164de6cfc693d5dd79dc3d9d2edcd8d527c7310424')
  paste.expected_exceptions: [<class 'paste.httpexceptions.HTTPException'>]
  paste.httpexceptions: <paste.httpexceptions.HTTPExceptionHandler object at 0xd888fd0>
  paste.httpserver.thread_pool: <paste.httpserver.ThreadPool object at 0xdcf8650>
  paste.parsed_querystring: ([('tool_shed_url', 'https://toolshed.g2.bx.psu.edu/'), ('name', 'blast_datatypes'), ('owner', 'devteam'), ('changeset_revision', 'de11e1a921c4'), ('latest_changeset_revision', '5482a8cd0f36'), ('latest_ctx_rev', '10')], 'tool_shed_url=https://toolshed.g2.bx.psu.edu/&name=blast_datatypes&owner=devteam&changeset_revision=de11e1a921c4&latest_changeset_revision=5482a8cd0f36&latest_ctx_rev=10')
  paste.recursive.forward: <paste.recursive.Forwarder from />
  paste.recursive.include: <paste.recursive.Includer from />
  paste.recursive.include_app_iter: <paste.recursive.IncluderAppIter from />
  paste.recursive.script_name: ''
  paste.throw_errors: True
  request_id: 'a58bb404dce911e481c700215e543aa8'
  webob._parsed_query_vars: (MultiDict([('tool_shed_url', 'https://toolshed.g2.bx.psu.edu/'), ('name', 'blast_datatypes'), ('owner', 'devteam'), ('changeset_revision', 'de11e1a921c4'), ('latest_changeset_revision', '5482a8cd0f36'), ('latest_ctx_rev', '10')]), 'tool_shed_url=https://toolshed.g2.bx.psu.edu/&name=blast_datatypes&owner=devteam&changeset_revision=de11e1a921c4&latest_changeset_revision=5482a8cd0f36&latest_ctx_rev=10')
  wsgi process: 'Multithreaded'
------------------------------------------------------------

Could you please give me some advise to figure out where the problem is and how to fix it?
Thanks,

Zhaozhen


___________________________________________________________
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:
  https://lists.galaxyproject.org/

To search Galaxy mailing lists use the unified search at:
  http://galaxyproject.org/search/mailinglists/