Joachim Jacob Contact details: http://www.bits.vib.be/index.php/about/80-team On 09/30/2013 02:15 PM, Greg Von Kuster wrote:
Hello Joachim,
What version of Galaxy / Tool Shed code are you using? [galaxy@galaxy galaxy-dist]$ hg tip changeset: 10411:c42567f43aa7
On Sep 30, 2013, at 8:05 AM, Joachim Jacob | VIB | <joachim.jacob@vib.be> wrote:
Hi Greg,
Sorry to dig up this unsolved thread from a few months back.
Recap of the bug: I have developed a small tool. I have put it in my local Toolshed, and installed it. After applying some changes to the tool, I 'hg push'ed the changes to my repository on my toolshed. I uninstalled the tool, and reinstalled it. Since I work with job handlers, I have to restart Galaxy. Since I had about ~4 committed changes, I have repeated these steps about 4 times.
What process do you use for "applying some changes to the tool"? Do you make these changes in a separate development repository and push them to your repository in your tool shed? Or are you making changes to the installed repository in your Galaxy instance and attempting to push them back to the repository in your Tool Shed?
The bug: the tool appears multiple times in the tool management window. 2 times as new, and 1 time as uninstalled (since I uninstalled it). The tool is still available in the toolbox, although it should not. The 2 installed tools have an option 'install', but when I click this I get an internal server error 500.
Galaxy version: ************* [galaxy@galaxy galaxy-dist]$ hg tip changeset: 10411:c42567f43aa7 tag: tip user: greg date: Mon Aug 19 13:19:56 2013 -0400 summary: Filter invalid objects when generating the list of repository_dependencies objects that are associated with a tool shed repository installed into Galaxy. *************
As per your request: the web log of this internal server error.
**************** 193.191.128.2 - - [30/Sep/2013:13:15:19 +0200] "GET /admin_toolshed/prepare_for_install?tool_shed_url=http://toolshed.bits.vib.be/&repository_ids=968205d9ed31733d&changeset_revisions=e08a6d9e97a3 HTTP/1.1" 500 - "http://galaxy.bits.vib.be/admin_toolshed/browse_repositories" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/28.0.1500.71 Chrome/28.0.1500.71 Safari/537.36" Debug at: http://galaxy.bits.vib.be/_debug/view/1380535486
When you point your browser to the above "Debug URL", what is the stack trace that is displayed? URL: http://galaxy.bits.vib.be/admin_toolshed/prepare_for_install?tool_shed_url=http://toolshed.bits.vib.be/&repository_ids=968205d9ed31733d&changeset_revisions=e08a6d9e97a3 File '/home/galaxy/galaxy-dist/eggs/WebError-0.8a-py2.6.egg/weberror/evalexception/middleware.py',
First I develop an XML, README, and tool_dependencies.xml in a development directory. When finished, I put them in a tool shed repo, by uploading a tar ball of these files. I clone the tool shed repo, and delete my development directory. I adjust files in that cloned tool shed repo (e.g. fixing typos, adding help,...) and push them back to the tool shed repo. Now, I did some changes to the tool_dependencies.xml and pushed them back to the tool shed. Next I update or remove/reinstall the tool via the Admin menu. I try to install the dependencies. That's how I work. I have a feeling that I know what's coming next. :-) line 364 in respond app_iter = self.application(environ, detect_start_response) File '/home/galaxy/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 '/home/galaxy/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 '/home/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line 132 in __call__ return self.handle_request( environ, start_response ) File '/home/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line 190 in handle_request body = method( trans, **kwargs ) File '/home/galaxy/galaxy-dist/lib/galaxy/web/framework/__init__.py', line 221 in decorator return func( self, trans, *args, **kwargs ) File '/home/galaxy/galaxy-dist/lib/galaxy/webapps/galaxy/controllers/admin_toolshed.py', line 840 in prepare_for_install raw_text = common_util.tool_shed_get( trans.app, tool_shed_url, url ) File '/home/galaxy/galaxy-dist/lib/tool_shed/util/common_util.py', line 110 in tool_shed_get response = urlopener.open( uri ) File '/usr/lib64/python2.6/urllib2.py', line 397 in open response = meth(req, response) File '/usr/lib64/python2.6/urllib2.py', line 510 in http_response 'http', request, response, code, msg, hdrs) File '/usr/lib64/python2.6/urllib2.py', line 435 in error return self._call_chain(*args) File '/usr/lib64/python2.6/urllib2.py', line 369 in _call_chain result = func(*args) File '/usr/lib64/python2.6/urllib2.py', line 518 in http_error_default raise HTTPError(req.get_full_url(), code, msg, hdrs, fp) HTTPError: HTTP Error 500: Internal Server Error
****************
The postgres database shows:
************************ galaxydb=> select id, tool_shed, name, owner, installed_changeset_revision, status, error_message from tool_shed_repository where name = 'transpose'; id | tool_shed | name | owner | installed_changeset_revision | status | error_message ----+----------------------+-----------+---------+------------------------------+-------------+--------------- 45 | toolshed.bits.vib.be | transpose | joachim | cee0157acee1 | Uninstalled | 44 | toolshed.bits.vib.be | transpose | joachim | 2fa0462b9303 | New | 43 | toolshed.bits.vib.be | transpose | joachim | e08a6d9e97a3 | New | (3 rows) ************************
These repositories in the "New" state look like the so-called "white ghosts" that cropped up for a time. The issues that resulted in their creation have been resolved, but some of the fixes will not be available in the distribution until the next Galaxy release, which is not yet scheduled.
How should I proceed ? You'll undoubtedly need to manually fix your database with sql - delete these records in the "New" state and all associated recoirds defined by foreign keys.
OK, thanks.
This is the second time I experience this. On a last note: I have noted also that I managed to get a repository with different branches in this tool shed repository, by mixing 'hg push' and uploading a tarball. There seems no easy way to fixing this.
Kind regards, Joachim
Joachim Jacob Contact details: http://www.bits.vib.be/index.php/about/80-team
On 06/14/2013 04:15 PM, Greg Von Kuster wrote:
Hello Joachim,
What version of Galaxy are your running?
What does the tool shed paster go show for the 500 Internal Server Error?
Also, run the following sql manually in your Galaxy database and send the results.
select id, tool_shed, name, owner, installed_changeset_revision, status, error_message from tool_shed_repository;
Thanks,
Greg Von Kuster
On Jun 14, 2013, at 3:41 AM, Joachim Jacob <joachim.jacob@gmail.com <mailto:joachim.jacob@gmail.com>> wrote:
Hi all,
I have developed a tool in our local Galaxy, and imported it in a local toolshed. I next removed the 'dev' version of the tool in Galaxy, and installed it now via het Tool Shed Manager.
I got an error that the dependencies could not be installed. If figured it out that it (needed to add an extra shell_command in the tool_dependencies) (and the mount point on my system needs to have exec permissions of course).
So I updated the tool in the toolshed. BUT, then I uninstalled the tool from Galaxy, and reinstalled it from the Tool Shed ... instead of just updating. Anyway, it has happened.
Now I have the tool listed in my 'Install Tool Shed Repositories', and when I click on it, it says 'this tool is not installed'. The only action I can apply on this installed tool shed repository is 'Install' (...). But clicking on that 'install' button, leads me to an error page (http error 500).
****************************** URL: http://localhost/admin_toolshed/prepare_for_install?tool_shed_url=http://localhost:9009/&repository_ids=84cbaf0b6bf7a1a9&changeset_revisions=fc2339abcab7 Module weberror.evalexception.middleware:364 in respond view
app_iter = self.application(environ, detect_start_response) Module paste.recursive:84 in __call__ view return self.application(environ, start_response) Module paste.httpexceptions:633 in __call__ view return self.application(environ, start_response) Module galaxy.web.framework.base:132 in __call__ view return self.handle_request( environ, start_response ) Module galaxy.web.framework.base:190 in handle_request view body = method( trans, **kwargs ) Module galaxy.web.framework:221 in decorator view return func( self, trans, *args, **kwargs ) Module galaxy.webapps.galaxy.controllers.admin_toolshed:825 in prepare_for_install view raw_text = common_util.tool_shed_get( trans.app, tool_shed_url, url ) Module tool_shed.util.common_util:110 in tool_shed_get view response = urlopener.open( uri ) Module urllib2:397 in open view response = meth(req, response) Module urllib2:510 in http_response view 'http', request, response, code, msg, hdrs) Module urllib2:435 in error view return self._call_chain(*args) Module urllib2:369 in _call_chain view result = func(*args) Module urllib2:518 in http_error_default view raise HTTPError(req.get_full_url(), code, msg, hdrs, fp) HTTPError: HTTP Error 500: Internal Server Error
The same happens when I go to the Tool Shed, and try to install the tool from there: Galaxy detects that the tool has been installed before, and points me to that 500 error page.
Any help is heartily appreciated,
Thanks, Joachim
-- Joachim Jacob Contact details: http://www.bits.vib.be/index.php/about/80-team -- @joachimjacob ___________________________________________________________ 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/
___________________________________________________________ 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/