Received: from hummingbird.prod.itd.earthlink.net (hummingbird.prod.itd.earthlink.net [207.217.120.125]) by mail.postgresql.org (8.11.1/8.11.1) with ESMTP id f0IG0b067450 for ; Thu, 18 Jan 2001 11:00:37 -0500 (EST) (envelope-from craig@red-bean.com) Received: from krazykat (dialup-63.214.210.95.Philadelphia1.Level3.net [63.214.210.95]) by hummingbird.prod.itd.earthlink.net (8.9.3-EL_1_3/8.9.3) with ESMTP id IAA09547; Thu, 18 Jan 2001 08:00:27 -0800 (PST) Received: by krazykat (Postfix, from userid 1000) id E991423823; Thu, 18 Jan 2001 11:01:37 -0500 (EST) To: Tom Lane Cc: pgsql-interfaces@postgresql.org Subject: Re: issues with libpg interface References: <87itndwy8n.fsf@piracy.red-bean.com> <22568.979782928@sss.pgh.pa.us> From: Craig Brozefsky Date: 18 Jan 2001 11:01:37 -0500 In-Reply-To: <22568.979782928@sss.pgh.pa.us> Message-ID: <874rywkfxa.fsf@piracy.red-bean.com> Lines: 35 User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Archive-Number: 200101/197 X-Sequence-Number: 815 Tom Lane writes: > > The first one is that we are getting unexpected retun values from > > pgresultstatus after calling pgexec, a value of PGRES_TUPLES_OK. The > > thing is that we're not sending a SELECT, just UPDATES, INSERTS and > > DELETES. My understanding is that none of those return tuples. > > They don't. I think you must have some kind of multithreading bug > on the client side (whether it's in libpq or your code is hard to say). > A quick look at libpq's source shows that it can only generate > PGRES_TUPLES_OK after seeing a 'T' (row descriptor) message from the > backend, and the backend will surely not send such a thing except for > SELECT or FETCH. This is what we expected, but I wasn't familiar enough with the details of the backend protocol to know how significant these symptoms were. We've put locks on each database connection, so there should be only one query running on a connection at a time. We've been running it a few hours on a loaded application without any issues, so I think it's cleared up, but I'm not prepared to give it a clean slate for another day or so. On that note, what do I need to do to get UncommonSQL listed in the postgres interfaces page on the website? UncommonSQL, available at http://alpha.onshore.com/lisp-software, is both a functional and object-oriented interface to relational databases for Common Lisp. It includes support for PostgreSQL, as well as Oracle. It presently works in CMUCL, but should be portable to other runtimes. -- Craig Brozefsky In the rich man's house there is nowhere to spit but in his face -- Diogenes