
When installing Galaxy Tool Shed repositories into a local Galaxy instance, tool shed dependecies are exchanged as an encoded python dictionary via the HTTP GET method. If a tool shed repository contains enough dependencies, the length of this encoded dictionary can become extremely long. In my case, it became long enough for my Apache server to choke on it: [Wed Sep 11 15:34:53 2013] [error] [client XXX.XXX.XXX.XXX] request failed: URI too long (longer than 8190) The HTTP standard does not place a limit on the length of a URI, but the de facto limit is 2000 characters. See the following stackoverflow answer: http://stackoverflow.com/a/417184 I would recommend either: 1) communicating toolshed dependencies via an HTTP POST 2) redesigning tool shed <-> instance communications As a stopgap measure, I've modified lib/tool_shed/util/encoding_util.py to use a more compact encoding scheme. I'm attaching a copy in case someone else runs into the same problem. -rico