From: SourceForge.net <no...@so...> - 2009-01-15 04:00:16
|
Bugs item #2508810, was opened at 2009-01-15 04:00 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=116528&aid=2508810&group_id=16528 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: PgSQL Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Robert Brewer (aminusfu) Assigned to: Nobody/Anonymous (nobody) Summary: PgVersion checks too restrictive Initial Comment: I was able to compile libpq for PG-8.3 on Vista, and build pyPgSQL-2.5.1. Then I got: File "c:\Python25\lib\site-packages\pyPgSQL\PgSQL.py", line 2210, in connect return Connection(connInfo, client_encoding, unicode_results) File "c:\Python25\lib\site-packages\pyPgSQL\PgSQL.py", line 2365, in __init__ raise DatabaseError, m libpq.DatabaseError: Invalid format for PgVersion construction. The "Invalid format for PgVersion?" problem is a simple code fix. pyPgSQL's pgversion.c basically calls: postgres=# select version(); version ----------------------------------------------------- PostgreSQL 8.3.5, compiled by Visual C++ build 1400 ...but expects the result to always be of the form: "PostgreSQL M.m.p on ...", and mine doesn't follow that form. Commenting out some of the version parsing code fixes it: PyErr_SetString(PyExc_ValueError, "Invalid format for PgVersion construction."); token = pg_strtok_r(s, " \t", &save_ptr); if (strcmp(token, "PostgreSQL") != 0) goto new_error; vstr = pg_strtok_r((char *)NULL, " \t", &save_ptr); token = pg_strtok_r((char *)NULL, " \t", &save_ptr); /* if (strcmp(token, "on") != 0) goto new_error; */ Those last two lines are what I commented out. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=116528&aid=2508810&group_id=16528 |
From: SourceForge.net <no...@so...> - 2010-04-20 00:31:43
|
Bugs item #2508810, was opened at 2009-01-15 13:00 Message generated for change (Comment added) made by doobs You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=116528&aid=2508810&group_id=16528 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: PgSQL Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Robert Brewer (aminusfu) Assigned to: Nobody/Anonymous (nobody) Summary: PgVersion checks too restrictive Initial Comment: I was able to compile libpq for PG-8.3 on Vista, and build pyPgSQL-2.5.1. Then I got: File "c:\Python25\lib\site-packages\pyPgSQL\PgSQL.py", line 2210, in connect return Connection(connInfo, client_encoding, unicode_results) File "c:\Python25\lib\site-packages\pyPgSQL\PgSQL.py", line 2365, in __init__ raise DatabaseError, m libpq.DatabaseError: Invalid format for PgVersion construction. The "Invalid format for PgVersion?" problem is a simple code fix. pyPgSQL's pgversion.c basically calls: postgres=# select version(); version ----------------------------------------------------- PostgreSQL 8.3.5, compiled by Visual C++ build 1400 ...but expects the result to always be of the form: "PostgreSQL M.m.p on ...", and mine doesn't follow that form. Commenting out some of the version parsing code fixes it: PyErr_SetString(PyExc_ValueError, "Invalid format for PgVersion construction."); token = pg_strtok_r(s, " \t", &save_ptr); if (strcmp(token, "PostgreSQL") != 0) goto new_error; vstr = pg_strtok_r((char *)NULL, " \t", &save_ptr); token = pg_strtok_r((char *)NULL, " \t", &save_ptr); /* if (strcmp(token, "on") != 0) goto new_error; */ Those last two lines are what I commented out. ---------------------------------------------------------------------- Comment By: Doug du Boulay (doobs) Date: 2010-04-20 09:31 Message: Yes indeed. I too just encountered this "Invalid format for PgVersion?" problem while connecting to a PostgreSQL 8.3 server on a Windows XP box. PyPgSQL used to work fine connecting to PostgreSQL 8.2 (specifically, python-pgsql 2.5.1-2ubuntu3 "A Python DB-API 2.0 interface to PostgreSQL") ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=116528&aid=2508810&group_id=16528 |
From: SourceForge.net <no...@so...> - 2010-04-20 00:48:24
|
Bugs item #2508810, was opened at 2009-01-15 13:00 Message generated for change (Comment added) made by doobs You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=116528&aid=2508810&group_id=16528 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: PgSQL Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Robert Brewer (aminusfu) Assigned to: Nobody/Anonymous (nobody) Summary: PgVersion checks too restrictive Initial Comment: I was able to compile libpq for PG-8.3 on Vista, and build pyPgSQL-2.5.1. Then I got: File "c:\Python25\lib\site-packages\pyPgSQL\PgSQL.py", line 2210, in connect return Connection(connInfo, client_encoding, unicode_results) File "c:\Python25\lib\site-packages\pyPgSQL\PgSQL.py", line 2365, in __init__ raise DatabaseError, m libpq.DatabaseError: Invalid format for PgVersion construction. The "Invalid format for PgVersion?" problem is a simple code fix. pyPgSQL's pgversion.c basically calls: postgres=# select version(); version ----------------------------------------------------- PostgreSQL 8.3.5, compiled by Visual C++ build 1400 ...but expects the result to always be of the form: "PostgreSQL M.m.p on ...", and mine doesn't follow that form. Commenting out some of the version parsing code fixes it: PyErr_SetString(PyExc_ValueError, "Invalid format for PgVersion construction."); token = pg_strtok_r(s, " \t", &save_ptr); if (strcmp(token, "PostgreSQL") != 0) goto new_error; vstr = pg_strtok_r((char *)NULL, " \t", &save_ptr); token = pg_strtok_r((char *)NULL, " \t", &save_ptr); /* if (strcmp(token, "on") != 0) goto new_error; */ Those last two lines are what I commented out. ---------------------------------------------------------------------- Comment By: Doug du Boulay (doobs) Date: 2010-04-20 09:48 Message: forgot to say version string: PostgreSQL 8.3.6, compiled by Visual C++ build 1400 ---------------------------------------------------------------------- Comment By: Doug du Boulay (doobs) Date: 2010-04-20 09:31 Message: Yes indeed. I too just encountered this "Invalid format for PgVersion?" problem while connecting to a PostgreSQL 8.3 server on a Windows XP box. PyPgSQL used to work fine connecting to PostgreSQL 8.2 (specifically, python-pgsql 2.5.1-2ubuntu3 "A Python DB-API 2.0 interface to PostgreSQL") ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=116528&aid=2508810&group_id=16528 |