aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils
Commit message (Collapse)AuthorAge
* Repair error apparently introduced in the initial coding of GUC: theTom Lane2004-01-21
| | | | | | default value for geqo_effort is supposed to be 40, not 1. The actual 'genetic' component of the GEQO algorithm has been practically disabled since 7.1 because of this mistake. Improve documentation while at it.
* If we don't have shared libraries, we don't have conversions. MakeTom Lane2004-01-21
| | | | | conversion_create.sql be empty (except for a helpful comment) in this case. Allows initdb to succeed with --disable-shared.
* Fix bit-rot in support for building with --disable-shared. This patchTom Lane2004-01-21
| | | | | gets us past 'make install', but initdb still fails for lack of conversion libraries ...
* Repair problem identified by Olivier Prenant: ALTER DATABASE SET search_pathTom Lane2004-01-19
| | | | | | | | | | | should not be too eager to reject paths involving unknown schemas, since it can't really tell whether the schemas exist in the target database. (Also, when reading pg_dumpall output, it could be that the schemas don't exist yet, but eventually will.) ALTER USER SET has a similar issue. So, reduce the normal ERROR to a NOTICE when checking search_path values for these commands. Supporting this requires changing the API for GUC assign_hook functions, which causes the patch to touch a lot of places, but the changes are conceptually trivial.
* Add a hash table to cache lookups of 'C'-language functions (that is,Tom Lane2004-01-19
| | | | | | dynamically loaded C functions). Some limited testing suggests that this puts the lookup speed for external functions just about on par with built-in functions. Per discussion with Eric Ridge.
* Repair misestimation of indexscan CPU costs. When an indexqual containsTom Lane2004-01-17
| | | | | | a run-time key (that is, a nonconstant expression compared to the index variable), the key is evaluated just once per scan, but we were charging costs as though it were evaluated once per visited index entry.
* [Forced commit to add log message that I fat-fingered last time]Tom Lane2004-01-08
| | | | | Give a more reasonable error message when lock file exists but has zero length; prior code confused this with could-not-read-file case.
* makeTom Lane2004-01-07
|
* More janitorial work: remove the explicit casting of NULL literals to aNeil Conway2004-01-07
| | | | | | | | pointer type when it is not necessary to do so. For future reference, casting NULL to a pointer type is only necessary when (a) invoking a function AND either (b) the function has no prototype OR (c) the function is a varargs function.
* Apply the core parts of Dennis Bjorklund's patch to allow functionTom Lane2004-01-06
| | | | | | | | | parameters to be declared with names. pg_proc has a column to store names, and CREATE FUNCTION can insert data into it, but that's all as yet. I need to do more work on the pg_dump and plpgsql portions of the patch before committing those, but I thought I'd get the bulky changes in before the tree drifts under me. initdb forced due to pg_proc change.
* Remove unused 'noversion' command-line option processing from theNeil Conway2004-01-06
| | | | backend.
* Make the 'wal_debug' GUC variable a boolean (rather than an integer), andNeil Conway2004-01-06
| | | | hide it behind #ifdef WAL_DEBUG blocks.
* Adjust indexscan planning logic to keep RestrictInfo nodes associatedTom Lane2004-01-05
| | | | | | | | | | | with index qual clauses in the Path representation. This saves a little work during createplan and (probably more importantly) allows reuse of cached selectivity estimates during indexscan planning. Also fix latent bug: wrong plan would have been generated for a 'special operator' used in a nestloop-inner-indexscan join qual, because the special operator would not have gotten into the list of quals to recheck. This bug is only latent because at present the special-operator code could never trigger on a join qual, but sooner or later someone will want to do it.
* There's no longer any good reason for genbki.sh and Gen_fmgrtab.sh toTom Lane2004-01-04
| | | | | | run the data through cpp, and we know of at least one platform where unusual cpp behavior breaks the process. So remove the cpp step, and make consequent simplifications.
* Use hash table name, not one-size-fits-all 'DynaHashTable', to identifyTom Lane2003-12-29
| | | | | memory contexts belonging to hash tables. Makes the memory stats printout a little more useful.
* Using canonicalize_qual() to get rid of duplicate index predicateTom Lane2003-12-29
| | | | | | | conditions is overkill; set_union() does the job about as well, and much more efficiently. Furthermore this avoids assuming that canonicalize_qual() will check for duplicate clauses at all, which it may not always do.
* Clean up the usage of canonicalize_qual(): in particular, be consistentTom Lane2003-12-28
| | | | | | | | | about whether it is applied before or after eval_const_expressions(). I believe there were some corner cases where the system would fail to recognize that a partial index is applicable because of the previous inconsistency. Store normal rather than 'implicit AND' representations of constraints and index predicates in the catalogs. initdb forced due to representation change of constraints/predicates.
* > > I have no idea if this in Oracle or not. But it's something IBruce Momjian2003-12-25
| | | | | | | | | | | | | | | > > needed, and other people in the past asked about it too. > > It is in Oracle, but you aren't exactly on the spot. It should be > > IYYY - 4 digits ('2003') > IYY - 3 digits ('003') > IY - 2 digits ('03') > I - 1 digit ('3') Here is an updated patch that does that. Kurt Roeckx
* Fix a number of places where reconfiguring with a different installationTom Lane2003-12-23
| | | | | prefix would fail, because the new path did not get propagated to where it needed to be. Note this would fail even with --enable-depend.
* Back out:Bruce Momjian2003-12-21
| | | | | | | > Attached is a patch that addressed all the discussed issues > that did not break backward compatability, including the > ability to output ISO-8601 compliant intervals by setting > datestyle to iso8601basic.
* In my mind there were two categories of open issuesBruce Momjian2003-12-20
| | | | | | | | | | | | | | | | | | | | | | | | a) ones that are 100% backward (such as the comment about outputting this format) and b) ones that aren't (such as deprecating the current postgresql shorthand of '1Y1M'::interval = 1 year 1 minute in favor of the ISO-8601 'P1Y1M'::interval = 1 year 1 month. Attached is a patch that addressed all the discussed issues that did not break backward compatability, including the ability to output ISO-8601 compliant intervals by setting datestyle to iso8601basic. Interval values can now be written as ISO 8601 time intervals, using the "Format with time-unit designators". This format always starts with the character 'P', followed by a string of values followed by single character time-unit designators. A 'T' separates the date and time parts of the interval. Ron Mayer
* Make to_hex() behave portably on negative input values (treat them asTom Lane2003-12-19
| | | | unsigned integers). Per report from Jim Crate.
* Use a shutdown callback to ensure proper clean up when rescanningJoe Conway2003-12-19
| | | | | partially-evaluated SRFs. Per report found here: http://archives.postgresql.org/pgsql-general/2003-12/msg00851.php
* Fix DecodeInterval to handle '-0.1' sanely, per gripe from Tilo Schwarz.Tom Lane2003-12-17
|
* This patch properly sets the prototype for the on_shmem_exit andPeter Eisentraut2003-12-12
| | | | | | | on_proc_exit functions, and adjust all other related code to use the proper types too. by Kurt Roeckx
* Repair indexed bytea like operations, and related selectivityJoe Conway2003-12-07
| | | | | functionality. Per bug report by Alvar Freude: http://archives.postgresql.org/pgsql-bugs/2003-12/msg00022.php
* Added new group of read-only GUC variables to allow simple accessJoe Conway2003-12-03
| | | | | | | | to certain compile-time options (FUNC_MAX_ARGS, INDEX_MAX_KEYS, NAMEDATALEN, BLCKSZ, HAVE_INT64_TIMESTAMP). Also added "category", "short_desc", and "extra_desc" to the pg_settings view. Per recent discussion here: http://archives.postgresql.org/pgsql-patches/2003-11/msg00363.php
* Planner failed to be smart about binary-compatible expressions in pathkeysTom Lane2003-12-03
| | | | | | and hash bucket-size estimation. Issue has been there awhile but is more critical in 7.4 because it affects varchar columns. Per report from Greg Stark.
* Code and docs review for numeric-factorial patch.Tom Lane2003-12-02
|
* This patch adds a new GUC var, "default_with_oids", which follows theBruce Momjian2003-12-01
| | | | | | | | proposal for eventually deprecating OIDs on user tables that I posted earlier to pgsql-hackers. pg_dump now always specifies WITH OIDS or WITHOUT OIDS when dumping a table. The documentation has been updated. Neil Conway
* Attached is a patch implementing factorial(), returning numeric. PointsBruce Momjian2003-12-01
| | | | | | | | | | | | | to note: 1) arttype is numeric. I thought this was the best way of allowing arbitarily large factorials, even though factorial(2^63) is a large number. Happy to change to integers if this is overkill. 2) since we're accepting numeric arguments, the patch tests for floats. If a numeric is passed with non-zero decimal portion, an error is raised since (from memory) they are undefined. Gavin Sherry
* netmask() and hostmask() functions should return maximum-length masklen,Tom Lane2003-12-01
| | | | per gripe from Joe Sunday.
* Seems there are three GUC variables that are defined as "Shows ..."Bruce Momjian2003-12-01
| | | | | | while you can actually set them with SET. This applied patch changes the wording from "Show" to "Set".
* Make PQescapeBytea and byteaout consistent with each other, andJoe Conway2003-11-30
| | | | | | octal escape all octets outside the range 0x20 to 0x7e. This fixes the problem pointed out by Sergey Yatskevich here: http://archives.postgresql.org/pgsql-bugs/2003-11/msg00140.php
* make sure the $Id tags are converted to $PostgreSQL as well ...PostgreSQL Daemon2003-11-29
|
* $Header: -> $PostgreSQL Changes ...PostgreSQL Daemon2003-11-29
|
* Background writer processJan Wieck2003-11-19
| | | | | | | | This first part of the background writer does no syncing at all. It's only purpose is to keep the LRU heads clean so that regular backends seldom to never have to call write(). Jan
* Fix datetime input parsing to accept YYYY-MONTHNAME-DD and related syntaxes,Tom Lane2003-11-16
| | | | | | which had been unintentionally broken by recent changes to tighten up the DateStyle rules for all-numeric date input. Add documentation and regression tests for this, too.
* Changed parameter name for shared cache status report interval toJan Wieck2003-11-16
| | | | | | | | | debug_shared_buffers = <seconds> as per previous discussion. Jan
* 2nd try for the ARC strategy.Jan Wieck2003-11-13
| | | | | | | | | I added a couple more Assertions while tracking down the exact cause of the former bug. All 93 regression tests pass now. Jan
* ARC strategy backed out ... sorryJan Wieck2003-11-13
| | | | Jan
* Replacement of the buffer replacement strategy with an ARCJan Wieck2003-11-13
| | | | | | algorithm adopted for PostgreSQL. Jan
* Cross-data-type comparisons are now indexable by btrees, pursuant to myTom Lane2003-11-12
| | | | | | | | | | pghackers proposal of 8-Nov. All the existing cross-type comparison operators (int2/int4/int8 and float4/float8) have appropriate support. The original proposal of storing the right-hand-side datatype as part of the primary key for pg_amop and pg_amproc got modified a bit in the event; it is easier to store zero as the 'default' case and only store a nonzero when the operator is actually cross-type. Along the way, remove the long-since-defunct bigbox_ops operator class.
* Cleanup for recent .exe Win32 fix.Bruce Momjian2003-11-12
|
* Add .exe to Win32 stat calls. Don't symlink postmaster on Win32.Bruce Momjian2003-11-11
|
* Remove rcsid CVS header variable --- not used.Bruce Momjian2003-11-10
|
* Add operator strategy and comparison-value datatype fields to ScanKey.Tom Lane2003-11-09
| | | | | | | | | | | Remove the 'strategy map' code, which was a large amount of mechanism that no longer had any use except reverse-mapping from procedure OID to strategy number. Passing the strategy number to the index AM in the first place is simpler and faster. This is a preliminary step in planned support for cross-datatype index operations. I'm committing it now since the ScanKeyEntryInitialize() API change touches quite a lot of files, and I want to commit those changes before the tree drifts under me.
* Fix process-status handling for OS X 10.3.Tom Lane2003-11-08
|
* zero_damaged_pages must absolutely NOT be marked GUC_DISALLOW_IN_FILE,Tom Lane2003-11-07
| | | | | else it cannot be used to handle failures detected during WAL replay. Fortunately this flag isn't actually enforced yet, but get it right.
* Implement isolation levels read uncommitted and repeatable read as actingPeter Eisentraut2003-11-06
| | | | like the next higher one.