Received: from sss.sss.pgh.pa.us (sss.pgh.pa.us [206.210.65.6]) by hub.org (8.8.8/8.7.5) with ESMTP id QAA13629; Thu, 30 Apr 1998 16:37:52 -0400 (EDT) Received: from sss.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.sss.pgh.pa.us (8.8.5/8.8.5) with ESMTP id QAA13214; Thu, 30 Apr 1998 16:36:05 -0400 (EDT) To: Michael Hirohama cc: pgsql-hackers@postgreSQL.org, pgsql-interfaces@postgreSQL.org Subject: Re: [HACKERS] Re: retrieving varchar size In-reply-to: Your message of Sun, 26 Apr 1998 17:55:54 -0700 Date: Thu, 30 Apr 1998 16:36:05 -0400 Message-ID: <13212.893968565@sss.pgh.pa.us> From: Tom Lane Michael Hirohama wrote: > The historical reason why the POSTGRES backend is required to send multiple > result sets is to support cursors on queries involving type inheritance and > anonymous target lists. > begin > declare c cursor for > select e.oid, e.* from EMP* e > fetch 10 in c > ... > To handle the command sequence above, frontend applications would need to > be provided with a new result descriptor when the "fetch 10 in c" crosses a > result set boundary. I tried this and was unable to produce a failure. It looks like the select only returns the set of fields applicable to the base class, regardless of what additional fields may be possessed by some subclasses. Which, in fact, is more or less what I'd expect. Is Michael remembering some old behavior that is no longer implemented? And if so, is the old or new behavior the correct one? regards, tom lane