Re: Patch: plan invalidation vs stored procedures
Hannu Krosing <hannu@2ndquadrant.com>
From: Hannu Krosing <hannu@2ndQuadrant.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Asko Oja <ascoja@gmail.com>, Pavel Stehule <pavel.stehule@gmail.com>, Dimitri Fontaine <dfontaine@hi-media.com>, pgsql-hackers@postgresql.org, Andrew Dunstan <andrew@dunslane.net>, David Fetter <david@fetter.org>, Martin Pihlak <martin.pihlak@gmail.com>
Date: 2008-08-19T10:38:10Z
Lists: pgsql-hackers
On Mon, 2008-08-18 at 20:29 -0400, Tom Lane wrote: > "Asko Oja" <ascoja@gmail.com> writes: > > For users of stored procedures it is protection from downtime. For Skype it > > has been around 20% of databse related downtime this year. > > Perhaps Skype needs to rethink how they are modifying functions. Why not suggest they just should stop using functions and move all business logic into client or "3rd tier" ? (Actually I would not recommend that as functions are very good way to abstract database access AND provide better security AND speed up queries) > The reason that this case wasn't covered in 8.3 is that there didn't > seem to be a use-case that justified doing the extra work. I still > haven't seen one. Other than inline-able SQL functions there is no > reason to invalidate a stored plan based on the fact that some function > it called changed contents. Maybe there should be something in postgreSQL docs that warns users against using functions in any non-trivial circumstances, as functions are not expected to behave like the rest of postgreSQL features and there is not plan to fix that ? ---------------- Hannu