Re: [GENERAL] plpythonu and return void

2005-08-09 Thread Adrian Klaver
On Monday 08 August 2005 08:02 pm, Tom Lane wrote:
 Adrian Klaver [EMAIL PROTECTED] writes:
  I recently migrated a database from Postgres 7.4.1 to Postgres 8.03. The
  only problem I have run into is that a plpythonu function that returns
  void will not run under 8.03. The error message states that a plpython
  function cannot return void. I got around it by having it return text and
  not actually returning anything. I have searched for an explanation and
  can't seem to locate one.

 The explanation is doubtless here:

 2004-09-19 19:38  tgl

   * src/pl/plpython/plpython.c: Add defenses against plpython
   functions being declared to take or return pseudotypes.  Not sure
   why I neglected to add these checks at the same time I added them
   to the other PLs, but it seems I did.

 It's certainly possible to weaken this test to allow void again,
 but shouldn't there be corresponding changes elsewhere to ensure that
 the behavior is actually sensible?

   regards, tom lane
Thanks for the explanation. One of these days I will remember that the source 
is my friend.
-- 
Adrian Klaver   
[EMAIL PROTECTED]

---(end of broadcast)---
TIP 9: In versions below 8.0, the planner will ignore your desire to
   choose an index scan if your joining column's datatypes do not
   match


[GENERAL] plpythonu and return void

2005-08-08 Thread Adrian Klaver
I recently migrated a database from Postgres 7.4.1 to Postgres 8.03. The only 
problem I have run into is that a plpythonu function that returns void will 
not run under 8.03. The error message states that a plpython function cannot 
return void. I got around it by having it return text and not actually 
returning anything. I have searched for an explanation and can't seem to 
locate one. Obviously I have missed something I just don't know what? Any 
suggestions would be appreciated.
-- 
Adrian Klaver   
[EMAIL PROTECTED]

---(end of broadcast)---
TIP 3: Have you checked our extensive FAQ?

   http://www.postgresql.org/docs/faq


Re: [GENERAL] plpythonu and return void

2005-08-08 Thread Tom Lane
Adrian Klaver [EMAIL PROTECTED] writes:
 I recently migrated a database from Postgres 7.4.1 to Postgres 8.03. The only
 problem I have run into is that a plpythonu function that returns void will 
 not run under 8.03. The error message states that a plpython function cannot 
 return void. I got around it by having it return text and not actually 
 returning anything. I have searched for an explanation and can't seem to 
 locate one.

The explanation is doubtless here:

2004-09-19 19:38  tgl

* src/pl/plpython/plpython.c: Add defenses against plpython
functions being declared to take or return pseudotypes.  Not sure
why I neglected to add these checks at the same time I added them
to the other PLs, but it seems I did.

It's certainly possible to weaken this test to allow void again,
but shouldn't there be corresponding changes elsewhere to ensure that
the behavior is actually sensible?

regards, tom lane

---(end of broadcast)---
TIP 4: Have you searched our list archives?

   http://archives.postgresql.org