| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
| |
the same page we are nanoseconds away from reading for real. There should be
something left to do on the current page before we consider issuing a prefetch.
|
|
|
|
|
|
|
|
| |
business with inheritance recursion: ALTER INDEX, ALTER SEQUENCE, ALTER
TRIGGER, ALTER VIEW. They would just silently ignore the ONLY.
ALTER TABLE has mixed behavior and cannot be dealt with this way because
of the resulting shift/reduce conflicts.
|
|
|
|
|
|
| |
recursive.
=> Note this incompatibility in the release notes.
|
|
|
|
|
|
|
|
|
|
| |
GUC variable effective_io_concurrency controls how many concurrent block
prefetch requests will be issued.
(The best way to handle this for plain index scans is still under debate,
so that part is not applied yet --- tgl)
Greg Stark
|
|
|
|
|
|
|
| |
we can get some buildfarm feedback about whether that function is still
problematic. (Note that the planned async-preread patch will not really
prove anything one way or the other in buildfarm testing, since it will
be inactive with default GUC settings.)
|
|
|
|
|
|
| |
bitmap. This is extracted from Greg Stark's posix_fadvise patch; it seems
worth committing separately, since it's potentially useful independently of
posix_fadvise.
|
|
|
|
|
|
|
| |
that are set up for execution with ExecPrepareExpr rather than going through
the full planner process. By introducing an explicit notion of "expression
planning", this patch also lays a bit of groundwork for maybe someday
allowing sub-selects in standalone expressions.
|
|
|
|
|
| |
* Use correct buffer size MAX_L10N_DATA
* Use strlcpy instead of StrNCpy
|
|
|
|
|
|
|
| |
parts of a time string so it properly handles different encodings.
Original patch by Hiroshi Saito, heavily reworked by me and
ITAGAKI Takahiro.
|
|
|
|
|
|
|
| |
their GUCs.
In passing, noted that the pg_hba options for krb5 authentication weren't
listed at all - so add this.
|
|
|
|
|
|
| |
function to the string type and add a couple of macros for string handling.
In passing, fix an off-by-one bug of mine.
|
|
|
|
| |
from Rushabh Lathia.
|
| |
|
|
|
|
| |
with URL pointing to email discussion.
|
|
|
|
|
|
|
|
|
| |
the default. This setting enables constraint exclusion checks only for
appendrel members (ie, inheritance children and UNION ALL arms), which are
the cases in which constraint exclusion is most likely to be useful. Avoiding
the overhead for simple queries that are unlikely to benefit should bring
the cost down to the point where this is a reasonable default setting.
Per today's discussion.
|
|
|
|
|
| |
debug_query_string; this allows current_query() to be more accurate;
docs updated; per idea from Tom
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
OutputFunctionCall, and friends. This allows SPI-using functions to invoke
datatype I/O without concern for the possibility that a SPI-using function
will be called (which could be either the I/O function itself, or a function
used in a domain check constraint). It's a tad ugly, but not nearly as ugly
as what'd be needed to make this work via retail insertion of push/pop
operations in all the PLs.
This reverts my patch of 2007-01-30 that inserted some retail SPI_push/pop
calls into plpgsql; that approach only fixed plpgsql, and not any other PLs.
But the other PLs have the issue too, as illustrated by a recent gripe from
Christian Schröder.
Back-patch to 8.2, which is as far back as this solution will work. It's
also as far back as we need to worry about the domain-constraint case, since
earlier versions did not attempt to check domain constraints within datatype
input. I'm not aware of any old I/O functions that use SPI themselves, so
this should be sufficient for a back-patch.
|
|
|
|
| |
'query_string' from current_query().
|
| |
|
|
|
|
|
|
|
|
|
| |
not include postgres.h nor anything else it doesn't directly need. Add
#includes to calling files as needed to compensate. Per my proposal of
yesterday.
This should be noted as a source code change in the 8.4 release notes,
since it's likely to require changes in add-on modules.
|
|
|
|
|
|
| |
to pass the full username@realm string to the authentication instead of
just the username. This makes it possible to use pg_ident.conf to authenticate
users from multiple realms as different database users.
|
|
|
|
|
| |
authentication options to be set in pg_hba.conf on a per-line basis, to
override the defaults set in postgresql.conf.
|
|
|
|
|
|
|
|
| |
consistent. Currently, in csvlog, vxid of an auxiliary process isn't
displayed. On the other hand, in stderr/syslog, invalid vxid (-1/0) of
that is displayed.
Fujii Masao
|
|
|
|
| |
Per Nathan Boley.
|
|
|
|
|
|
|
| |
particular this allows EmitWarningsOnPlaceholders messages to show up in the
postmaster log by default. Update elog.h comment to make it clearer what INFO
is for, and fix one example in the SGML docs that was misusing it. Per my
gripe of yesterday.
|
|
|
|
|
| |
where there's no limit on the size of datum we'll try to compress.
Other 8.4 tweaks to the behavior remain in place. Per discussion.
|
|
|
|
|
|
|
|
| |
If the table was smaller than REL_TRUNCATE_FRACTION (= 16) pages, we always
tried to acquire AccessExclusiveLock on it even if there was no empty pages
at the end.
Report by Simon Riggs. Back-patch all the way to 7.4.
|
| |
|
| |
|
| |
|
|
|
|
| |
restricted.
|
|
|
|
|
|
|
| |
default expressions to a function call, eval_const_expressions must recurse on
those expressions. Else they don't get simplified, and in particular we fail
to insert additional default arguments if any functions needing defaults are
in there. Per report from Rushabh Lathia.
|
|
|
|
|
|
|
|
| |
a more complete framework for writing custom option processing routines
by user-defined access methods.
Catalog version bumped due to the general API changes, which are going to
affect user-defined "amoptions" routines.
|
|
|
|
|
|
| |
re-loading a library already loaded into the postmaster.
ITAGAKI Takahiro
|
|
|
|
| |
present in the placeholder. Noted while testing pg_stat_statements.
|
|
|
|
|
|
| |
statistics.
Takahiro Itagaki
|
|
|
|
|
|
|
|
| |
except the caller can specify the encoding to work in; this will be needed
for pg_stat_statements. In passing, do some marginal efficiency hacking
and clean up some comments. Also, prevent the single-byte-encoding code
path from fetching one byte past the stated length of the string (this
last is a bug that might need to be back-patched at some point).
|
|
|
|
|
| |
be written for *non*-temp tables only. Report and test case by Mark
Kirkwood and Simon Riggs.
|
|
|
|
|
|
| |
when loaded via shared_preload_libraries. Needed for support of
pg_stat_statements, or pretty much anything else that wants a GUC to
control size of a shared memory allocation.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
initialization, to give loadable modules a reasonable place to perform
creation of any shared memory areas they need. This is the logical conclusion
of our previous creation of RequestAddinShmemSpace() and RequestAddinLWLocks().
We don't need an explicit shmem_shutdown_hook, because the existing
on_shmem_exit and on_proc_exit mechanisms serve that need.
Also, adjust SubPostmasterMain so that libraries that got loaded into the
postmaster will be loaded into all child processes, not only regular backends.
This improves consistency with the non-EXEC_BACKEND behavior, and might be
necessary for functionality for some types of add-ons.
|
|
|
|
|
|
|
| |
practically free given prior 8.4 changes in plancache and portal management,
and it makes it a lot easier for ExecutorStart/Run/End hooks to get at the
query text. Extracted from Itagaki Takahiro's pg_stat_statements patch,
with minor editorialization.
|
|
|
|
| |
it was the ldaptls parameter that was wrong...
|
|
|
|
| |
parameters.
|
|
|
|
|
| |
the postmaster. They are only used in backend processes, so it's just
a matter of re-labeling the GUCs.
|
|
|
|
|
| |
first; otherwise backends reading the file might reject values of custom
variables. Per experimentation with auto_explain.
|
|
|
|
|
|
|
|
|
| |
and change auto_explain's custom GUC variables to be named auto_explain.xxx
not just explain.xxx. Per discussion in connection with the
pg_stat_statements patch, it seems like a good idea to have the convention
that custom variable classes are named the same as their defining module.
Committing separately since this should happen regardless of what happens
with pg_stat_statements itself.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
is available during datatype input in Bind message processing. I put the
PopActiveSnapshot() or equivalent just before PortalDefineQuery, which is
an unsafe spot for it (in 8.3 and later) because we are carrying a plancache
refcount that hasn't yet been assigned to the portal. Any error thrown there
would result in leaking the refcount. It's not exactly likely that
PopActiveSnapshot would throw an elog, perhaps, but it could happen.
Reorder the code and add another comment warning not to do that.
|
|
|
|
|
| |
frame clause, as appears to be required by the fine print in the SQL spec.
Per discussion with Pavel, not doing so risks user confusion.
|
|
|
|
|
|
|
|
|
|
|
| |
so that user-defined window functions are possible. For the moment you'll
have to write them in C, for lack of any interface to the WindowObject API
in the available PLs, but it's better than no support at all.
There was some debate about the best syntax for this. I ended up choosing
the "it's an attribute" position --- the other approach will inevitably be
more work, and the likely market for user-defined window functions is
probably too small to justify it.
|