[Engine-devel] Opimizing Postgres Stored Procedures
Eli Mesika
emesika at redhat.com
Mon Aug 26 09:22:20 UTC 2013
Hi
I had merged the following patch
http://gerrit.ovirt.org/#/c/17962/
This patch introduce usage of the IMMUTABLE, STABLE and STRICT keywords in order to boost performance of the Postgres SPs.
Please make sure that your current/and future DB scripts applied that.
Volatility
----------
* A function should be marked as IMMUTABLE if it doesn't change the database, and if it doesn't perform any lookups (even for database configuration values) during its operation.
* A function should be marked STABLE if it doesn't change the database, but might perform lookups (IMMUTABLE is preferable if function meets the requirements).
* A function doesn't need to be marked VOLATILE, because that's the default.
STRICTNESS
----------
A function should be marked STRICT if it should return NULL when it is passed a NULL argument, and then the function won't even be called if it is indeed passed a NULL argument.
I am available for any questions.
Thanks
Eli
More information about the Engine-devel
mailing list