aboutsummaryrefslogtreecommitdiff
path: root/src/backend/parser/parser.c
Commit message (Collapse)AuthorAge
* $Header: -> $PostgreSQL Changes ...PostgreSQL Daemon2003-11-29
|
* Update copyrights to 2003.Bruce Momjian2003-08-04
|
* Not sure why parser() was still doing clearerr(stdin) ... but it'sTom Lane2003-05-05
| | | | *got* to be pointless.
* Infrastructure for deducing Param types from context, in the same wayTom Lane2003-04-29
| | | | | | | | | | | that the types of untyped string-literal constants are deduced (ie, when coerce_type is applied to 'em, that's what the type must be). Remove the ancient hack of storing the input Param-types array as a global variable, and put the info into ParseState instead. This touches a lot of files because of adjustment of routine parameter lists, but it's really not a large patch. Note: PREPARE statement still insists on exact specification of parameter types, but that could easily be relaxed now, if we wanted to do so.
* Put back encoding-conversion step in processing of incoming queries;Tom Lane2003-04-27
| | | | | | | | | | I had inadvertently omitted it while rearranging things to support length-counted incoming messages. Also, change the parser's API back to accepting a 'char *' query string instead of 'StringInfo', as the latter wasn't buying us anything except overhead. (I think when I put it in I had some notion of making the parser API 8-bit-clean, but seeing that flex depends on null-terminated input, that's not really ever gonna happen.)
* pgindent run.Bruce Momjian2002-09-04
|
* PREPARE/EXECUTE statements. Patch by Neil Conway, some kibitzingTom Lane2002-08-27
| | | | from Tom Lane.
* Update copyright to 2002.Bruce Momjian2002-06-20
|
* Scanner performance improvementsPeter Eisentraut2002-04-20
| | | | | | | | Use flex flags -CF. Pass the to-be-scanned string around as StringInfo type, to avoid querying the length repeatedly. Clean up some code and remove lex-compatibility cruft. Escape backslash sequences inline. Use flex-provided yy_scan_buffer() function to set up input, rather than using myinput().
* New pgindent run with fixes suggested by Tom. Patch manually reviewed,Bruce Momjian2001-11-05
| | | | initdb/regression tests pass.
* pgindent run on all C files. Java run to follow. initdb/regressionBruce Momjian2001-10-25
| | | | tests pass.
* pgindent run. Make it all clean.Bruce Momjian2001-03-22
|
* Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group.Bruce Momjian2001-01-24
|
* Arrange that no database accesses are attempted during parser() --- thisTom Lane2000-10-07
| | | | | | | | | | | | | | | took some rejiggering of typename and ACL parsing, as well as moving parse_analyze call out of parser(). Restructure postgres.c processing so that parse analysis and rewrite are skipped when in abort-transaction state. Only COMMIT and ABORT statements will be processed beyond the raw parser() phase. This addresses problem of parser failing with database access errors while in aborted state (see pghackers discussions around 7/28/00). Also fix some bugs with COMMIT/ABORT statements appearing in the middle of a single query input string. Function, operator, and aggregate arguments/results can now use full TypeName production, in particular foo[] for array types. DROP OPERATOR and COMMENT ON OPERATOR were broken for unary operators. Allow CREATE AGGREGATE to accept unquoted numeric constants for initcond.
* First cut at full support for OUTER JOINs. There are still a few looseTom Lane2000-09-12
| | | | | ends to clean up (see my message of same date to pghackers), but mostly it works. INITDB REQUIRED!
* Ye-old pgindent run. Same 4-space tabs.Bruce Momjian2000-04-12
|
* Add safety check on expression nesting depth. Default value is set byTom Lane2000-03-17
| | | | a config.h #define, and the runtime value can be controlled via SET.
* Add:Bruce Momjian2000-01-26
| | | | | | * Portions Copyright (c) 1996-2000, PostgreSQL, Inc to all files copyright Regents of Berkeley. Man, that's a lot of files.
* Move some system includes into c.h, and remove duplicates.Bruce Momjian1999-07-17
|
* Final cleanup.Bruce Momjian1999-07-16
|
* Remove unused #includes in *.c files.Bruce Momjian1999-07-15
|
* pgindent run over code.Bruce Momjian1999-05-25
|
* Rip out QueryTreeList structure, root and branch. QuerytreeTom Lane1999-05-13
| | | | | | | | | | lists are now plain old garden-variety Lists, allocated with palloc, rather than specialized expansible-array data allocated with malloc. This substantially simplifies their handling and eliminates several sources of memory leakage. Several basic types of erroneous queries (syntax error, attempt to insert a duplicate key into a unique index) now demonstrably leak zero bytes per query.
* Change my-function-name-- to my_function_name, and optimizer renames.Bruce Momjian1999-02-13
|
* OK, folks, here is the pgindent output.Bruce Momjian1998-09-01
|
* Renaming cleanup, no pgindent yet.Bruce Momjian1998-09-01
|
* Remove un-needed braces around single statements.Bruce Momjian1998-06-15
|
* pgindent run before 6.3 release, with Thomas' requested changes.Bruce Momjian1998-02-26
|
* Create SubLink nodes in parser for Vadim.Bruce Momjian1998-01-19
|
* Fix for select 1=1 or 2=2, select 1=1 and 2=2, and select sum(2+2).Bruce Momjian1997-12-22
|
* Cleanup up include files.Bruce Momjian1997-11-26
|
* Break parser functions into smaller files, group together.Bruce Momjian1997-11-25
|
* Remove all time travel stuff. Small parser cleanup.Bruce Momjian1997-11-20
|
* Remove 16 char limit on system table/index names. Rename system indexes.Bruce Momjian1997-11-17
|
* heapattr functions now return a Datum, not char *.Bruce Momjian1997-09-12
|
* Used modified version of indent that understands over 100 typedefs.Bruce Momjian1997-09-08
|
* Another PGINDENT run that changes variable indenting and case label ↵Bruce Momjian1997-09-08
| | | | indenting. Also static variable indenting.
* Massive commit to run PGINDENT on all *.c and *.h files.Bruce Momjian1997-09-07
|
* We store Cash/money as int of size 4, so make it an int rather than a long.Bruce Momjian1997-08-22
|
* Allow functions and operators on internally-identical types to succeed.Bruce Momjian1997-08-22
|
* Comment out code that makes no sense, and Purify complains about.Bruce Momjian1997-08-03
|
* Various compile errors concerning overflow due to shifts, unsigned, and bad ↵Bruce Momjian1997-07-24
| | | | prototypes, from Solaris, from Diab Jerius
* Remove WIN32 defines. They never worked.Bruce Momjian1997-02-14
|
* Cast constants to the type of the other binary operand.Bruce Momjian1997-01-22
| | | | Invalidate vacuum relation cache to use new row counts from vacuum.
* I have this annoying habit (among others) of puttingBruce Momjian1996-12-26
| | | | | | | | | | | | | | %ud in a printf format strings instead of just %u. There were three occurances of this in catalog_utils.c, two in parser.c and one in rewriteSupport.c in the oid patch that I submitted and was applied. They won't crash anything, but the error messages will have a 'd' after the Oid. Annoying, but none are db-threatening. Sorry about that folks...I'll be more careful in the future... Darren King
* Remove Dan's fix of SELECT NULL to fix INSERT NULL.Bruce Momjian1996-12-07
|
* This patch changes quite a few instances of references of Oid'sBruce Momjian1996-11-30
| | | | | | | | | | | | as ints and longs. Touches on quite a few function args as well. Most other files look ok as far as Oids go...still checking though... Since Oids are type'd as unsigned ints, they should prolly be used with the %ud format string in elog and sprintf messages. Not sure what kind of strangeness that could produce. Darren King
* As someone asked for this feature - patch for 1.09 follows.Bruce Momjian1996-11-30
| | | | | | | | | | | Now You can do queries like select sum(some_func(x)) from ... select min(table1.x + table2.y) from table1, table2 where ... and so on. Vadim
* Prevent empty queries from crashing server.Bruce Momjian1996-11-25
|
* Commit of a *MAJOR* patch from Dan McGuirk <djm@indirect.com>Marc G. Fournier1996-11-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes: * Unique index capability works using the syntax 'create unique index'. * Duplicate OID's in the system tables are removed. I put little scripts called 'duplicate_oids' and 'find_oid' in include/catalog that help to find and remove duplicate OID's. I also moved 'unused_oids' from backend/catalog to include/catalog, since it has to be in the same directory as the include files in order to work. * The backend tries converting the name of a function or aggregate to all lowercase if the original name given doesn't work (mostly for compatibility with ODBC). * You can 'SELECT NULL' to your heart's content. * I put my _bt_updateitem fix in instead, which uses _bt_insertonpg so that even if the new key is so big that the page has to be split, everything still works. * All literal references to system catalog OID's have been replaced with references to define'd constants from the catalog header files. * I added a couple of node copy functions. I think this was a preliminary attempt to get rules to work.