aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access
Commit message (Collapse)AuthorAge
* Rename several destroy* functions/tags to drop*.Bruce Momjian1999-12-10
|
* Make LD -r as macros that can be changed for QNX.Bruce Momjian1999-12-09
|
* Mention index name when reporting corruption.Bruce Momjian1999-12-01
|
* Try to detect oversize tuple before corrupting relation, instead ofTom Lane1999-11-29
| | | | after...
* Rename heap_replace to heap_update.Bruce Momjian1999-11-24
|
* Tid access method feature from Hiroshi Inoue, Inoue@tpf.co.jpBruce Momjian1999-11-23
|
* Add system indexes to match all caches.Bruce Momjian1999-11-22
| | | | | | | Make all system indexes unique. Make all cache loads use system indexes. Rename *rel to *relid in inheritance tables. Rename cache names to be clearer.
* New parallel regression test shell and related things.Jan Wieck1999-11-19
| | | | Jan
* Tree dividing is not appropriate in Rtree.Tatsuo Ishii1999-11-15
| | | | This fix is reported by Hiroki Kataoka (kataoka@interwiz.koganei.tokyo.jp).
* Fix typo so it actually compiles...Tom Lane1999-11-14
|
* Add index recreation suggestion to end of world error message.Bruce Momjian1999-11-14
|
* New NameStr macro to convert Name to Str. No need for var.data anymore.Bruce Momjian1999-11-07
| | | | | | Fewer calls to nameout. Better use of RelationGetRelationName.
* Rearrange heap_beginscan to eliminate extra call onTom Lane1999-10-30
| | | | | mdnblocks. Bad enough it does an lseek, but to do it twice for no reason...
* Standardize on MAXPGPATH as the size of a file pathname buffer,Tom Lane1999-10-25
| | | | | | | eliminating some wildly inconsistent coding in various parts of the system. I set MAXPGPATH = 1024 in config.h.in. If anyone is really convinced that there ought to be a configure-time test to set the value, go right ahead ... but I think it's a waste of time.
* Add a notion of a 'catalog version number' that can indicateTom Lane1999-10-24
| | | | | | | | | when an initdb-forcing change has been applied within a development cycle. PG_VERSION serves this purpose for official releases, but we can't bump the PG_VERSION number every time we make a change to the catalogs during development. Instead, increase the catalog version number to warn other developers that you've made an incompatible change. See my mail to pghackers for more info.
* Look Ma, no MAX_PARSE_BUFFER! (At least not in the backend.Tom Lane1999-10-23
| | | | pg_dump and interfaces/odbc still need some work.)
* Final stage of psort reconstruction work: replace psort.c withTom Lane1999-10-17
| | | | | | | a generalized module 'tuplesort.c' that can sort either HeapTuples or IndexTuples, and is not tied to execution of a Sort node. Clean up memory leakages in sorting, and replace nbtsort.c's private implementation of mergesorting with calls to tuplesort.c.
* Check RELSEG_SIZE when postmaster starting up.Tatsuo Ishii1999-10-16
| | | | | this is neccesary to make sure that the backend and the database uses same RELSEG_SIZE.
* Add blcksz to struct ControlFileData to check BLCKSZ is sameTatsuo Ishii1999-10-12
| | | | as BLCKSZ which the backend was compiled in.
* The 1st step to implement new type of scan,TidScan.Hiroshi Inoue1999-10-11
| | | | | Now WHERE restriction on ctid is allowed though it is sequentially scanned.
* XLOG (also known as WAL -:)) Bootstrap/Startup/Shutdown.Vadim B. Mikheev1999-10-06
| | | | | First step in cleaning up backend initialization code. Fix for FATAL: now FATAL is ERROR + exit.
* Reimplement parsing and storage of default expressions and constraintTom Lane1999-10-03
| | | | | | | | | | | | | | | expressions in CREATE TABLE. There is no longer an emasculated expression syntax for these things; it's full a_expr for constraints, and b_expr for defaults (unfortunately the fact that NOT NULL is a part of the column constraint syntax causes a shift/reduce conflict if you try a_expr. Oh well --- at least parenthesized boolean expressions work now). Also, stored expression for a column default is not pre-coerced to the column type; we rely on transformInsertStatement to do that when the default is actually used. This means "f1 datetime default 'now'" behaves the way people usually expect it to. BTW, all the support code is now there to implement ALTER TABLE ADD CONSTRAINT and ALTER TABLE ADD COLUMN with a default value. I didn't actually teach ALTER TABLE to call it, but it wouldn't be much work.
* This is part #1 for of the DEFERRED CONSTRAINT TRIGGER support.Jan Wieck1999-09-29
| | | | | | | | | | | | Implements the CREATE CONSTRAINT TRIGGER and SET CONSTRAINTS commands. TODO: Generic builtin trigger procedures Automatic execution of appropriate CREATE CONSTRAINT... at CREATE TABLE Support of new trigger type in pg_dump Swapping of huge # of events to disk Jan
* Make tree compilable (+WAL).Vadim B. Mikheev1999-09-28
|
* Currently,only the first column of multi-column indicesBruce Momjian1999-09-27
| | | | | | | | | | | | | is used to find start scan position of Indexscan-s. To speed up finding scan start position,I have changed _bt_first() to use as many keys as possible. I'll attach the patch here. Regards. Hiroshi Inoue
* Transaction log manager core code.Vadim B. Mikheev1999-09-27
| | | | It doesn't work currently but also don't break anything -:)
* Several changes here, not very related but touching some of the same files.Tom Lane1999-09-24
| | | | | | | | | | | | | | | | | | | | | * Buffer refcount cleanup (per my "progress report" to pghackers, 9/22). * Add links to backend PROC structs to sinval's array of per-backend info, and use these links for routines that need to check the state of all backends (rather than the slow, complicated search of the ShmemIndex hashtable that was used before). Add databaseOID to PROC structs. * Use this to implement an interlock that prevents DESTROY DATABASE of a database containing running backends. (It's a little tricky to prevent a concurrently-starting backend from getting in there, since the new backend is not able to lock anything at the time it tries to look up its database in pg_database. My solution is to recheck that the DB is OK at the end of InitPostgres. It may not be a 100% solution, but it's a lot better than no interlock at all...) * In ALTER TABLE RENAME, flush buffers for the relation before doing the rename of the physical files, to ensure we don't get failures later from mdblindwrt(). * Update TRUNCATE patch so that it actually compiles against current sources :-(. You should do "make clean all" after pulling these changes.
* Mega-commit to make heap_open/heap_openr/heap_close take anTom Lane1999-09-18
| | | | | | | | | | | | | | | | | additional argument specifying the kind of lock to acquire/release (or 'NoLock' to do no lock processing). Ensure that all relations are locked with some appropriate lock level before being examined --- this ensures that relevant shared-inval messages have been processed and should prevent problems caused by concurrent VACUUM. Fix several bugs having to do with mismatched increment/decrement of relation ref count and mismatched heap_open/close (which amounts to the same thing). A bogus ref count on a relation doesn't matter much *unless* a SI Inval message happens to arrive at the wrong time, which is probably why we got away with this sloppiness for so long. Repair missing grab of AccessExclusiveLock in DROP TABLE, ALTER/RENAME TABLE, etc, as noted by Hiroshi. Recommend 'make clean all' after pulling this update; I modified the Relation struct layout slightly. Will post further discussion to pghackers list shortly.
* Changes made by Hiroshi Inoue and approved by Vadim.Tatsuo Ishii1999-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See attached mail for more details. ------------------------------------------------------------------- From: "Vadim Mikheev" <vadim@krs.ru> To: "Hiroshi Inoue" <Inoue@tpf.co.jp> References: <000201befa94$42fe04c0$2801007e@cadzone.tpf.co.jp> Subject: Re: elog(ERROR) in vacuum Date: Fri, 10 Sep 1999 10:27:10 +0900 Organization: OJSC Rostelecom (Krasnoyarsk) Message-ID: <37D85E6E.5AFA126D@krs.ru> Hiroshi Inoue wrote: > > Hello Vadim, > > I have a question about vacuum. > > VACUUM has a phase like commit which calls TransactionIdCommit(). > But if elog(ERROR) occured after that,the status of transaction is > changed from XID_COMMIT to XID_ABORT. > > Seems to me this causes inconsistency. > Shoudn't AbortTransaction() be changed not to call TransacionIdAbort() > in case of vacuum. You're right! As usual -:) Vadim
* Repair incorrect cleanup of heap memory allocation duringTom Lane1999-09-09
| | | | | | transaction abort --- before it only worked if there was exactly one level of allocation context stacked in the blank portal. Now it does the right thing for any depth, including zero...
* IsTransactionBlock() should return true in TBLOCK_ABORT state.Tom Lane1999-09-05
|
* Invalidate temp entries for aborted transactions.Bruce Momjian1999-09-04
|
* Modify RelationFlushRelation so that if the relcache entryTom Lane1999-09-04
| | | | | | | | | | | has positive refcount, it is rebuilt from pg_class data. This ensures that relcache entries will track changes made by other backends. Formerly, a shared inval report would just be ignored if it happened to arrive while the relcache entry was in use. Also, fix relcache to reset ref counts to zero during transaction abort. Finally, change LockRelation() so that it checks for shared inval reports after obtaining the lock. In this way, once any kind of lock has been obtained on a rel, we can trust the relcache entry to be up-to-date.
* Re-use free space on index pages with duplicates.Vadim B. Mikheev1999-08-09
|
* Fix nbtree's failure to clear BTScans list during xact abort.Tom Lane1999-08-08
| | | | | | Also, move responsibility for calling vc_abort into main xact.c list of things-to-call-at-abort. What in the world was it doing down inside of TransactionIdAbort()?
* Install new alignment code to use MAXALIGN rather than DOUBLEALIGN whereBruce Momjian1999-07-19
| | | | approproate.
* Clean up gcc warning about unused static decl.Tom Lane1999-07-19
|
* Move some system includes into c.h, and remove duplicates.Bruce Momjian1999-07-17
|
* Fix silly typo in commentary...Tom Lane1999-07-17
|
* Revise _bt_binsrch() so that its binary search loop takesTom Lane1999-07-16
| | | | | | care of equal-key cases, eliminating bt_firsteq(). The linear search formerly done by bt_firsteq() took a lot of time in the case where many equal keys appear on the same page.
* Final cleanup.Bruce Momjian1999-07-16
|
* Change #include's to use <> and "" as appropriate.Bruce Momjian1999-07-15
|
* Remove unused #includes in *.c files.Bruce Momjian1999-07-15
|
* Clean up #include in /include directory. Add scripts for checking includes.Bruce Momjian1999-07-15
|
* Cleanup of /include #include's, for 6.6 only.Bruce Momjian1999-07-14
|
* cleanupBruce Momjian1999-07-09
|
* Update tuple size check.Bruce Momjian1999-07-03
|
* Fix for insertion of tuple too large.Bruce Momjian1999-07-03
|
* Fix to prevent too large tuple from being created.Bruce Momjian1999-07-03
|
* typo fix.Bruce Momjian1999-07-02
|