Thanks for looking into this Greg. The environment where I'm having
this problem is our testing and production systems.
Both environments are CentOS release 5.8 (Final) with Mercurial version
2.4.1.
Interestingly, when I tried the same thing with a development setup on
my OSX box (10.6.8) with Mercurial 2.4 I did not have the same issue.
One difference is that on my testing/production boxes I do have an older
version of the tool installed, so perhaps that is the issue.
I also tried uninstalling, but that led to the (expected) error that
that a previous changeset is installed:
The tool shed repository htseq_count with owner lparsons and changeset
revision f320093f1e8e was previously installed using changeset revision
5d969cb56112. The repository has been uninstalled, however, so reinstall
the original repository instead of installing it again. You can get the
latest updates for the repository using the Get updates option from the
repository's Repository Actions pop-up menu. Click here to manage the
repository.
I then attempted to reinstall and I got a javascript message the cloning
failed, and the repo is now "stuck" in the cloning state. I did not see
anything in the paster logs regarding this at all.
Here are the steps I took on my local system:
1. Upload htseq-count v0.3 to local toolshed
2. Install on local galaxy
3. Upload htseq-count v0.3-release2 to toolshed
[Errno 2] No such file or directory:
'/Users/lparsons/Documents/projects/sequencing/galaxy/galaxy-test1/database/community_files/000/repo_3/./tool_data_table_conf.xml.sample'
STDOUT from paster
htseq-count.xml does not exist!
sam_fa_indices.loc.sample does not exist!
static/images/count_modes.png does not exist!
test-data/htseq-test-paired.bam does not exist!
test-data/htseq-test-paired_counts.tsv does not exist!
test-data/htseq-test-paired_othercounts.tsv does not exist!
test-data/htseq-test.bam does not exist!
test-data/htseq-test.gff does not exist!
test-data/htseq-test.sam does not exist!
test-data/htseq-test_counts.tsv does not exist!
test-data/htseq-test_othercounts.tsv does not exist!
tool_data_table_conf.xml.sample does not exist!
4. Second attempt to upload
The file 'htseq-count_0.3.release2.tar.gz' has been successfully
uncompressed and uploaded to the repository. 1 undesirable items (.hg
.svn .git directories, .DS_Store, hgrc files, etc) were removed from the
archive. 13 files were removed from the repository root.
5. Get repository updates
The installed repository named 'htseq_count' has been updated to change
set revision '74a6a8221337'.
Greg Von Kuster wrote:
Hi Lance,
I tried several scenarios today in an attempt to reproduce this but I
was not able to. Have you tried uninstalling the repository (check
the checkbox to completely uninstall it) and then reinstall it? I'm
trying to reproduce this on a mac running mercurial version 2.2.3 and
Python 2.5. What's your environment?
Greg Von Kuster
On Dec 13, 2012, at 2:30 PM, Lance Parsons wrote:
Since I've had issues with workflow and the toolshed in the past, I
have changed my workflow so that my only interaction with the
toolshed is either via uploading a tarball via the web interface or
installing a tool into my local Galaxy via the web interface (or
occasionally just downloading tarballs).
In this specific case, I uploaded a tar.gz file of the entire tool
wrapper directory. I did NOT increment the tool version. In the
past, incrementing the tool version has generally worked fine.
However, when I leave the tool version the same, but change something
(such as the help text for the tool), and then upload a tarball to
the toolshed, I am unable to pull updates into my local galaxy
instance. I get an error similar to what I have described.
I hope this is enough information, but let me know if I can provide
more detail, etc. I would very much like to get to the root of this
issue, since it has plagued my attempts to use the toolshed smoothly
when (seemingly inevitable) minor changes need to be made. In the
past I have just had to wait until I update the tool version, as no
changes can be made to the installed revision in my production Galaxy
instance.
Greg Von Kuster wrote:
Hi Lance,
What process did you use for updating the tool shed repository and how many
separate repositories did you use? You should not be updating a local
repository, pushing the changes to the tool shed repository, and then
attempting to pull the changes back to the same repository. Your repository
environment should be something like this:
DEV REPO ( all development updates are performed here, so this is where the
tool version is incremented )
|
V
<pushed changeset>
|
V
EXISTING TOOL SHED REPO
|
V
<pulled changeset to some previously cloned repo>
|
V
PREVIOUSLY CLONED (possibly production) REPO
In other words, nothing should ever get pushed and pulled from the tool shed
repo into the same repo. If this is the process you used, it would undoubtedly
result in the behavior you saw. If you used separate repos as I describe
above, we'll need more details as to the process you used in order to determine
the cause of the problem.
Greg Von Kuster
On Dec 10, 2012, at 1:45 PM, Lance Parsons wrote:
I recently updated the htseq-count tool in the Galaxy toolshed to version 0.3.
This version has some functional changes and thus the tool version was
incremented. I installed this new version of the tool in my local Galaxy
instance.
However, I realized later that I missed updating one part of the help text. Today I fixed
that text (but left the tool version the same), tarred up the file, and uploaded it to
the toolshed. I then attempted to "Get Updates" from my local Galaxy instances
for that tool got the following error:
URL:http://galaxy-dev.princeton.edu/admin_toolshed/update_to_changeset_revision?tool_shed_url=http://toolshed.g2.bx.psu.edu/&name=htseq_count&owner=lparsons&changeset_revision=5d969cb56112&latest_changeset_revision=f320093f1e8e&latest_ctx_rev=11
File
'/data/galaxy-dev/galaxy-dev/eggs/WebError-0.8a-py2.6.egg/weberror/evalexception/middleware.py',
line 364 in respond
app_iter = self.application(environ, detect_start_response)
File
'/data/galaxy-dev/galaxy-dev/eggs/Paste-1.6-py2.6.egg/paste/debug/prints.py',
line 98 in __call__
environ, self.app)
File '/data/galaxy-dev/galaxy-dev/eggs/Paste-1.6-py2.6.egg/paste/wsgilib.py',
line 539 in intercept_output
app_iter = application(environ, replacement_start_response)
File '/data/galaxy-dev/galaxy-dev/eggs/Paste-1.6-py2.6.egg/paste/recursive.py',
line 80 in __call__
return self.application(environ, start_response)
File
'/data/galaxy-dev/galaxy-dev/lib/galaxy/web/framework/middleware/remoteuser.py',
line 91 in __call__
return self.app( environ, start_response )
File
'/data/galaxy-dev/galaxy-dev/eggs/Paste-1.6-py2.6.egg/paste/httpexceptions.py',
line 632 in __call__
return self.application(environ, start_response)
File '/data/galaxy-dev/galaxy-dev/lib/galaxy/web/framework/base.py', line 160
in __call__
body = method( trans, **kwargs )
File '/data/galaxy-dev/galaxy-dev/lib/galaxy/web/framework/__init__.py', line
206 in decorator
return func( self, trans, *args, **kwargs )
File
'/data/galaxy-dev/galaxy-dev/lib/galaxy/webapps/galaxy/controllers/admin_toolshed.py',
line 1677 in update_to_changeset_revision
update_repository( repo, latest_ctx_rev )
File '/data/galaxy-dev/galaxy-dev/lib/galaxy/util/shed_util_common.py', line
1428 in update_repository
rev=ctx_rev )
File
'/data/galaxy-dev/galaxy-dev/eggs/mercurial-2.2.3-py2.6-linux-x86_64-ucs2.egg/mercurial/commands.py',
line 5661 in update
rev = scmutil.revsingle(repo, rev, rev).rev()
File
'/data/galaxy-dev/galaxy-dev/eggs/mercurial-2.2.3-py2.6-linux-x86_64-ucs2.egg/mercurial/scmutil.py',
line 515 in revsingle
l = revrange(repo, [revspec])
File
'/data/galaxy-dev/galaxy-dev/eggs/mercurial-2.2.3-py2.6-linux-x86_64-ucs2.egg/mercurial/scmutil.py',
line 588 in revrange
for r in m(repo, range(len(repo))):
File
'/data/galaxy-dev/galaxy-dev/eggs/mercurial-2.2.3-py2.6-linux-x86_64-ucs2.egg/mercurial/revset.py',
line 1414 in mfunc
return getset(repo, subset, tree)
File
'/data/galaxy-dev/galaxy-dev/eggs/mercurial-2.2.3-py2.6-linux-x86_64-ucs2.egg/mercurial/revset.py',
line 156 in getset
return methods[x[0]](repo, subset, *x[1:])
File
'/data/galaxy-dev/galaxy-dev/eggs/mercurial-2.2.3-py2.6-linux-x86_64-ucs2.egg/mercurial/revset.py',
line 171 in symbolset
return stringset(repo, subset, x)
File
'/data/galaxy-dev/galaxy-dev/eggs/mercurial-2.2.3-py2.6-linux-x86_64-ucs2.egg/mercurial/revset.py',
line 161 in stringset
x = repo[x].rev()
File
'/data/galaxy-dev/galaxy-dev/eggs/mercurial-2.2.3-py2.6-linux-x86_64-ucs2.egg/mercurial/localrepo.py',
line 235 in __getitem__
return context.changectx(self, changeid)
File
'/data/galaxy-dev/galaxy-dev/eggs/mercurial-2.2.3-py2.6-linux-x86_64-ucs2.egg/mercurial/context.py',
line 103 in __init__
_("unknown revision '%s'") % changeid)
RepoLookupError: unknown revision '11'
I believe this is because the revision I have installed (10) is not longer
considered a valid revision by the toolshed (I presume since it is an older
revision of with the same tool version).
Any help would be appreciated. Thanks.
--
Lance Parsons - Scientific Programmer
134 Carl C. Icahn Laboratory
Lewis-Sigler Institute for Integrative Genomics
Princeton University
___________________________________________________________
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/
--
Lance Parsons - Scientific Programmer
134 Carl C. Icahn Laboratory
Lewis-Sigler Institute for Integrative Genomics
Princeton University
--
Lance Parsons - Scientific Programmer
134 Carl C. Icahn Laboratory
Lewis-Sigler Institute for Integrative Genomics
Princeton University
___________________________________________________________
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/