aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Get rid of last few unadorned 'permission denied' messages.Tom Lane2003-01-27
|
* Prevent core dump when die_horribly() is called with null AH pointer.Tom Lane2003-01-27
| | | | Problem reported and fixed by Oliver Elphick.
* Include IPv6 addresses in pg_hba.conf even if IPv6 is not supported; atBruce Momjian2003-01-26
| | | | suggestion of Peter.
* Allow the planner to collapse explicit inner JOINs together, rather thanTom Lane2003-01-25
| | | | | | | | | necessarily following the JOIN syntax to develop the query plan. The old behavior is still available by setting GUC variable JOIN_COLLAPSE_LIMIT to 1. Also create a GUC variable FROM_COLLAPSE_LIMIT to control the similar decision about when to collapse sub-SELECT lists into their parent lists. (This behavior existed already, but the limit was always GEQO_THRESHOLD/2; now it's separately adjustable.)
* Where available, use utime() or utimes() to update the file mod timeTom Lane2003-01-25
| | | | | | of the socket file and socket lock file; this should prevent both of them from being removed by even the stupidest varieties of /tmp-cleaning script. Per suggestion from Giles Lean.
* Use stat(2) to probe for existing xlog segments in InstallXLogFileSegment,Tom Lane2003-01-25
| | | | | | | | | rather than actually opening the files. This eliminates some corner cases where the file indeed exists but open() fails for another reason, such as being out of file descriptors. The net reliability gain is probably tiny, since xlog.c is full of other file open calls that will elog(PANIC) if they fail for any reason; but this specific failure mode has been observed in the field, so we may as well fix it.
* Suppress gcc warnings.Tom Lane2003-01-24
|
* Modify planner's implied-equality-deduction code so that when a setTom Lane2003-01-24
| | | | | | | | | | | of known-equal expressions includes any constant expressions (including Params from outer queries), we actively suppress any 'var = var' clauses that are or could be deduced from the set, generating only the deducible 'var = const' clauses instead. The idea here is to push down the restrictions implied by the equality set to base relations whenever possible. Once we have applied the 'var = const' clauses, the 'var = var' clauses are redundant, and should be suppressed both to save work at execution and to avoid double-counting restrictivity.
* Grant options, and cascading revoke. Grant options are allowed only forPeter Eisentraut2003-01-23
| | | | | users right now, not groups. Extension of has_foo_privileges functions to query the grant options. Extension of aclitem type to store grantor.
* added fix from Joel Hock to get the inserted row into the current bufferDave Cramer2003-01-23
|
* Fix obsolete error message (isImmutable doesn't exist).Tom Lane2003-01-23
|
* Change CREATE TABLE AS / SELECT INTO to create the new table with OIDs,Tom Lane2003-01-23
| | | | | for backwards compatibility with pre-7.3 behavior. Per discussion on pgsql-general and pgsql-hackers.
* Fix sloppy comment.Tom Lane2003-01-22
|
* Make estimation of mergejoin scan selectivities more robust, per recentTom Lane2003-01-22
| | | | example from RaÇl GutiÅrrez.
* Improve print_expr() a little. It's still not very bright though.Tom Lane2003-01-22
|
* Implement choice between hash-based and sort-based grouping for doingTom Lane2003-01-22
| | | | DISTINCT processing on the output of an IN sub-select.
* Fix coredump problem in plpgsql's RETURN NEXT. When a SELECT INTOTom Lane2003-01-21
| | | | | | | | that's selecting into a RECORD variable returns zero rows, make it assign an all-nulls row to the RECORD; this is consistent with what happens when the SELECT INTO target is not a RECORD. In support of this, tweak the SPI code so that a valid tuple descriptor is returned even when a SPI select returns no rows.
* Synced parser.Michael Meskes2003-01-21
|
* Avoid gratuitous variation in spelling of same error message.Tom Lane2003-01-21
|
* Fix sed expression for BSD sed.Peter Eisentraut2003-01-21
|
* IN clauses appearing at top level of WHERE can now be handled as joins.Tom Lane2003-01-20
| | | | | | | | | | There are two implementation techniques: the executor understands a new JOIN_IN jointype, which emits at most one matching row per left-hand row, or the result of the IN's sub-select can be fed through a DISTINCT filter and then joined as an ordinary relation. Along the way, some minor code cleanup in the optimizer; notably, break out most of the jointree-rearrangement preprocessing in planner.c and put it in a new file prep/prepjointree.c.
* Improve symlink handling for C tags file.Bruce Momjian2003-01-18
|
* Fix parse_agg.c to detect ungrouped Vars in sub-SELECTs; remove codeTom Lane2003-01-17
| | | | | | | that used to do it in planner. That was an ancient kluge that was never satisfactory; errors should be detected at parse time when possible. But at the time we didn't have the support mechanism (expression_tree_walker et al) to make it convenient to do in the parser.
* Adjust API of expression_tree_mutator and query_tree_mutator toTom Lane2003-01-17
| | | | | | simplify callers. It turns out the common case is that the caller does want to recurse into sub-queries, so push support for that into these subroutines.
* Add code to print information about a detected deadlock cycle. TheTom Lane2003-01-16
| | | | | printed data is comparable to what you could read in the pg_locks view, were you fortunate enough to have been looking at it at the right time.
* Ooops, didn't cut-and-paste quite enough code from ResolveNew;Tom Lane2003-01-16
| | | | with result that flatten_join_alias_vars failed to descend into subselects.
* Fix bogus formatting of DROP DATABASE command, per Christopher Kings-Lynne.Tom Lane2003-01-16
|
* Repair an embarrassingly large number of alphabetization mistakes in theTom Lane2003-01-16
| | | | | | | datetime token tables. Even more embarrassing, the regression tests revealed some of the problems --- but evidently the bogus output wasn't questioned. Add code to postmaster startup to directly check the tables for correct ordering, in hopes of not being embarrassed like this again.
* Add remaining documentation tables to information schema.Peter Eisentraut2003-01-15
|
* Now that switch_outer processing no longer relies on being run afterTom Lane2003-01-15
| | | | | | | join_references(), it's practical to consolidate all join_references() processing into the set_plan_references traversal in setrefs.c. This seems considerably cleaner than the old way where we did it for join quals in createplan.c and for targetlists in setrefs.c.
* More comment cleanups for shared_buffers in postgresql.conf.Bruce Momjian2003-01-15
|
* Update shared_buffer comment in postgresql.conf.Bruce Momjian2003-01-15
|
* Back out ORDER BY addition to Inet, for Tom.Bruce Momjian2003-01-15
|
* Allow merge and hash joins to occur on arbitrary expressions (anything notTom Lane2003-01-15
| | | | | | | | | | | | | | | | containing a volatile function), rather than only on 'Var = Var' clauses as before. This makes it practical to do flatten_join_alias_vars at the start of planning, which in turn eliminates a bunch of klugery inside the planner to deal with alias vars. As a free side effect, we now detect implied equality of non-Var expressions; for example in SELECT ... WHERE a.x = b.y and b.y = 42 we will deduce a.x = 42 and use that as a restriction qual on a. Also, we can remove the restriction introduced 12/5/02 to prevent pullup of subqueries whose targetlists contain sublinks. Still TODO: make statistical estimation routines in selfuncs.c and costsize.c smarter about expressions that are more complex than plain Vars. The need for this is considerably greater now that we have to be able to estimate the suitability of merge and hash join techniques on such expressions.
* Add ORDER BY for inet regression, pointed out by Rod Taylor.Bruce Momjian2003-01-15
|
* Add sql_features table to information schema. Generate the features listPeter Eisentraut2003-01-14
| | | | in the documentation from that same data.
* Readd #include netinet/in.h for FreeBSD.Bruce Momjian2003-01-14
|
* Bumped up build number to 200Barry Lind2003-01-14
|
* Patch from Florian Wunderlich to correctly support java Timestamps. PreviouslyBarry Lind2003-01-14
| | | | | | | | | | | the code would only capture milliseconds where as both postgres and the java Timestamp object support greater resolution. Also fixed a bug reported by Rhett Sutphin where the last digit of the fractional seconds was lost when using timestamp without time zone Modified Files: jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java jdbc/org/postgresql/test/jdbc2/TimestampTest.java
* Patch from Aaron Mulder to have pooled connections implement PGConnectionBarry Lind2003-01-14
| | | | | | Modified Files: jdbc/org/postgresql/jdbc2/optional/PooledConnectionImpl.java jdbc/org/postgresql/test/jdbc2/optional/BaseDataSourceTest.java
* Patch from Kris Jurka to improve the performance of getImportedKeys().Barry Lind2003-01-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Use explicit joins to avoid using the genetic query optimizer. Also fixed a regression test that was failing to compile. This change also cleans up how key names are reported as per: A change to the value of the FK_NAME column. Currently the returned value is the triggers arguments which look like "<unnamed>\000t2\000t1\000UNSPECIFIED\000a\000a\000" This was required for server versions < 7.3 when a user did not supply constraint names. Every constraint was named "<unnamed>" . 7.3 has enforced unique constraint names per table so unnamed foreign keys will have different names "$1", "$2" and so on. I've used logic along the lines of the following to preserve the unique names in the original scheme, but allow people who go to the trouble of naming their constraints to see them: if (triggerargs.startsWith("<unnamed>")) { fkname = [the whole ugly trigger args name originally used]; } else { fkname = [the actual fk name]; } Modified Files: jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java jdbc/org/postgresql/test/jdbc2/optional/ConnectionPoolTest.java
* Fix information_schema.sql install to work when building outsideTom Lane2003-01-13
| | | | source tree.
* Reconsider mechanism for marking sub-selects that are at top level ofTom Lane2003-01-13
| | | | | | a qualification clause (and hence can get away with being sloppy about distinguishing FALSE from UNKNOWN). We need to know this in subselect.c; marking the subplans in setrefs.c is too late.
* Change Adjust_lo_type() so that it doesn't cause an errorHiroshi Inoue2003-01-13
| | | | even when cast functions are allowed to be volatile.
* Fixes to pgcvslog for last narrive entry.Bruce Momjian2003-01-13
|
* Cause planner to account for evaluation costs in targetlists andTom Lane2003-01-13
| | | | | | | | HAVING quals. Normally this is an insignificant effect --- but it will not be insignificant when these clauses contain sub-selects. The added costs cannot affect the planning of the query containing them, but they might have an impact when the query is a sub-query of a larger one.
* Recent changes in sublink representation require exprType() to acceptTom Lane2003-01-13
| | | | SubPlan nodes, else explaining queries containing sublinks may fail.
* Revise cost_qual_eval() to compute both startup (one-time) and per-tupleTom Lane2003-01-12
| | | | | | costs for expression evaluation, not only per-tuple cost as before. This extension is needed in order to deal realistically with hashed or materialized sub-selects.
* Fix wrong/misleading comments, be more consistent about where to callTom Lane2003-01-12
| | | | ExecAssignResultTypeFromTL().
* Replace RelidGetNamespaceId() by get_rel_namespace().Peter Eisentraut2003-01-12
|