aboutsummaryrefslogtreecommitdiff
path: root/src/backend
Commit message (Collapse)AuthorAge
...
* Allow units to be specified with configuration settings.Peter Eisentraut2006-07-27
|
* Code review for bigint-LIMIT patch. Fix missed planner dependency,Tom Lane2006-07-26
| | | | | | eliminate unnecessary code, force initdb because stored rules change (limit nodes are now supposed to be int8 not int4 expressions). Update comments and error messages, which still all said 'integer'.
* Work around bug in strxfmt() but in MS VS2005.Bruce Momjian2006-07-26
| | | | William ZHANG
* When a GUC string variable is not set, print the empty string (in SHOW etc.),Peter Eisentraut2006-07-26
| | | | | | not "unset". An "unset" state doesn't really exist; all variables behave like an empty string value if the string being pointed to has not been initialized.
* Convert effective_cache_size to an integer, for better integration withPeter Eisentraut2006-07-26
| | | | upcoming units feature.
* Change LIMIT/OFFSET to use int8Bruce Momjian2006-07-26
| | | | Dhanaraj M
* Modify btree to delete known-dead index entries without an actual VACUUM.Tom Lane2006-07-25
| | | | | | | | | | When we are about to split an index page to do an insertion, first look to see if any entries marked LP_DELETE exist on the page, and if so remove them to try to make enough space for the desired insert. This should reduce index bloat in heavily-updated tables, although of course you still need VACUUM eventually to clean up the heap. Junji Teramoto
* Remove hard-wired lists of timezone abbreviations in favor of providingTom Lane2006-07-25
| | | | | | | | | configuration files that can be altered by a DBA. The australian_timezones GUC setting disappears, replaced by a timezone_abbreviations setting (set this to 'Australia' to get the effect of australian_timezones). The list of zone names defined by default has undergone a bit of cleanup, too. Documentation still needs some work --- in particular, should we fix Table B-4, or just get rid of it? Joachim Wieland, with some editorializing by moi.
* Make the order of operations in PostmasterMain a bit saner ... someTom Lane2006-07-25
| | | | recent patches had added stuff in rather random spots.
* DTrace support, with a small initial set of probesPeter Eisentraut2006-07-24
| | | | by Robert Lor
* Mark postgresql.conf entries that require server restart; some minorPeter Eisentraut2006-07-24
| | | | editing and reformatting.
* Add a fudge factor to genericcostestimate() to prevent the planner fromTom Lane2006-07-24
| | | | | | | thinking that indexes of different sizes are equally attractive. Per gripe from Jim Nasby. (I remain unconvinced that there's such a problem in existing releases, but CVS HEAD definitely has got a problem because of its new count-only-leaf-pages approach to indexscan costing.)
* Convert the lock manager to use the new dynahash.c support for partitionedTom Lane2006-07-23
| | | | | hash tables, instead of the previous kluge involving multiple hash tables. This partially undoes my patch of last December.
* Fix oversight in sizing of shared buffer lookup hashtable. BecauseTom Lane2006-07-23
| | | | | | | | | BufferAlloc tries to insert a new mapping entry before deleting the old one for a buffer, we have a transient need for more than NBuffers entries --- one more in 8.1, and as many as NUM_BUFFER_PARTITIONS more in CVS HEAD. In theory this could lead to an "out of shared memory" failure if shmem had already been completely claimed by the time the extra entries were needed.
* Split the buffer mapping table into multiple separately lockableTom Lane2006-07-23
| | | | | partitions, as per discussion. Passes functionality checks, but I don't have any performance data yet.
* Add support to dynahash.c for partitioning shared hashtables accordingTom Lane2006-07-22
| | | | | | to the low-order bits of the entry hash value. Also make some incidental cleanups in the dynahash API, such as not exporting the hash header structs to the world.
* Hmm, seems --disable-spinlocks has been broken for awhile and nobodyTom Lane2006-07-22
| | | | | noticed. Fix SpinlockSemas() to report the correct count considering that PG 8.1 adds a spinlock to each shared-buffer header.
* In the recent changes to make the planner account better for cacheTom Lane2006-07-22
| | | | | | | effects in a nestloop inner indexscan, I had only dealt with plain index scans and the index portion of bitmap scans. But there will be cache benefits for the heap accesses of bitmap scans too, so fix cost_bitmap_heap_scan() to account for that.
* Add the full set of comparison functions for type TID, including a btreeTom Lane2006-07-21
| | | | | | | | opclass. This is not so much because anyone's likely to create an index on TID, as that sorting TIDs can be useful. Also added max and min aggregates while at it, so that one can investigate the clusteredness of a table with queries like SELECT min(ctid), max(ctid) FROM tab WHERE ... Greg Stark and Tom Lane
* Don't try to truncate multixact SLRU files in checkpoints done during xlogTom Lane2006-07-20
| | | | | | | | | | | recovery. In the first place, it doesn't work because slru's latest_page_number isn't set up yet (this is why we've been hearing reports of strange "apparent wraparound" log messages during crash recovery, but only from people who'd managed to advance their next-mxact counters some considerable distance from 0). In the second place, it seems a bit unwise to be throwing away data during crash recovery anwyway. This latter consideration convinces me to just disable truncation during recovery, rather than computing latest_page_number and pushing ahead.
* Mark a few functions as static or NOT_USED.Bruce Momjian2006-07-18
|
* In a Windows backend, don't build src/port/pgsleep.c's version ofTom Lane2006-07-16
| | | | | | | | pg_usleep at all. Instead call the replacement function in port/win32/signal.c by that name. Avoids tricky macro-redefinition logic and suppresses a compiler warning; furthermore it ensures that no one can accidentally use the non-signal-aware version of pg_usleep in a Windows backend.
* Ensure that we retry rather than erroring out when send() or recv() returnTom Lane2006-07-16
| | | | | | | | | | | | EINTR; the stats code was failing to do this and so were a couple of places in the postmaster. The stats code assumed that recv() could not return EINTR if a preceding select() showed the socket to be read-ready, but this is demonstrably false with our Windows implementation of recv(), and it may not be the case on all Unix variants either. I think this explains the intermittent stats regression test failures we've been seeing, as well as reports of stats collector instability under high load on Windows. Backpatch as far as 8.0.
* Fix a few places where $Id$ and $Header$ CVS tags had crept into theTom Lane2006-07-16
| | | | source tree. They should all be $PostgreSQL$ of course.
* Put back another not-so-unnecessary #include, per report from Hiroshi Saito.Tom Lane2006-07-16
|
* Fix getDatumCopy(): don't use store_att_byval to copy into a DatumTom Lane2006-07-16
| | | | | | variable (this accounts for regression failures on PPC64, and in fact won't work on any big-endian machine). Get rid of hardwired knowledge about datum size rules; make it look just like datumCopy().
* Improve error message wording.Tom Lane2006-07-16
|
* Put back some more not-so-unused-as-all-that #includes. This un-breaksTom Lane2006-07-15
| | | | | the EXEC_BACKEND code on my machines, so hopefully it will fix the Windows buildfarm members.
* Fix some missing inclusions identified with new pgcheckdefines tool.Tom Lane2006-07-15
|
* Fix some makefiles that fail to yield good results from 'make -qp'.Tom Lane2006-07-15
| | | | | This doesn't really matter for ordinary building of Postgres, but it's useful for automated checks, such as my just-committed pgcheckdefines.
* Fix misguided removal of access/tuptoaster.h inclusion, per Kris Jurka.Tom Lane2006-07-14
| | | | | | I'm going to insist on reversion of this entire patch unless pgrminclude is upgraded to a less broken state, but in the meantime let's get contrib passing regression again.
* Fix another passel of include-file breakage. Kris Jurka, Tom LaneTom Lane2006-07-14
|
* Remove 576 references of include files that were not needed.Bruce Momjian2006-07-14
|
* Fix a passel of recently-committed violations of the rule 'thou shaltTom Lane2006-07-14
| | | | | have no other gods before c.h'. Also remove some demonstrably redundant #include lines, mostly of <errno.h> which was added to c.h years ago.
* Add additional includes needed on some platforms.Bruce Momjian2006-07-14
|
* Move math.h after postgresql.hBruce Momjian2006-07-13
|
* More include file adjustments.Bruce Momjian2006-07-13
|
* Allow include files to compile own their own.Bruce Momjian2006-07-13
| | | | | | | Strip unused include files out unused include files, and add needed includes to C files. The next step is to remove unused include files in C files.
* Tweak fillfactor code as per my recent proposal. Fix nbtsort.c so thatTom Lane2006-07-11
| | | | | | it can handle small fillfactors for ordinary-sized index entries without failing on large ones; fix nbtinsert.c to distinguish leaf and nonleaf pages; change the minimum fillfactor to 10% for all index types.
* Add support to GIN for =(anyarray,anyarray) operationTeodor Sigaev2006-07-11
|
* Alphabetically order reference to include files, "S"-"Z".Bruce Momjian2006-07-11
|
* Alphabetically order reference to include files, "N" - "S".Bruce Momjian2006-07-11
|
* Alphabetically order reference to include files, "G" - "M".Bruce Momjian2006-07-11
|
* GIN improvementsTeodor Sigaev2006-07-11
| | | | | | | | - Replace sorted array of entries in maintenance_work_mem to binary tree, this should improve create performance. - More precisely calculate allocated memory, eliminate leaks with user-defined extractValue() - Improve wordings in tsearch2
* Sort reference of include files, "A" - "F".Bruce Momjian2006-07-11
|
* Fix ALTER TABLE to check pre-existing NOT NULL constraints when rewritingTom Lane2006-07-10
| | | | | | a table. Otherwise a USING clause that yields NULL can leave the table violating its constraint (possibly there are other cases too). Per report from Alexander Pravking.
* Improve vacuum code to track minimum Xids per table instead of per database.Alvaro Herrera2006-07-10
| | | | | | | | | | | | | | | | | | | | | | | | | | To this end, add a couple of columns to pg_class, relminxid and relvacuumxid, based on which we calculate the pg_database columns after each vacuum. We now force all databases to be vacuumed, even template ones. A backend noticing too old a database (meaning pg_database.datminxid is in danger of falling behind Xid wraparound) will signal the postmaster, which in turn will start an autovacuum iteration to process the offending database. In principle this is only there to cope with frozen (non-connectable) databases without forcing users to set them to connectable, but it could force regular user database to go through a database-wide vacuum at any time. Maybe we should warn users about this somehow. Of course the real solution will be to use autovacuum all the time ;-) There are some additional improvements we could have in this area: for example the vacuum code could be smarter about not updating pg_database for each table when called by autovacuum, and do it only once the whole autovacuum iteration is done. I updated the system catalogs documentation, but I didn't modify the maintenance section. Also having some regression tests for this would be nice but it's not really a very straightforward thing to do. Catalog version bumped due to system catalog changes.
* Fix typo in comment.Alvaro Herrera2006-07-08
|
* Fix typos in comments.Neil Conway2006-07-04
|
* Code review for FILLFACTOR patch. Change WITH grammar as per earlierTom Lane2006-07-03
| | | | | | | | | | | | | | | | discussion (including making def_arg allow reserved words), add missed opt_definition for UNIQUE case. Put the reloptions support code in a less random place (I chose to make a new file access/common/reloptions.c). Eliminate header inclusion creep. Make the index options functions safely user-callable (seems like client apps might like to be able to test validity of options before trying to make an index). Reduce overhead for normal case with no options by allowing rd_options to be NULL. Fix some unmaintainably klugy code, including getting rid of Natts_pg_class_fixed at long last. Some stylistic cleanup too, and pay attention to keeping comments in sync with code. Documentation still needs work, though I did fix the omissions in catalogs.sgml and indexam.sgml.