summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2006-05-05Seems some NetBSD 3.0 x86 systems still need float8-small-is-zero, soBruce Momjian
patch reverted.
2006-05-05On Solaris ASM, / '/' is the comment for x86, while '!' is the commentBruce Momjian
for Sparc Robert Lor
2006-05-05Use regression results float8-small-is-zero only for NetBSD < 3.0.Bruce Momjian
Backpatch to 8.1.X. Simon Burge
2006-05-05Change Solaris comments from / to !.Bruce Momjian
Robert Lor
2006-05-04Don't try to compile SSL CRL support if local SSL installation hasn'tTom Lane
got it. Per buildfarm failure on 'canary'.
2006-05-04Simplify relcache startup sequence. With the new design of InitPostgresTom Lane
it's not necessary to have three separate calls anymore. This patch also fixes things so we don't try to read pg_internal.init until after we've obtained lock on the target database; which was fairly harmless, but it's certainly cleaner this way.
2006-05-04Rethink the locking mechanisms used for CREATE/DROP/RENAME DATABASE.Tom Lane
The former approach used ExclusiveLock on pg_database, which being a cluster-wide lock meant only one of these operations could proceed at a time; worse, it also blocked all incoming connections in ReverifyMyDatabase. Now that we have LockSharedObject(), we can use locks of different types applied to databases considered as objects. This allows much more flexible management of the interlocking: two CREATE DATABASEs need not block each other, and need not block connections except to the template database being used. Similarly DROP DATABASE doesn't block unrelated operations. The locking used in flatfiles.c is also much narrower in scope than before. Per recent proposal.
2006-05-03Create a syscache for pg_database-indexed-by-oid, and make use of itTom Lane
in various places that were previously doing ad hoc pg_database searches. This may speed up database-related privilege checks a little bit, but the main motivation is to eliminate the performance reason for having ReverifyMyDatabase do such a lot of stuff (viz, avoiding repeat scans of pg_database during backend startup). The locking reason for having that routine is about to go away, and it'd be good to have the option to break it up.
2006-05-03Fix typo noticed by Alvaro HerreraTeodor Sigaev
2006-05-03Fix calculation of plan node extParams to account for the possibility that oneTom Lane
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.
2006-05-02Clean up API for ambulkdelete/amvacuumcleanup as per today's discussion.Tom Lane
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().
2006-05-02Suppress some gcc warnings.Tom Lane
2006-05-02Fix grammar of new error message.Tom Lane
2006-05-02Add GIN opclases for another typesTeodor Sigaev
2006-05-02GIN: Generalized Inverted iNdex.Teodor Sigaev
text[], int4[], Tsearch2 support for GIN.
2006-05-02Avoid assuming that statistics for a parent relation reflect the properties ofTom Lane
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.
2006-05-01Provide a namespace.c function for lookup of an operator with exactTom Lane
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.
2006-04-30Code review for GRANT CONNECT patch. Spell the privilege as CONNECT notTom Lane
CONNECTION, fix a number of places that were missed (eg pg_dump support), avoid executing an extra search of pg_database during startup.
2006-04-30Improve the representation of FOR UPDATE/FOR SHARE so that we canTom Lane
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.
2006-04-30Add GRANT CONNECTION ON DATABASE, to be used in addition to pg_hba.conf.Bruce Momjian
Gevik Babakhani
2006-04-30Revert patch pending more discussion:Bruce Momjian
Disallow changing DEFAULT expression of a SERIAL column.
2006-04-29Remove sema.c, superseded by win32_sema.c.Tom Lane
2006-04-29Rearrange some configure.in comments for better readability.Tom Lane
Commit configure and pg_config.h.in, missed in last configure.in update.
2006-04-29We only need to add thread.c on non-WIN32 platforms, since get_home_pathTom Lane
doesn't use pqGetpwuid on WIN32. Rather than try to figure out why it won't build on WIN32, just remove it.
2006-04-29Disallow changing DEFAULT expression of a SERIAL column.Bruce Momjian
Dhanaraj M
2006-04-29Add Win32 semaphore implementation, rather than mimicking SysVBruce Momjian
semaphores. Qingqing Zhou
2006-04-29Solaris tas() uses 'int' now.Bruce Momjian
Theo Schlossnagle
2006-04-28Fix s_lock_test to use tas.o file, if needed.Bruce Momjian
2006-04-28Remove the restriction originally coded into optimize_minmax_aggregates() thatTom Lane
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.
2006-04-28Modify Solaris compiler build rules to use the cpp preprocessor, the theBruce Momjian
x86 file.
2006-04-28Darin -> Darwin.Bruce Momjian
2006-04-28Remove extra 'else' in solaris compiler code.Bruce Momjian
2006-04-28Remove "volatile" from tas function, per TOm.Bruce Momjian
2006-04-28Update list of platforms that have a list of exported symbols.Bruce Momjian
2006-04-28Arrange to strip libpq.so of symbols that aren't officially supposed toTom Lane
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.
2006-04-28Add info on pgport linking requirements.Bruce Momjian
2006-04-27Rewrite Solaris compiler tas() assembly routines, merge i386 and x86_64Bruce Momjian
assembler files, renamed as solaris_x86.s. Theo Schlossnagle
2006-04-27Generalize mcv_selectivity() to support both VAR OP CONST and CONST OP VARTom Lane
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.
2006-04-27Change log message about vacuuming database name from LOG to DEBUG1.Bruce Momjian
Prevents duplicate meaningless log messsages.
2006-04-27On second thought, keep SSL CRL as a log, and wait for feedback from 8.2.Bruce Momjian
2006-04-27Downgrade SSL CRL file missing message from LOG to DEBUG1.Bruce Momjian
2006-04-27Revert patch, causing plpython regression failues:Bruce Momjian
> >> >> > 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
2006-04-27Tab alignment cleanup.Bruce Momjian
2006-04-27Add underscores to SSL CERT macro names, for clarity and consistencyBruce Momjian
with be-secure.c.
2006-04-27Add SSL include needed for psql, after libpq adjustments.Bruce Momjian
2006-04-27Add support for SSL Certificate Revocation List (CRL) files, root.crl.Bruce Momjian
Libor Hoho?
2006-04-27plpython improvements:Bruce Momjian
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
2006-04-27Change libpq's PQgetssl() to return a void*, rather than SSL *, so thatBruce Momjian
applications don't need the SSL headers. Martijn van Oosterhout
2006-04-27If we're going to expose VariableStatData for contrib modules to use,Tom Lane
then we should export a reasonable set of the supporting routines too.
2006-04-27Remove unused function SSL_CTX_set_tmp_dh_callback() from libpq:Bruce Momjian
In the SSL code in libpq it does some processing with DH parameters: SSL_CTX_set_tmp_dh_callback() This function is marked as server use only[1], the client always uses the DH parameters in the server, so all the code in the client dealing with the DH parameters is useless. This patch removes it. It's not clear why the code was added in the first place, it's been there almost since the beginning[2]. At the time there was a suggestion of merging the front-end and backend SSL code, but looking at the changes since, that seems unlikely. As a further example, the s_server program allows you to specify DH params, but s_client doesn't. In the GnuTLS documentation under gnutls_dh_params_generate2() it says[3]: Also note that the DH parameters are only useful to servers. Since clients use the parameters sent by the server, it's of no use to call this in client side.