| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
| |
initPlan sets a parameter for another. This could not (I think) happen before
8.1, but it's possible now because the initPlans generated by MIN/MAX
optimization might themselves use initPlans. We attach those initPlans as
siblings of the MIN/MAX ones, not children, to avoid duplicate computation
when multiple MIN/MAX aggregates are present; so this leads to the case of an
initPlan needing the result of a sibling initPlan, which is not possible with
ordinary query nesting. Hadn't been noticed because in most contexts having
too much stuff listed in extParam is fairly harmless. Fixes "plan should not
reference subplan's variable" bug reported by Catalin Pitis.
|
|
|
|
|
|
| |
This formulation requires every AM to provide amvacuumcleanup, unlike before,
but it's surely a whole lot cleaner. Also, add an 'amstorage' column to
pg_am so that we can get rid of hardwired knowledge in DefineOpClass().
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
text[], int4[], Tsearch2 support for GIN.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the union of its child relations as well. This might have been a good idea
when it was originally coded, but it's a fatally bad idea when inheritance is
being used for partitioning. It's better to have no stats at all than
completely misleading stats. Per report from Mark Liberman.
The bug arguably exists all the way back, but I've only patched HEAD and 8.1
because we weren't particularly trying to support partitioning before 8.1.
Eventually we ought to look at deriving union statistics instead of just
punting, but for now the drop kick looks good.
|
|
|
|
|
|
|
|
| |
input datatypes given, and use this before trying OpernameGetCandidates.
This is faster than the old method when there's an exact match, and it
does not seem materially slower when there's not. And it definitely
makes some of the callers cleaner, because they didn't really want to
know about a list of candidates anyway. Per discussion with Atsushi Ogawa.
|
|
|
|
|
| |
CONNECTION, fix a number of places that were missed (eg pg_dump support),
avoid executing an extra search of pg_database during startup.
|
|
|
|
|
|
| |
support both FOR UPDATE and FOR SHARE in one command, as well as both
NOWAIT and normal WAIT behavior. The more general code is actually
simpler and cleaner.
|
|
|
|
| |
> o -Allow per-database permissions to be set via GRANT
|
|
|
|
| |
Gevik Babakhani
|
|
|
|
| |
> * %Disallow changing default expression of a SERIAL column?
|
|
|
|
| |
Disallow changing DEFAULT expression of a SERIAL column.
|
| |
|
|
|
|
|
| |
Commit configure and pg_config.h.in, missed in last configure.in
update.
|
|
|
|
|
| |
doesn't use pqGetpwuid on WIN32. Rather than try to figure out why it
won't build on WIN32, just remove it.
|
|
|
|
| |
> * -Disallow changing default expression of a SERIAL column
|
|
|
|
| |
Dhanaraj M
|
|
|
|
|
|
| |
semaphores.
Qingqing Zhou
|
|
|
|
| |
Theo Schlossnagle
|
|
|
|
|
|
| |
(NaN == 0), -mp1 fixes it, so add it to the CFLAGS. Autoconf run.
Jeremy Drake
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MIN/MAX not be converted to use an index if the query WHERE clause contains
any volatile functions or subplans.
I had originally feared that the conversion might alter the behavior of such a
query with respect to a volatile function. Well, so it might, but only in the
sense that the function would get evaluated at a subset of the table rows
rather than all of them --- and we have never made any such guarantee anyway.
(For instance, we don't refuse to use an index for an ordinary non-aggregate
query when one of the non-indexable filter conditions contains a volatile
function.)
The prohibition against subplans was because of worry that that case wasn't
adequately tested, which it wasn't, but it turns out to be possible to make
8.1 fail anyway:
regression=# select o.ten, (select max(unique2) from tenk1 i where ten = o.ten
or ten = (select f1 from int4_tbl limit 1)) from tenk1 o;
ERROR: direct correlated subquery unsupported as initplan
This is due to bogus code in SS_make_initplan_from_plan (it's an initplan,
ergo it can't have any parParams). Having fixed that, we might as well allow
subplans as well as initplans.
|
|
|
|
| |
x86 file.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
be exported on Linux and Darwin. We already did this on Windows but
that's not enough, as evidenced by the fact that libecpg had an unexpected
dependency on one such symbol. We should try to do it on more platforms.
Fix ecpg's oversight, and bump libpq's major .so version number to reflect
the unwanted but nonetheless real ABI break.
|
| |
|
|
|
|
|
|
| |
assembler files, renamed as solaris_x86.s.
Theo Schlossnagle
|
| |
|
|
|
|
|
|
| |
cases. This was not needed in the existing uses within selfuncs.c, but if
we're gonna export it for general use, the extra generality seems helpful.
Motivated by looking at ltree example.
|
|
|
|
| |
Prevents duplicate meaningless log messsages.
|
|
|
|
|
| |
> Another idea is to allow separate configuration files for each module,
> or allow arbitrary SET commands to be passed to them.
|
| |
|
| |
|
|
|
|
| |
autoconf run.
|
|
|
|
|
|
| |
> >> >> > 1) named parameters additionally to args[]
> >> >> > 2) return composite-types from plpython as dictionary
> >> >> > 3) return result-set from plpython as list, iterator or generator
|
| |
|
|
|
|
| |
with be-secure.c.
|
| |
|
|
|
|
|
| |
> * Invalidate prepared queries, like INSERT, when the table definition
> is altered
|
|
|
|
| |
Libor Hoho?
|
|
|
|
|
|
|
|
|
| |
1) named parameters additionally to args[]
2) return composite-types from plpython as dictionary
3) return result-set from plpython as list, iterator or generator
Hannu Krosing
Sven Suursoho
|
| |
|
|
|
|
|
|
| |
applications don't need the SSL headers.
Martijn van Oosterhout
|
|
|
|
| |
then we should export a reasonable set of the supporting routines too.
|