Re: Fix PL/Python metadata when there is no result
От | Tom Lane |
---|---|
Тема | Re: Fix PL/Python metadata when there is no result |
Дата | |
Msg-id | 19069.1331153980@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: Fix PL/Python metadata when there is no result (Peter Eisentraut <peter_e@gmx.net>) |
Ответы |
Re: Fix PL/Python metadata when there is no result
|
Список | pgsql-hackers |
Peter Eisentraut <peter_e@gmx.net> writes: > On lör, 2012-02-25 at 18:03 +0100, Jean-Baptiste Quenot wrote: >> IMO raising an error is much better because: >> 1) It is not a valid usecase to retrieve result metadata when no rows >> are expected to be returned > Which led me to think, how are you actually expected to know when no > rows are expected to be returned, in PL/Python? You can look at > result.status(), which returns a numeric SPI status, but that seems > fragile. I notice that result.nrows() returns None when no rows are > returned. Is that good enough? In that case, we should document that > and then make the new functions throw exceptions like you suggest. Wait a minute ... I don't understand why that's not a valid use-case. I have seen more than one piece of code that does a SELECT ... LIMIT 0 or equivalent for the express purpose of finding out the rowtype produced by a particular query. Why would we make it impossible to do that in pl/python? Or are we talking about two different things? regards, tom lane
В списке pgsql-hackers по дате отправления: