I am running a Galaxy instance at Cold Spring Harbor Laboratory, and in the process of preparing an update I have encountered some problems. When I try to create a new dataset (e.g. by running a tool), I receive an error message indicating a syntactic problem with backend database commands. Specifically, the error mentions a read-only cursor and occurs when the system is trying to look up the history hid number for the new dataset, a value which (as far as I understand it) should be an autoincrementing primary key.
My codebase is the 68a8b0397947 commit on the stable branch, plus some custom tool definitions, but no real modification to any core Galaxy code. The database I am using is PostgreSQL 9.1. I am using Python 2.6.4. In the target (production) environment, we run with 3 web server processes and 3 job runner processes, but I am encountering this error in a single-Galaxy-process test instance. The error is reported both in the logs (with a traceback originating in the bowels of SQLAlchemy) and via the web interface.
I dug through the commit history and found a comit (e1bc855165bc) with the comment "Upgrade psycopg2 to 2.5.1 (statically linked to PostgreSQL 9.2.4)." on Sep 23, 2013. I am wondering if this means I need to upgrade my database backend to PostgreSQL 2.4.x. The wrinkle lies in the fact that I need to keep 2 parallel Galaxy instances running for an extended time period (~1 month). The first is the current (not updated) local Galaxy instance, and the second is the new (updated) Galaxy instance, which naturally implies diverging databases. Does this mean I will need to maintain parallel installations of PostgreSQL 9.1 and 9.2.x? How would I go about setting up that configuration?
Any assistance on debugging this error would be greatly appreciated. Our initial goal was to roll out this update tomorrow afternoon, but that may need to be delayed because of this show-stopper. If I can provide any further useful information, please let me know, and I will be happy to do so.