Hello
I've encountered some problems installing and then trying to remove a
tool from the main toolshed in a local Galaxy production instance. The
tool is the tmap_wrapper but I don't think that the tool itself is the
problem.
When I tried the automated install from the toolshed, the Galaxy window
came back with "Server error" and in paster.log I found this:
== paster.log fragment start ==
galaxy.util.shed_util DEBUG 2012-04-20 15:46:15,151 Installing
repository 'tmap_wrapper'
galaxy.util.shed_util DEBUG 2012-04-20 15:46:15,186 Cloning
http://toolshed.g2.bx.psu.edu/repos/nils
homer/tmap_wrapper
galaxy.util.shed_util DEBUG 2012-04-20 15:46:17,114 Updating cloned
repository to revision "40ade4f81a30"
galaxy.tools.parameters.dynamic_options WARNING 2012-04-20 15:46:17,278
Data table named 'tmap_indexes' is required by tool but not configured
galaxy.util.shed_util DEBUG 2012-04-20 15:46:17,322 Adding new row (or
updating an existing row) for repository 'tmap_wrapper' in the
tool_shed_repository table.
galaxy.tools.parameters.dynamic_options WARNING 2012-04-20 15:46:17,400
Data table named 'tmap_indexes' is required by tool but not configured
130.88.213.137 - - [20/Apr/2012:15:46:15 +0100] "POST
/galaxy/admin_toolshed/install_repository?tool_shed_url=http%3A%2F%2Ftoolshed.g2.bx.psu.edu%2F&repo_info_dict=17a5b933699a3c40818076daffd7d763e25e8071%3A7b22746d61705f77726170706572223a205b226d617070696e6720666f7220496f6e20546f7272656e74222c2022687474703a2f2f746f6f6c736865642e67322e62782e7073752e6564752f7265706f732f6e696c73686f6d65722f746d61705f77726170706572222c2022343061646534663831613330225d7d&includes_tools=True
HTTP/1.1" 500 -
"http://XXXXXX.XX.XXXXXXXXXX.XX.XX/galaxy/admin_toolshed/install_repository?tool_shed_url=http://toolshed.g2.bx.psu.edu/&repo_info_dict=17a5b933699a3c40818076daffd7d763e25e8071:7b22746d61705f77726170706572223a205b226d617070696e6720666f7220496f6e20546f7272656e74222c2022687474703a2f2f746f6f6c736865642e67322e62782e7073752e6564752f7265706f732f6e696c73686f6d65722f746d61705f77726170706572222c2022343061646534663831613330225d7d&includes_tools=True"
"Mozilla/5.0 (X11; Linux x86_64; rv:10.0.1) Gecko/20100101 Firefox/10.0.1"
Error - <type 'exceptions.NameError'>: global name
'handle_sample_tool_data_table_conf_file' is not defined
URL:
http://XXXXXX.XX.XXXXXXXXXX.XX.XX/galaxy/admin_toolshed/install_repository?tool_shed_url=http%3A%2F%2Ftoolshed.g2.bx.psu.edu%2F&repo_info_dict=17a5b933699a3c40818076daffd7d763e25e8071%3A7b22746d61705f77726170706572223a205b226d617070696e6720666f7220496f6e20546f7272656e74222c2022687474703a2f2f746f6f6c736865642e67322e62782e7073752e6564752f7265706f732f6e696c73686f6d65722f746d61705f77726170706572222c2022343061646534663831613330225d7d&includes_tools=True
File
'/home/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/exceptions/errormiddleware.py',
line 143 in __call__
app_iter = self.application(environ, start_response)
File
'/home/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/recursive.py',
line 80 in __call__
return self.application(environ, start_response)
File
'/home/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/httpexceptions.py',
line 632 in __call__
return self.application(environ, start_response)
File '/home/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line
160 in __call__
body = method( trans, **kwargs )
File '/home/galaxy/galaxy-dist/lib/galaxy/web/framework/__init__.py',
line 173 in decorator
return func( self, trans, *args, **kwargs )
File
'/home/galaxy/galaxy-dist/lib/galaxy/web/controllers/admin_toolshed.py',
line 316 in install_repository
shed_tool_conf=shed_tool_conf )
File '/home/galaxy/galaxy-dist/lib/galaxy/util/shed_util.py', line 890
in load_repository_contents
repository_tools_tups = handle_missing_data_table_entry( trans.app,
tool_path, sample_files, repository_tools_tups )
File '/home/galaxy/galaxy-dist/lib/galaxy/util/shed_util.py', line 753
in handle_missing_data_table_entry
error, correction_msg = handle_sample_tool_data_table_conf_file( app,
sample_file )
NameError: global name 'handle_sample_tool_data_table_conf_file' is not
defined
== paster.log fragment end ==
(I've replaced the machine name in the URLs with X's so our sysadmin
won't maim me.) It seems that the error is something to do with Galaxy
failing to handle the tool's tool_data_table_conf.xml.sample.
As far as I can tell the hg clone of the tool worked okay as the files
for the tool can be found in
/home/galaxy/shed_tools/toolshed.g2.bx.psu.edu/repos/nilshomer/tmap_wrapper/40ade4f81a30/tmap_wrapper/tmap_wrapper_0.0.19
but the tool doesn't appear in the tool panel and isn't referenced in
either the shed_tool_conf.xml or tool_conf.xml files.
However: the tool does appear under the Admin -> Manage installed tool
shed repositories option in Galaxy. Unfortunately attempting to
uninstall it via this interface also fails with the "Server error" in
the Galaxy window. This section of paster.log looks relevant here:
== paster.log fragment start ==
Error - <type 'exceptions.TypeError'>: coercing to Unicode: need string
or buffer, NoneType found
URL:
http://XXXXXX.XX.XXXXXXXXXX.XX.XX/galaxy/admin_toolshed/deactivate_or_uninstall_repository?id=f2db41e1fa331b3e
File
'/home/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/exceptions/errormiddleware.py',
line 143 in __call__
app_iter = self.application(environ, start_response)
File
'/home/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/recursive.py',
line 80 in __call__
return self.application(environ, start_response)
File
'/home/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/httpexceptions.py',
line 632 in __call__
return self.application(environ, start_response)
File '/home/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line
160 in __call__
body = method( trans, **kwargs )
File '/home/galaxy/galaxy-dist/lib/galaxy/web/framework/__init__.py',
line 173 in decorator
return func( self, trans, *args, **kwargs )
File
'/home/galaxy/galaxy-dist/lib/galaxy/web/controllers/admin_toolshed.py',
line 181 in deactivate_or_uninstall_repository
remove_from_tool_panel( trans, repository, shed_tool_conf,
uninstall=remove_from_disk_checked )
File '/home/galaxy/galaxy-dist/lib/galaxy/util/shed_util.py', line 989
in remove_from_tool_panel
tool_panel_dict =
generate_tool_panel_dict_from_shed_tool_conf_entries( trans, repository )
File '/home/galaxy/galaxy-dist/lib/galaxy/util/shed_util.py', line 490
in generate_tool_panel_dict_from_shed_tool_conf_entries
tree = util.parse_xml( shed_tool_conf )
File '/home/galaxy/galaxy-dist/lib/galaxy/util/__init__.py', line 105 in
parse_xml
tree = ElementTree.parse(fname)
File
'/home/galaxy/galaxy-dist/eggs/elementtree-1.2.6_20050316-py2.6.egg/elementtree/ElementTree.py',
line 859 in parse
File
'/home/galaxy/galaxy-dist/eggs/elementtree-1.2.6_20050316-py2.6.egg/elementtree/ElementTree.py',
line 576 in parse
TypeError: coercing to Unicode: need string or buffer, NoneType found
== paster.log fragment end ==
After this the tool files are still there under the "shed_tools"
directory, and the tool still appears under "Manage installed tool shed
repositories".
We're using the most recent galaxy-dist (hg reports our most recent
changeset as 6799:40f1816d6857).
I don't know if anyone else has encountered this problem but it would be
useful to know how to either complete the automated install or else be
able to remove the tool completely and add it manually for now.
Apologies btw for the long message, thanks for your help - Galaxy is
fantastic and all the work that has gone into it is very much appreciated!
Best wishes
Peter
--
Peter Briggs peter.bri...@manchester.ac.uk
Bioinformatics Core Facility University of Manchester
B.1083 Michael Smith Bldg Tel: (0161) 2751482
___________________________________________________________
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/