aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access
Commit message (Collapse)AuthorAge
* Forgot to check page LSN and unlock buffer in btree_xlog_delete - fixed.Vadim B. Mikheev2000-11-01
| | | | (Thanks to Tatsuo Ishii for finding bug)
* Fix recovery cache code (thanks to Peter Eisentraut forVadim B. Mikheev2000-10-31
| | | | pointing to bug).
* WAL fixes.Vadim B. Mikheev2000-10-29
|
* WALVadim B. Mikheev2000-10-28
|
* Fix AbortOutOfAnyTransaction logic to avoid notice aboutTom Lane2000-10-24
| | | | | | 'AbortTransaction and not in in-progress state' when client disconnects just after an error. Notice seems pretty harmless, so I'm not going to worry about back-patching this into 7.0.* ...
* WAL miscVadim B. Mikheev2000-10-24
|
* If a field is incompressible ('compressed' data is actually larger thanTom Lane2000-10-23
| | | | | | | | source, due to addition of header overhead), store it as plain data rather than pseudo-compressed data. This saves a few microseconds when reading it out, but much more importantly guarantees that the toaster won't actually expand tuples that contain incompressible data. That's essential to avoid 'Tuple too big' failures with large objects.
* New relcache hash table with RelFileNode as key to be usedVadim B. Mikheev2000-10-23
| | | | | | | from bufmgr - it would be nice to have separate hash in smgr for node <--> fd mappings, but for the moment it's easy to add new hash to relcache. Fixed small bug in xlog.c:ReadRecord.
* Makeover for Unixware 7.1.1Peter Eisentraut2000-10-22
| | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile: Add more standard targets. Improve shell redirection in GNU make detection. * src/backend/access/transam/rmgr.c: Fix incorrect(?) C. * src/backend/libpq/pqcomm.c (StreamConnection): Work around accept() bug. * src/include/port/unixware.h: ...with help from here. * src/backend/nodes/print.c (plannode_type): Remove some "break"s after "return"s. * src/backend/tcop/dest.c (DestToFunction): ditto. * src/backend/nodes/readfuncs.c: Add proper prototypes. * src/backend/utils/adt/numutils.c (pg_atoi): Cope specially with strtol() setting EINVAL. This saves us from creating an extra set of regression test output for the affected systems. * src/include/storage/s_lock.h (tas): Correct prototype. * src/interfaces/libpq/fe-connect.c (parseServiceInfo): Don't use variable as dimension in array definition. * src/makefiles/Makefile.unixware: Add support for GCC. * src/template/unixware: same here * src/test/regress/expected/abstime-solaris-1947.out: Adjust whitespace. * src/test/regress/expected/horology-solaris-1947.out: Part of this file was evidently missing. * src/test/regress/pg_regress.sh: Fix shell. mkdir -p returns non-zero if the directory exists. * src/test/regress/resultmap: Add entries for Unixware.
* WALVadim B. Mikheev2000-10-21
|
* redo/undo support functions and cleanups.Vadim B. Mikheev2000-10-20
|
* Various utils for WALVadim B. Mikheev2000-10-13
|
* WALVadim B. Mikheev2000-10-13
|
* WALVadim B. Mikheev2000-10-13
|
* Fix temp relation handling for indexes, cleanupBruce Momjian2000-10-11
|
* Suppress gcc warnings.Tom Lane2000-10-05
|
* Add proofreader's changes to docs.Bruce Momjian2000-10-05
| | | | Fix misspelling of disbursion to dispersion.
* Btree WAL logging.Vadim B. Mikheev2000-10-04
|
* Reset current user id to session user id during transaction abortPeter Eisentraut2000-09-27
|
* Clean up some ugly coding (hardwired constants) in index_formtuple.Tom Lane2000-09-23
|
* Heap redo/undo (except for tuple moving used by vacuum).Vadim B. Mikheev2000-09-07
|
* Fix relative path references so that make knowns which dependencies referPeter Eisentraut2000-08-31
| | | | | to one another. Sort out builddir vs srcdir variable namings. Remove some now obsoleted make variables.
* Tweak btree insertion to avoid O(N^2) slowdown with large numbers ofTom Lane2000-08-25
| | | | equal keys. See discussion of today's date in pghackers list.
* CREATE btree INDEX takes dead tuples into account when old transactionsHiroshi Inoue2000-08-10
| | | | are running.
* Ensure that catcache 'busy' flags are reset at transaction abort.Tom Lane2000-08-06
| | | | | | Without this, an elog during cache-entry load leaves that catcache unusable. elog in that segment of code is pretty unusual but it can happen.
* Fix tuptoaster bugs induced by making bytea toastable. Durn thing wasTom Lane2000-08-04
| | | | | | | | | trying to toast tuples inserted into toast tables! Fix is two-pronged: first, ensure all columns of a toast table are marked attstorage='p', and second, alter the target chunk size so that it's less than the threshold for trying to toast a tuple. (Code tried to do that but the expression was wrong.) A few cosmetic cleanups in tuptoaster too. NOTE: initdb forced due to change in toaster chunk-size.
* Modify heap_open()/heap_openr() API per pghackers discussion of 11 July.Tom Lane2000-08-03
| | | | | | | | | These two routines will now ALWAYS elog() on failure, whether you ask for a lock or not. If you really want to get a NULL return on failure, call the new routines heap_open_nofail()/heap_openr_nofail(). By my count there are only about three places that actually want that behavior. There were rather more than three places that were missing the check they needed to make under the old convention :-(.
* More functions updated to new fmgr style --- money, name, tid datatypes.Tom Lane2000-08-03
| | | | | We're reaching the mopup stage here (good thing too, this is getting tedious).
* Make acl-related functions safe for TOAST. Mark pg_class.relacl asTom Lane2000-07-31
| | | | | compressible but not externally storable (since we're not sure about whether creating a toast relation for pg_class would work).
* Convert all remaining geometric operators to new fmgr style. ThisTom Lane2000-07-30
| | | | | | | | allows fixing problems with operators that expected to be able to return a NULL, such as the '#' line-segment-intersection operator that tried to return NULL when the two segments don't intersect. (See, eg, bug report from 1-Nov-99 on pghackers.) Fix some other bugs in passing, such as backwards comparison in path_distance().
* PATH and POLYGON datatypes are now TOASTable. Associated functionsTom Lane2000-07-29
| | | | | updated to new fmgr style. Deleted hoary old functions for compatibility with pre-6.1 representations of these datatypes.
* Ensure that if the OID counter wraps around, we will not generate 0,Tom Lane2000-07-25
| | | | nor any OID in the reserved range (1-16383).
* Add commentary about varying usage of scankeys in btree code.Tom Lane2000-07-25
|
* Clean up and document btree code for ordering keys. Neat stuff,Tom Lane2000-07-25
| | | | | | actually, but who could understand it with no comments? Fix bug while at it: _bt_orderkeys would try to invoke comparisons on NULL inputs, given the right sort of redundant quals.
* 2nd try for the index tuple toast hack. This time as suggestedJan Wieck2000-07-22
| | | | | | by Tom. Jan
* Further cleanup of btbuild (CREATE INDEX). Avoid storing unneededTom Lane2000-07-21
| | | | | | left keys during bottom-up index build, and leave some free space instead of packing the pages to the brim (so as to avoid vast numbers of page splits during the first interactive insertions).
* Fix sloppiness about alignment requirements in findsplitloc() spaceTom Lane2000-07-21
| | | | | calculation, also make it stop when it has a 'good enough' split instead of exhaustively trying all split points.
* Need to switch to tuples memory context when replacing the toastedJan Wieck2000-07-21
| | | | | | one with the plain one. Jan
* Temporary fix to make TOAST vacuum-safe. All values are forced to beJan Wieck2000-07-21
| | | | | | | in memory (plain or compressed) in the tuple returned from the heap-am. So no index will ever contain an external reference. Jan
* Major overhaul of btree index code. Eliminate special BTP_CHAIN logic forTom Lane2000-07-21
| | | | | | | | | | | | duplicate keys by letting search go to the left rather than right when an equal key is seen at an upper tree level. Fix poor choice of page split point (leading to insertion failures) that was forced by chaining logic. Don't store leftmost key in non-leaf pages, since it's not necessary. Don't create root page until something is first stored in the index, so an unused index is now 8K not 16K. (Doesn't seem to be as easy to get rid of the metadata page, unfortunately.) Massive cleanup of unreadable code, fix poor, obsolete, and just plain wrong documentation and comments. See src/backend/access/nbtree/README for the gory details.
* Cleanup of code for creating index entries. Functional indexes withTom Lane2000-07-14
| | | | | | | | | | | | | pass-by-ref data types --- eg, an index on lower(textfield) --- no longer leak memory during index creation or update. Clean up a lot of redundant code ... did you know that copy, vacuum, truncate, reindex, extend index, and bootstrap each basically duplicated the main executor's logic for extracting information about an index and preparing index entries? Functional indexes should be a little faster now too, due to removal of repeated function lookups. CREATE INDEX 'opt_type' clause is deimplemented by these changes, but I haven't removed it from the parser yet (need to merge with Thomas' latest change set first).
* Repair parallel make in backend tree (and make it really parallel).Peter Eisentraut2000-07-13
| | | | Make Gen_fmgrtab.sh reasonably robust against concurrent invocation.
* First stage of reclaiming memory in executor by resetting short-termTom Lane2000-07-12
| | | | | | memory contexts. Currently, only leaks in expressions executed as quals or projections are handled. Clean up some old dead cruft in executor while at it --- unused fields in state nodes, that sort of thing.
* Some security checks that we've found an external value completelyJan Wieck2000-07-11
| | | | | | when fetching toasted values. Jan
* Bugfix. If toasted tuple containted NULLs, DataFill() was handedJan Wieck2000-07-06
| | | | | | a wrong pointer causing the bitmap overwriting the tuple header. Jan
* Moving toaster out of NO ELOG area in heap_update().Jan Wieck2000-07-04
| | | | Jan
* DataFill() has no business resetting xact status bitsTom Lane2000-07-04
| | | | in the infomask of the provided tuple.
* miscVadim B. Mikheev2000-07-04
|
* unlock buffer before releasing in heap_insertVadim B. Mikheev2000-07-04
| | | | +unlock buffer in heap_fetch under !ItemIdIsUsed().
* Add missing #include for TOAST.Tom Lane2000-07-03
|