aboutsummaryrefslogtreecommitdiff
path: root/src/backend
Commit message (Collapse)AuthorAge
* Remove OLD_FILE_NAMING code. No longer used.Bruce Momjian2001-05-30
|
* Tweak StrategyEvaluation data structure to eliminate hardwired limit onTom Lane2001-05-30
| | | | | number of strategies supported by an index AM. Add missing copyright notices and CVS $Header$ markers to GIST source files.
* Fix broken $Header$ declaration.Tom Lane2001-05-30
|
* Remove SEP_CHAR, replace with / or '/' as appropriate.Bruce Momjian2001-05-30
|
* These patches should fix check constraints not inheritingBruce Momjian2001-05-30
| | | | | | | | when added by alter table add constraint. The first file patches backend/commands/command.c and the latter is a patch to the alter table regression test. Stephan Szabo
* Attached is my patch that adds DROP CONSTRAINT support to PostgreSQL. IBruce Momjian2001-05-30
| | | | | | | | | | | | | | | | | | | | basically want your guys feedback. I have sprinkled some of my q's thru the text delimited with the @@ symbol. It seems to work perfectly. [ Removed @@ comments because patch was reviewed. ] At the moment it does CHECK constraints only, with inheritance. However, due to the problem mentioned before with the mismatching between inherited constraints it may be wise to disable the inheritance feature for a while. it is written in an extensible fashion to support future dropping of other types of constraint, and is well documented. Please send me your comments, check my use of locking, updating of indices, use of ERROR and NOTICE, etc. and I will rework the patch based on feedback until everyone is happy with it... Christopher Kings
* Make text <=> char conversion functions convert zero character to andTom Lane2001-05-28
| | | | | | from an empty text string. This makes them consistent with the de facto behavior of type char's I/O conversion functions, and avoids generating text values with embedded nulls, which confuse many text operators.
* Fix a message error in utf_to_localTatsuo Ishii2001-05-28
|
* When using a junkfilter, the output tuple should NOT be stored back intoTom Lane2001-05-27
| | | | | | | | the same tuple slot that the raw tuple came from, because that slot has the wrong tuple descriptor. Store it into its own slot with the correct descriptor, instead. This repairs problems with SPI functions seeing inappropriate tuple descriptors --- for example, plpgsql code failing to cope with SELECT FOR UPDATE.
* Cause ExecCountSlots() accounting to bear some relationship to reality.Tom Lane2001-05-27
| | | | Rather surprising we hadn't seen bug reports about this ...
* Fix eqjoinsel() to make use of new statistics.Tom Lane2001-05-27
|
* Make UPDATE and DELETE privileges distinct. Add REFERENCES and TRIGGERPeter Eisentraut2001-05-27
| | | | | privileges. INSERT and COPY FROM now require INSERT (only). Add privileges regression test.
* Oops, only wanted python change in the last commit. Backing out.Bruce Momjian2001-05-25
|
* While changing Cygwin Python to build its core as a DLL (like Win32Bruce Momjian2001-05-25
| | | | | | | | | | | | | | | Python) to support shared extension modules, I have learned that Guido prefers the style of the attached patch to solve the above problem. I feel that this solution is particularly appropriate in this case because the following: PglargeType PgType PgQueryType are already being handled in the way that I am proposing for PgSourceType. Jason Tishler
* I haven't tried building postgres with the Watcom compiler for 7.1 becauseBruce Momjian2001-05-24
| | | | | | | | | | | | | | | | it does not support 64bit integers. AFAIK that's the default data type for OIDs, so I am not surprised that this does not work. Use gcc instead. BTW., 7.1 does not compile as is with gcc either, I believed the required patches made it into the 7.1.1 release but obviously I missed the deadline. Since the ports mailing list does not seem to be archived I have attached a copy of the patch (for 7.1 and 7.1.1). I've just performed a build of a Watcom compiled version and found a couple of bugs in the watcom specific part of that patch. Please use the attached version instead. Tegge, Bernd
* I found the answer to this: the partition had filled up, and so the problemBruce Momjian2001-05-22
| | | | | | was lack of disk space. Oliver Elphick
* Make bit and bit varying types reject too long input. (They already triedPeter Eisentraut2001-05-22
| | | | | | to do that, but inconsistently.) Make bit type reject too short input, too, per SQL. Since it no longer zero pads, 'zpbit*' has been renamed to 'bit*' in the source, hence initdb.
* The Watcom preprocessor adds a space at the start of each line. ThereforeBruce Momjian2001-05-22
| | | | | | | the output of "egrep '^[0-9]' " is empty. Changing the pattern to "egrep '^[ ]*[0-9]" generates the correct file. Tegge, Bernd
* Print error on SELECT tab FROM tab:Bruce Momjian2001-05-21
| | | | You can't use relation names alone in the target list, try relation.*
* Make char(n) and varchar(n) types raise an error if the inserted string isPeter Eisentraut2001-05-21
| | | | | too long. While I was adjusting the regression tests I moved the array things all into array.sql, to make things more manageable.
* Enhancement of SPI to get access to portalsJan Wieck2001-05-21
| | | | | | | | | | | | | | | | | | | | | | | | | - New functions to create a portal using a prepared/saved SPI plan or lookup an existing portal by name. - Functions to fetch/move from/in portals. Results are placed in the usual SPI_processed and SPI_tuptable, so the entire set of utility functions can be used to gain attribute access. - Prepared/saved SPI plans now use their own memory context and SPI_freeplan(plan) can remove them. - Tuple result sets (SPI_tuptable) now uses it's own memory context and can be free'd by SPI_freetuptable(tuptab). Enhancement of PL/pgSQL - Uses generic named portals internally in FOR ... SELECT loops to avoid running out of memory on huge result sets. - Support for CURSOR and REFCURSOR syntax using the new SPI functionality. Cursors used internally only need no explicit transaction block. Refcursor variables can be used inside of explicit transaction block to pass cursors between main application and functions. Jan
* Modify optimizer data structures so that IndexOptInfo lists built forTom Lane2001-05-20
| | | | | | | | create_index_paths are not immediately discarded, but are available for subsequent planner work. This allows avoiding redundant syscache lookups in several places. Change interface to operator selectivity estimation procedures to allow faster and more flexible estimation. Initdb forced due to change of pg_proc entries for selectivity functions!
* Make sure fmgr_info() fills in fn_oid last, so that no partiallyPeter Eisentraut2001-05-19
| | | | initialized FmgrInfo structs linger after elog.
* Allow special '$libdir' macro to show up in object file path in CREATEPeter Eisentraut2001-05-19
| | | | | FUNCTION command. Guard against trying to load a directory. Update documentation some.
* Comment additions in parser.Bruce Momjian2001-05-19
|
* Move ParserFuncOrColumn function higher in the file.Bruce Momjian2001-05-19
|
* New comment. This func/column things has always confused me.Bruce Momjian2001-05-19
| | | | | | | | | | | | | | | | | | | /* * parse function * This code is confusing because the database can accept * relation.column, column.function, or relation.column.function. * In these cases, funcname is the last parameter, and fargs are * the rest. * * It can also be called as func(col) or func(col,col). * In this case, Funcname is the part before parens, and fargs * are the part in parens. * */ Node * ParseFuncOrColumn(ParseState *pstate, char *funcname, List *fargs, bool agg_star, bool agg_distinct, int precedence)
* Undo \dT change. Not worth it.Bruce Momjian2001-05-18
|
* Rename ParseFuncOrColumn() to ParseColumnOrFunc().Bruce Momjian2001-05-18
|
* Small code cleanups,formatting.Bruce Momjian2001-05-18
|
* Suppress compiler warnings about pid_t vs int.Tom Lane2001-05-18
|
* Add dynamic_library_path parameter and automatic appending of sharedPeter Eisentraut2001-05-17
| | | | library extension.
* Prevent forced blank line before comment block in pgindent.Bruce Momjian2001-05-17
|
* Spacing cleanup.Bruce Momjian2001-05-17
|
* Small cleanup of spacing.Bruce Momjian2001-05-17
|
* Replace poorly-coded vac_find_eq routine with call to standard bsearchTom Lane2001-05-17
| | | | | library code. Tweak progress messages to include elapsed real time, not only CPU time.
* Add missing paren.Bruce Momjian2001-05-16
|
* Repair race condition introduced into heap_update() in 7.1 ---Tom Lane2001-05-16
| | | | | | | | | | | | | | | PageGetFreeSpace() was being called while not holding the buffer lock, which not only could yield a garbage answer, but even if it's the right answer there might be less space available after we reacquire the buffer lock. Also repair potential deadlock introduced by my recent performance improvement in RelationGetBufferForTuple(): it was possible for two heap_updates to try to lock two buffers in opposite orders. The fix creates a global rule that buffers of a single heap relation should be locked in decreasing block number order. Currently, this only applies to heap_update; VACUUM can get away with ignoring the rule since it holds exclusive lock on the whole relation anyway. However, if we try to implement a VACUUM that can run in parallel with other transactions, VACUUM will also have to obey the lock order rule.
* Add missing dlfcn.h includes. Fix "" vs <>.Peter Eisentraut2001-05-15
|
* Remove unnecessary EvalPlanQual support code --- since this plan nodeTom Lane2001-05-15
| | | | | | type never scans a relation directly, it can't be an EPQ target. Explicitly drop subplan's tuple table to ensure we have no buffer pin leaks.
* we found a problem in GiST with massive insert/update operationsBruce Momjian2001-05-15
| | | | | | | | | | | with many NULLs ( inserting of NULL into indexed field cause ERROR: MemoryContextAlloc: invalid request size) As a workaround 'vacuum analyze' could be used. This patch resolves the problem, please upply to 7.1.1 sources and current cvs tree. Oleg Bartunov
* Re-add pg_index.indhaskeytype.Bruce Momjian2001-05-15
|
* Re-add pg_index.indisclustered in a minimalist way. Also fix BSDiBruce Momjian2001-05-15
| | | | dynamic linker change. #include must be before #ifdef test.
* Some badly needed documentation about EvalPlanQual.Tom Lane2001-05-15
|
* EvalPlanQual was thoroughly broken for concurrent update/delete on inheritanceTom Lane2001-05-15
| | | | | | | | trees (mostly my fault). Repair. Also fix long-standing bug in ExecReplace: after recomputing a concurrently updated tuple, we must recheck constraints. Make EvalPlanQual leak memory with somewhat less enthusiasm than before, although plugging leaks fully will require more changes than I care to risk in a dot-release.
* Small include file fix for pg_variabie.hBruce Momjian2001-05-14
|
* Pg_varaiable removal cleanup found from regression.Bruce Momjian2001-05-14
|
* Remove columns pg_index.haskeytype and pg_index.indisclustered. Not used.Bruce Momjian2001-05-14
|
* Use RTLD_GLOBAL flag for dlopen-style dynamic loaders.Peter Eisentraut2001-05-14
|
* Remove unused tables pg_variable, pg_inheritproc, pg_ipl tables. InitdbBruce Momjian2001-05-14
| | | | forced.