summaryrefslogtreecommitdiff
path: root/src/backend/parser
AgeCommit message (Collapse)Author
1999-08-18Old multi-byte bug. Forgot to rename #ifdef MB to #ifdef MULTIBYTETatsuo Ishii
Now SET NAMES working again...
1999-08-15Repair the check for redundant UNIQUE and PRIMARY KEY indices.Thomas G. Lockhart
Also, improve it so that it checks for multi-column constraints. Thanks to Mark Dalphin <mdalphin@amgen.com> for reporting the problem.
1999-07-11Ignore resjunk targetlist entries when matching arguments toTom Lane
a SubLink with the subplan's targetlist. This fixes a problem seen with, for example, a subselect that uses GROUP BY.
1999-07-09Make ^ precidence greater than *.Bruce Momjian
1999-07-08Add ^ precidence.Bruce Momjian
1999-07-04Clarify maximum tuple and max attribute lengths.Bruce Momjian
1999-07-03Fix to prevent too large tuple from being created.Bruce Momjian
1999-06-21On second thought, expression_tree_walker should handle bareTom Lane
SubLink nodes after all ...
1999-06-19My first chosen victim for expression_tree_walker conversionTom Lane
is parse_aggs.c. This fixes its failure to cope with (at least) CaseExpr and ArrayRef nodes, which is the reason why both of these fail in 6.5: select coalesce(f1,0) from int4_tbl group by f1; ERROR: Illegal use of aggregates or non-group column in target list select sentence.words[0] from sentence group by sentence.words[0]; ERROR: Illegal use of aggregates or non-group column in target list The array case still fails, but at least it's not parse_agg's fault anymore ... considering that we now support CASE officially, I think it's important to fix the first example ...
1999-06-17Defend against function calls with more than 8 arguments (codeTom Lane
used to overrun its fixed-size arrays before detecting error; not cool). Also, replace uses of magic constant '8' with 'MAXFARGS'.
1999-06-07Repair recently-introduced error in makeIndexable for LIKE:Tom Lane
a non-leading % would be put into the >=/<= patterns. Also, repair longstanding confusion about whether %% means a literal %%. The SQL92 doesn't say any such thing, and textlike() knows that, but gram.y didn't.
1999-06-05Instead of failing when the constructed name for a sequence,Tom Lane
index, etc is too long, truncate until it fits.
1999-05-29Avoid redundant SysCache searches in coerce_type, for anotherTom Lane
few percent speedup in INSERT...
1999-05-26Make functions static or NOT_USED as appropriate.Bruce Momjian
1999-05-25Make 0x007f -> (unsigned)0x7f to make pgindent happy.Bruce Momjian
1999-05-25pgindent run over code.Bruce Momjian
1999-05-23Do not assign output columns to junk attributes created fromTom Lane
GROUP BY or ORDER BY expressions in INSERT ... SELECT.
1999-05-23Detect case of invalid use of GROUP BY when there are noTom Lane
aggregate functions, as in select a, b from foo group by a; The ungrouped reference to b is not kosher, but formerly we neglected to check this unless there was an aggregate function somewhere in the query.
1999-05-22Fix for select 1;select 2 without trailing semi.Bruce Momjian
1999-05-22Fix for DEFAULT ''.Bruce Momjian
1999-05-22Make postgres prompt backend>, and remove PARSEDEBUG.Bruce Momjian
1999-05-21Fix typo and attempt default fix.Bruce Momjian
1999-05-21Treat {} as special regex too.Bruce Momjian
1999-05-21Fix problem with | in ~ comparison using index.Bruce Momjian
1999-05-20Fixed shift/reduce conflictJan Wieck
SelectStmt and CursorStmt tried to parse FOR UPDATE ... / FOR READ ONLY. Cursor now checks that it is read only by looking at forUpdate of Query. SelectStmt handles FOR READ ONLY too. Jan
1999-05-19Remove 4096 string limited key on block sizeBruce Momjian
1999-05-19Upgrade to PyGreSQL (2.4)Bruce Momjian
1999-05-18Add Aggref and ArrayRef to the set of node types that transformExprTom Lane
will pass through rather than spitting up. This is necessary to handle cases where coerce_type causes a subexpression to be retransformed, as in SELECT count(*) + 1.0 FROM table
1999-05-17Skip junk nodes when comparing UNION target list lengths.Bruce Momjian
1999-05-17Change resjunk to a boolean.Bruce Momjian
1999-05-17Prior patch added 2 more characters to string allocatedTom Lane
for SERIAL column's constraint, but forgot to increase space palloc'd...
1999-05-17SELECT * error message fix.Bruce Momjian
1999-05-17Move IN to proper place.Bruce Momjian
1999-05-17CleanupBruce Momjian
1999-05-17Require IN in LOCK syntax.Bruce Momjian
1999-05-13Add double quotes around the sequence name generated to support theThomas G. Lockhart
SERIAL data type DEFAULT clause. This fixes a problem finding the sequence name when mixed case table names are involved.
1999-05-13Surround a variable declaration with ENABLE_OUTER_JOINS to suppressThomas G. Lockhart
compiler warnings about an unused variable.
1999-05-13Rip out QueryTreeList structure, root and branch. QuerytreeTom Lane
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.
1999-05-12Replaced targetlist entry in GroupClause by reference numberJan Wieck
in Resdom and GroupClause so changing of resno's doesn't confuse the grouping any more. Jan
1999-05-12Add keywords to implement Vadim's transaction isolationThomas G. Lockhart
and lock syntax as fully parsed tokens. Two keywords for isolation are non-reserved SQL92 (COMMITTED, SERIALIZABLE). All other new keywords are non-reserved Postgres (not SQL92) (ACCESS, EXCLUSIVE, MODE, SHARE). Add syntax to allow CREATE [GLOBAL|LOCAL] TEMPORARY TABLE, throwing an error if GLOBAL is specified.
1999-05-12Fix problem with multiple indices defined if using column- and table-Thomas G. Lockhart
constraints. Reported by Tom Lane. Now, check for duplicate indices and retain the one which is a primary-key. Adjust elog NOTICE messages to surround table and column names with single quotes.
1999-05-12Handle conversion of floating point constants to internal strings.Thomas G. Lockhart
1999-05-12Keep long non-quoted numeric strings *as* untyped strings if they failThomas G. Lockhart
the obvious conversion. Define a new pattern "decimal" which is non-exponential floating point for use with numeric() and decimal() types.
1999-05-11clean up commentsBruce Momjian
1999-05-10Change error messages to oids come out as %u and not %d. Change has noBruce Momjian
real affect now.
1999-05-03here are some patches for 6.5.0 which I already submitted but have neverBruce Momjian
been applied. The patches are in the .tar.gz attachment at the end: varchar-array.patch this patch adds support for arrays of bpchar() and varchar(), which where always missing from postgres. These datatypes can be used to replace the _char4, _char8, etc., which were dropped some time ago. block-size.patch this patch fixes many errors in the parser and other program which happen with very large query statements (> 8K) when using a page size larger than 8192. This patch is needed if you want to submit queries larger than 8K. Postgres supports tuples up to 32K but you can't insert them because you can't submit queries larger than 8K. My patch fixes this problem. The patch also replaces all the occurrences of `8192' and `1<<13' in the sources with the proper constants defined in include files. You should now never find 8192 hardwired in C code, just to make code clearer. -- Massimo Dal Zotto
1999-04-29Defend against 'update oid'. Someday we might want to supportTom Lane
that, but it'd be a New Feature, wouldn't it ... in the meantime, avoiding a backend crash seems worthwhile.
1999-04-29Aggregate functions didn't work on subscripted array references.Tom Lane
Things are better now.
1999-04-27Fixed DECIMAL data type to handle specified precision in atttypmodJan Wieck
Jan
1999-04-23Add disk space message to "can not extend" message.Bruce Momjian