summaryrefslogtreecommitdiff
path: root/src/include
Commit message (Collapse)AuthorAgeFilesLines
* This patch properly sets the prototype for the on_shmem_exit andPeter Eisentraut2003-12-123-7/+7
| | | | | | | on_proc_exit functions, and adjust all other related code to use the proper types too. by Kurt Roeckx
* Fix thinko in comment.Tom Lane2003-12-111-2/+2
|
* catversion change needed by previous read-onlu GUC variables commit.Joe Conway2003-12-031-2/+2
|
* Added new group of read-only GUC variables to allow simple accessJoe Conway2003-12-031-2/+3
| | | | | | | | 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-031-1/+2
| | | | | | 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.
* Add a warning to AtEOXact_SPI() to catch cases where the currentJoe Conway2003-12-021-2/+2
| | | | | | transaction has been committed without SPI_finish() being called first. Per recent discussion here: http://archives.postgresql.org/pgsql-patches/2003-11/msg00286.php
* The attached patch enables contrib/cube to build cleanly under CygwinBruce Momjian2003-12-011-2/+2
| | | | | | | (again). Please consider this patch for the 7.4.1 branch (if there will be one) too. Jason Tishler
* Avoid assuming that type key_t is 32 bits, since it reportedly isn'tTom Lane2003-12-011-4/+2
| | | | | | on 64-bit Solaris. Use a non-system-dependent datatype for UsedShmemSegID, namely unsigned long (which we were already assuming could hold a shmem key anyway, cf RecordSharedMemoryInLockFile).
* This patch adds a new GUC var, "default_with_oids", which follows theBruce Momjian2003-12-011-1/+3
| | | | | | | | 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
* Try to reduce confusion about what is a lock method identifier, a lockBruce Momjian2003-12-013-35/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | method control structure, or a table of control structures. . Use type LOCKMASK where an int is not a counter. . Get rid of INVALID_TABLEID, use INVALID_LOCKMETHOD instead. . Use INVALID_LOCKMETHOD instead of (LOCKMETHOD) NULL, because LOCKMETHOD is not a pointer. . Define and use macro LockMethodIsValid. . Rename LOCKMETHOD to LOCKMETHODID. . Remove global variable LongTermTableId in lmgr.c, because it is never used. . Make LockTableId static in lmgr.c, because it is used nowhere else. Why not remove it and use DEFAULT_LOCKMETHOD? . Rename the lock method control structure from LOCKMETHODTABLE to LockMethodData. Introduce a pointer type named LockMethod. . Remove elog(FATAL) after InitLockTable() call in CreateSharedMemoryAndSemaphores(), because if something goes wrong, there is elog(FATAL) in LockMethodTableInit(), and if this doesn't help, an elog(ERROR) in InitLockTable() is promoted to FATAL. . Make InitLockTable() void, because its only caller does not use its return value any more. . Rename variables in lock.c to avoid statements like LockMethodTable[NumLockMethods] = lockMethodTable; lockMethodTable = LockMethodTable[lockmethod]; . Change LOCKMETHODID type to uint16 to fit into struct LOCKTAG. . Remove static variables BITS_OFF and BITS_ON from lock.c, because I agree to this doubt: * XXX is a fetch from a static array really faster than a shift? . Define and use macros LOCKBIT_ON/OFF. Manfred Koizar
* Attached is a patch implementing factorial(), returning numeric. PointsBruce Momjian2003-12-014-26/+9
| | | | | | | | | | | | | 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
* Bump all version numbers and version stamps mentioned in RELEASE_CHANGES.Bruce Momjian2003-11-301-2/+2
|
* make sure the $Id tags are converted to $PostgreSQL as well ...PostgreSQL Daemon2003-11-29287-287/+287
|
* $Header: -> $PostgreSQL Changes ...PostgreSQL Daemon2003-11-297-7/+7
|
* Get rid of hashkeys field of Hash plan node, since it's redundant withTom Lane2003-11-251-2/+2
| | | | | | the hashclauses field of the parent HashJoin. This avoids problems with duplicated links to SubPlans in hash clauses, as per report from Andrew Holm-Hansen.
* Install all the headers files that the ones that are already installedPeter Eisentraut2003-11-251-1/+3
| | | | depend on.
* Rename USE_THREADS to ENABLE_THREAD_SAFETY to avoid name clash with Perl.Peter Eisentraut2003-11-241-4/+4
| | | | | Fixes compilation failure with --enable-thread-safety --with-perl and Perl 5.6.1.
* COMMENT ON casts, conversions, languages, operator classes, andTom Lane2003-11-212-2/+4
| | | | | | | | | large objects. Dump all these in pg_dump; also add code to pg_dump user-defined conversions. Make psql's large object code rely on the backend for inserting/deleting LOB comments, instead of trying to hack pg_description directly. Documentation and regression tests added. Christopher Kings-Lynne, code reviewed by Tom
* Background writer processJan Wieck2003-11-193-6/+20
| | | | | | | | 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
* 2nd try for the ARC strategy.Jan Wieck2003-11-132-11/+36
| | | | | | | | | 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-132-36/+11
| | | | Jan
* Update for 7.4 release.Bruce Momjian2003-11-131-2/+2
|
* Replacement of the buffer replacement strategy with an ARCJan Wieck2003-11-132-11/+36
| | | | | | algorithm adopted for PostgreSQL. Jan
* Cross-data-type comparisons are now indexable by btrees, pursuant to myTom Lane2003-11-1214-380/+456
| | | | | | | | | | 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.
* Add operator strategy and comparison-value datatype fields to ScanKey.Tom Lane2003-11-0915-231/+107
| | | | | | | | | | | 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.
* Cause stats processes to detach from shared memory when started, so thatTom Lane2003-11-071-1/+2
| | | | | they do not prevent the postmaster from deleting the shmem segment during a post-backend-crash restart cycle. Per recent discussion.
* Implement isolation levels read uncommitted and repeatable read as actingPeter Eisentraut2003-11-061-3/+9
| | | | like the next higher one.
* Improve message wording for spinlocks-missing compilation error.Peter Eisentraut2003-11-041-2/+2
|
* Fix some corner cases in ACL manipulation: don't foul up on an emptyTom Lane2003-10-291-15/+25
| | | | | | ACL array, and force languages to be treated as owned by the bootstrap user ID. (pg_language should have a lanowner column, but until it does this will have to do as a workaround.)
* Update for m68k from Peter.Bruce Momjian2003-10-261-1/+1
|
* Fix #elif typo.Bruce Momjian2003-10-261-1/+1
|
* Update linux/mips port.Bruce Momjian2003-10-261-0/+5
| | | | Add m68k to linux port.
* Fix built-in SQL-language functions to ensure that referenced namesTom Lane2003-10-212-26/+26
| | | | | | are properly schema-qualified. Christopher Kings-Lynne
* Revert to 7.3-and-before practice of only including <fcntl.h> in c.hTom Lane2003-10-211-1/+3
| | | | on Windows; per complaint from Andreas that it breaks AIX build.
* Update catalog version after information schema changes.Peter Eisentraut2003-10-201-2/+2
|
* Cleanup on --help-config: Now called --describe-config, no further options,Peter Eisentraut2003-10-181-2/+2
| | | | | machine readable, without headers, not sorted. Parameter descriptions adjusted to fit first sentence + rest convention.
* Set attstattarget to -1 for all system catalog columns. All but a fewTom Lane2003-10-161-153/+153
| | | | | | | | | | | of the entries used to be zero, which I think I had deliberately done in the name of saving cycles during ANALYZE, but it was really a rather foolish decision. Some of the more complex views in information_schema were getting really bad plans for lack of statistics on the columns they were joining over. I'm not forcing an initdb for this, but I think there will be one soon anyway to repair some bugs in the information_schema views.
* Fix bad interaction between NOTIFY processing and V3 extended queryTom Lane2003-10-161-1/+2
| | | | | | | | | | protocol, per report from Igor Shevchenko. NOTIFY thought it could do its thing if transaction blockState is TBLOCK_DEFAULT, but in reality it had better check the low-level transaction state is TRANS_DEFAULT as well. Formerly it was not possible to wait for the client in a state where the first is true and the second is not ... but now we can have such a state. Minor cleanup in StartTransaction() as well.
* Remove void* in MemSet until we understand the gcc 3.3.1 problem better.Bruce Momjian2003-10-141-3/+2
|
* Add void * cast to MemSet to silence compiler, and add comment that weBruce Momjian2003-10-111-2/+3
| | | | already check for alignment.
* Rename __arm__/__arm__ to __arm__/__arm, found by Neil ConwayBruce Momjian2003-10-101-2/+2
|
* During ALTER TABLE ADD FOREIGN KEY, try to check the existing rows usingTom Lane2003-10-061-1/+4
| | | | | | a single LEFT JOIN query instead of firing the check trigger for each row individually. Stephan Szabo, with some kibitzing from Tom Lane and Jan Wieck.
* Fix pg_get_constraintdef() to ensure CHECK constraints are always shownTom Lane2003-10-041-2/+1
| | | | | | | with required outer parentheses. Breakage seems to be leftover from domain-constraint patches. This could be smarter about suppressing extra parens, but at this stage of the release cycle I want certainty not cuteness.
* Repair RI trigger visibility problems (this time for sure ;-)) per recentTom Lane2003-10-015-12/+13
| | | | | | | discussion on pgsql-hackers: in READ COMMITTED mode we just have to force a QuerySnapshot update in the trigger, but in SERIALIZABLE mode we have to run the scan under a current snapshot and then complain if any rows would be updated/deleted that are not visible in the transaction snapshot.
* Adjust btree index build procedure so that the btree metapage looksTom Lane2003-09-291-2/+3
| | | | | | | | | | invalid (has the wrong magic number) until the build is entirely complete. This turns out to cost no additional writes in the normal case, since we were rewriting the metapage at the end of the process anyway. In normal scenarios there's no real gain in security, because a failed index build would roll back the transaction leaving an unused index file, but for rebuilding shared system indexes this seems to add some useful protection.
* Fix #error message to mention renamed option --disable-spinlocks.Bruce Momjian2003-09-291-2/+2
|
* Add a mechanism to let dynamically loaded modules register post-commit/Tom Lane2003-09-281-4/+10
| | | | | | post-abort cleanup hooks. I'm surprised that we have not needed this already, but I need it now to fix a plpgsql problem, and the usefulness for other dynamically loaded modules seems obvious.
* Move -D_GNU_SOURCE hack from port header to template, so thatTom Lane2003-09-261-6/+0
| | | | | configure's tests see the same compilation environment as the code. Per discussion with Stephan Szabo.
* Get rid of ReferentialIntegritySnapshotOverride by extending Executor APITom Lane2003-09-255-21/+17
| | | | | | to allow es_snapshot to be set to SnapshotNow rather than a query snapshot. This solves a bug reported by Wade Klaver, wherein triggers fired as a result of RI cascade updates could misbehave.
* Repair some REINDEX problems per recent discussions. The relcache isTom Lane2003-09-245-22/+19
| | | | | | | | | | | | | now able to cope with assigning new relfilenode values to nailed-in-cache indexes, so they can be reindexed using the fully crash-safe method. This leaves only shared system indexes as special cases. Remove the 'index deactivation' code, since it provides no useful protection in the shared- index case. Require reindexing of shared indexes to be done in standalone mode, but remove other restrictions on REINDEX. -P (IgnoreSystemIndexes) now prevents using indexes for lookups, but does not disable index updates. It is therefore safe to allow from PGOPTIONS. Upshot: reindexing system catalogs can be done without a standalone backend for all cases except shared catalogs.