Hi Eli,
Most of the functions that we have in the DB are doing very simple jobs like run a query,
insert/update and I see that now you have all QUERY functions as STABLE.
My questions:
Is this required for new functions from now on?
Is this done in order to improve performance?
Thank you,
Laszlo
----- Original Message -----
From: "Eli Mesika" <emesika(a)redhat.com>
To: "engine-devel" <engine-devel(a)ovirt.org>
Sent: Monday, August 26, 2013 11:22:20 AM
Subject: [Engine-devel] Opimizing Postgres Stored Procedures
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
_______________________________________________
Engine-devel mailing list
Engine-devel(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel