Hello Shantanu,
Sorry for the delay on this - I've been backed up since the weekend when we were trading emails. The way Galaxy works with eggs is fairly complex with regard to handling conflicts, which is undoubtedly what is happening in your environment since you have the
mercurial package installed for your Python 2.6. Your environment probably results in a conflict that is not properly handled by the version_conflict() method in ~/lib/galaxy/eggs/__init__.py.
On Jun 4, 2012, at 4:04 PM, Shantanu Pavgi wrote:
Just want to update on the list about this error. I had followed up with Greg on this issue off-list as I didn't want to share all the hg output here on the list.
The galaxy had downloaded Mercurial egg however it's directory wasn't defined in the PYTHONPATH environment variable. However, it was included in the sys.path which I verified by printing it in the tool migration application. While debugging
this issue, I downloaded Mercurial (egg) externally using easy_install tool and set up PYTHONPATH to point to this external Mercurial egg. After this the tool migration script worked fine.
So should this galaxy-mercurial egg directory and other galaxy egg directories be included in the PYTHONPATH environment variable?
For Galaxy, you really don't have to set PYTHONPATH at all, so if you are not using it for other Python related stuff on your Galaxy server, try unsetting it, and Galaxy's mercurial egg will probably be found. If you need PYTHONPATH set, take a look at the
version_conflict() method in ~/lib/galaxy/eggs/__init__.py and see if you can figure out what is not being handled in your environment.