Re: Optimze usage of immutable functions as relation
Antonin Houska <ah@cybertec.at>
From: Antonin Houska <ah@cybertec.at>
To: Aleksandr Parfenov <asp437@gmail.com>
Cc: a.bykov@postgrespro.ru, pgsql-hackers@lists.postgresql.org
Date: 2018-11-08T14:08:03Z
Lists: pgsql-hackers
Aleksandr Parfenov <asp437@gmail.com> wrote: > I fixed a typo and some comments. Please find new version attached. I've checked this verstion too. * is_simple_stable_function() instead of fetching HeapTuple from the syscache manually, you might want to consider using functions from lsyscache.c (get_func_rettype, get_func_retset, etc.), or adding a function that returns (subset of) the fields you need in a single call. * pull_up_simple_function(): As you assume that ret->functions is a single-item list Assert(list_length(rte->functions) == 1); the following iteration is not necessary: foreach(lc, functions_list) Also, there seems to be a lot of copy & paste from pull_up_simple_values(), so some refactoring would make sense. -- Antonin Houska Cybertec Schönig & Schönig GmbH Gröhrmühlgasse 26, A-2700 Wiener Neustadt Web: https://www.cybertec-postgresql.com
Commits
-
Prevent bogus pullup of constant-valued functions returning composite.
- a9ae99d01909 13.0 landed
-
Allow functions-in-FROM to be pulled up if they reduce to constants.
- 7266d0997dd2 13.0 landed