I marked it volatile, and still the next time I call the function after the first insert, using the previous new id as as input parameter, it still can't "find" the newly inserted id for the next go-round. Nor can any regular SELECTs in the main program find it.
SusanOn Wed, Apr 16, 2014 at 5:18 PM, Susan Cassidy <susan.cassidy@xxxxxxxxxxxxxxxxxxxxxxxx> wrote:
Thanks,It isn't marked as one of those as all, so whatever the default is.That could be it. I'll look up the default.
SusanOn Wed, Apr 16, 2014 at 5:17 PM, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:Susan Cassidy <susan.cassidy@xxxxxxxxxxxxxxxxxxxxxxxx> writes:
> It is a fairly large and complex Perl program, so no, not really.
> I do an insert via a function, which returns the new id, then later I try
> to SELECT on that id, and it doesn't find it.
> Could it be because the insert is done inside a function?
Is the SELECT also inside a database function, and if so is that function
marked stable or immutable? That might explain it --- non-volatile
functions are intentionally designed not to notice updates that happen
after they start.
regards, tom lane