| Commit message (Collapse) | Author | Age |
... | |
|
|
|
| |
resulting from SoC.
|
|
|
|
| |
in every shared library.
|
|
|
|
|
|
|
|
|
|
| |
as this seems only likely to create headaches for module developers. Put
the macro in the pre-existing fmgr.h file instead. Avoid being too cute
about how many fields we can cram into a word, and avoid trying to fetch
from a library we've already unlinked.
Along the way, it occurred to me that the magic block really ought to be
'const' so it can be stored in the program text area. Do the same for
the existing data blocks for PG_FUNCTION_INFO_V1 functions.
|
|
|
|
|
| |
across multiple loops, get rid of the shaky assumption that exactly one
tuple is returned per node iteration.
|
| |
|
| |
|
|
|
|
|
| |
This is just the minimal necessary change; we might want to adopt
later PPPort output instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It now only checks four things:
Major version number (7.4 or 8.1 for example)
NAMEDATALEN
FUNC_MAX_ARGS
INDEX_MAX_KEYS
The three constants were chosen because:
1. We document them in the config page in the docs
2. We mark them as changable in pg_config_manual.h
3. Changing any of these will break some of the more popular modules:
FUNC_MAX_ARGS changes fmgr interface, every module uses this NAMEDATALEN
changes syscache interface, every PL as well as tsearch uses this
INDEX_MAX_KEYS breaks tsearch and anything using GiST.
Martijn van Oosterhout
|
|
|
|
| |
Martijn van Oosterhout
|
|
|
|
| |
demonstrating that its intent wasn't obvious.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
---------------------------------------------------------------------------
Add dynamic record inspection to PL/PgSQL, useful for generic triggers:
tval2 := r.(cname);
or
columns := r.(*);
Titus von Boxberg
|
|
|
|
| |
into HEAD.
|
|
|
|
| |
Simon Riggs
|
|
|
|
| |
Qingqing Zhou
|
|
|
|
|
|
|
|
| |
#define inline __inline
Backpatch to 8.1.X.
Hiroshi Saito
|
|
|
|
|
|
|
|
|
|
| |
tval2 := r.(cname);
or
columns := r.(*);
Titus von Boxberg
|
| |
|
|
|
|
| |
Joachim Wieland
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
---------------------------------------------------------------------------
Delay write of pg_stats file to once every five minutes, during
shutdown, or when requested by a backend:
It changes so the file is only written once every 5 minutes (changeable
of course, I just picked something) instead of once every half second.
It's still written when the stats collector shuts down, just as before.
And it is now also written on backend request. A backend requests a
rewrite by simply sending a special stats message. It operates on the
assumption that the backends aren't actually going to read the
statistics file very often, compared to how frequent it's written today.
Magnus Hagander
|
| |
|
|
|
|
|
| |
with a fresh local value for each invocation, to avoid unexpected sharing
violations. Per recent -hackers discussion.
|
|
|
|
|
|
| |
If user picksplit on n-th column generate equals
left and right unions then it calls picksplit on n+1-th
column.
|
|
|
|
| |
From Andreas Seltenreich <andreas+pg@gate450.dyndns.org>
|
|
|
|
| |
wasn't exported by exports.txt. Ooops. Per buildfarm results.
|
|
|
|
|
|
|
|
|
| |
and standard_conforming_strings; likewise for the other client programs
that need it. As per previous discussion, a pg_dump dump now conforms
to the standard_conforming_strings setting of the source database.
We don't use E'' syntax in the dump, thereby improving portability of
the SQL. I added a SET escape_strings_warning = off command to keep
the dumps from getting a lot of back-chatter from that.
|
|
|
|
|
|
|
| |
Per Coverity bug #304. Thanks to Martijn van Oosterhout for reporting it.
Zero out the pointer fields of PGresult so that these mistakes are more
easily catched, per discussion.
|
| |
|
| |
|
|
|
|
|
|
| |
in place though, so that it plays nicely with older servers.
Per discussion.
|
| |
|
|
|
|
|
|
| |
current setting of standard_conforming_strings to decide how to quote
strings that will be used later. There is much more to do here but
this particular change breaks the build on Windows, so fix it now.
|
|
|
|
|
| |
superuser password, and also in the paths of the various files it issues
SQL COPY commands for. Per bug #2424.
|
|
|
|
|
|
|
| |
JOIN, which I removed in a recent fit of over-optimism that we wouldn't
have any future use for it. Now it's needed to support disambiguating
WITH CHECK OPTION from WITH TIME ZONE. As proof of concept, add stub
grammar productions for WITH CHECK OPTION.
|
|
|
|
| |
this works.
|
|
|
|
|
|
|
|
|
| |
'off'. This allows pg_dump output with standard_conforming_strings =
'on' to generate proper strings that can be loaded into other databases
without the backslash doubling we typically do. I have added the
dumping of the standard_conforming_strings value to pg_dump.
I also added standard backslash handling for plpgsql.
|
|
|
|
|
|
| |
per-call overhead is quite significant, at least on Linux: whatever
it's doing is more than just shoving the bytes into a buffer. Buffering
the data so we can call fwrite() just once per row seems to be a win.
|
|
|
|
| |
during COPY OUT. Andreas Pflug, some editorialization by moi.
|
|
|
|
| |
regression test.
|
|
|
|
|
|
| |
kept but now deprecated. Patch from Adam Sjøgren. Add regression test to
show plperl trigger data (Andrew).
TBD: apply similar changes to plpgsql, plpython and pltcl.
|
|
|
|
| |
By Andreas Seltenreich <andreas+pg@gate450.dyndns.org>
|
|
|
|
| |
CopySendData.
|
|
|
|
|
| |
really tables and shouldn't get DISABLE TRIGGER processing. Per bug
#2452 from Robert Treat.
|
|
|
|
|
|
|
|
| |
* some refactoring and simplify code int gistutil.c and gist.c
* now in some cases it can be called used-defined
picksplit method for non-first column in index, but here
is a place to do more.
* small fix of docs related to support NULL.
|
| |
|
|
|
|
| |
the thread-safety status of the library.
|
|
|
|
|
|
|
|
| |
and transaction visibility fields of tuples being sorted. These are
always uninteresting in a tuple being sorted (if the fields were actually
selected, they'd have been pulled out into user columns beforehand).
This saves about 24 bytes per row being sorted, which is a useful savings
for any but the widest of sort rows. Per recent discussion.
|
|
|
|
| |
in port/pg_config_paths.h.
|
|
|
|
|
|
|
|
|
| |
any use in the past many years, we'd have made some effort to include
them in all executor node types; but in fact they were only in
nodeAppend.c and nodeIndexscan.c, up until I copied nodeIndexscan.c's
occurrence into the new bitmap node types. Remove some other unused
macros in execdebug.h, too. Some day the whole header probably ought to
go away in favor of better-designed facilities.
|
| |
|