aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Allow loadable modules to create PGC_POSTMASTER GUC variables, but onlyTom Lane2009-01-03
| | | | | | when loaded via shared_preload_libraries. Needed for support of pg_stat_statements, or pretty much anything else that wants a GUC to control size of a shared memory allocation.
* Create a "shmem_startup_hook" to be called at the end of shared memoryTom Lane2009-01-03
| | | | | | | | | | | | | initialization, to give loadable modules a reasonable place to perform creation of any shared memory areas they need. This is the logical conclusion of our previous creation of RequestAddinShmemSpace() and RequestAddinLWLocks(). We don't need an explicit shmem_shutdown_hook, because the existing on_shmem_exit and on_proc_exit mechanisms serve that need. Also, adjust SubPostmasterMain so that libraries that got loaded into the postmaster will be loaded into all child processes, not only regular backends. This improves consistency with the non-EXEC_BACKEND behavior, and might be necessary for functionality for some types of add-ons.
* Include a pointer to the query's source text in QueryDesc structs. This isTom Lane2009-01-02
| | | | | | | practically free given prior 8.4 changes in plancache and portal management, and it makes it a lot easier for ExecutorStart/Run/End hooks to get at the query text. Extracted from Itagaki Takahiro's pg_stat_statements patch, with minor editorialization.
* Initialize .pot files with some useful default values.Peter Eisentraut2009-01-02
|
* Split the ecpg translation support into a separate catalog for the ecpgPeter Eisentraut2009-01-02
| | | | | | | | | | | | | | | | | | preprocessor and the library. This is useful for a number of reasons: * The preprocessor and the library are in some cases installed in separate packages and used by different classes of users. * The library MO files need a different versioning scheme to account for the soname. * The makefiles are simpler, more robust, and easier to maintain this way. (NLS web site was prone to break everytime a build rule changes.) * Translators might choose to focus on the ecpglib, because that is more user-facing. * There was virtually no overlap, so nothing is lost.
* Fix cut/paste error that caused all errors from REQUIRE_AUTH_OPTION to sayMagnus Hagander2009-01-02
| | | | it was the ldaptls parameter that was wrong...
* Remove comments that say restart is required for changing of KerberosMagnus Hagander2009-01-02
| | | | parameters.
* Make it possible to change Kerberos/GSSAPI parameters without restartingMagnus Hagander2009-01-02
| | | | | the postmaster. They are only used in backend processes, so it's just a matter of re-labeling the GUCs.
* write_nondefault_variables must take care to write custom_variable_classesTom Lane2009-01-02
| | | | | first; otherwise backends reading the file might reject values of custom variables. Per experimentation with auto_explain.
* Tweak guc.c to allow underscores in the names of custom variable classes,Tom Lane2009-01-02
| | | | | | | | | and change auto_explain's custom GUC variables to be named auto_explain.xxx not just explain.xxx. Per discussion in connection with the pg_stat_statements patch, it seems like a good idea to have the convention that custom variable classes are named the same as their defining module. Committing separately since this should happen regardless of what happens with pg_stat_statements itself.
* Be smarter --- accept missing comma, and force comma if missing.Bruce Momjian2009-01-01
|
* Mention src/interfaces/libpq/libpq.rc.in needs to be updated forBruce Momjian2009-01-01
| | | | copyright too.
* Make comma optional for copyright text change.Bruce Momjian2009-01-01
|
* Fix a couple of missed copyright dates.Tom Lane2009-01-01
|
* Update copyright for 2009.Bruce Momjian2009-01-01
|
* Fix an oversight in my patch of a couple weeks ago that ensured a snapshotTom Lane2009-01-01
| | | | | | | | | | is available during datatype input in Bind message processing. I put the PopActiveSnapshot() or equivalent just before PortalDefineQuery, which is an unsafe spot for it (in 8.3 and later) because we are carrying a plancache refcount that hasn't yet been assigned to the portal. Any error thrown there would result in leaking the refcount. It's not exactly likely that PopActiveSnapshot would throw an elog, perhaps, but it could happen. Reorder the code and add another comment warning not to do that.
* Throw error if a <window definition> references a window that already has aTom Lane2008-12-31
| | | | | frame clause, as appears to be required by the fine print in the SQL spec. Per discussion with Pavel, not doing so risks user confusion.
* Fix another problem in SQL-MED \d displays: should have a clean failureTom Lane2008-12-31
| | | | report if the command is attempted against an old server.
* Consistently use multi-line formatting for all ACL columns printed by psql'sTom Lane2008-12-31
| | | | | | | | | various display commands, not only for \z. In passing, fix some infelicities in the newly added \d commands for SQL-MED catalogs. Andreas Scherbaum and Tom Lane
* Add a WINDOW attribute to CREATE FUNCTION, and teach pg_dump about it,Tom Lane2008-12-31
| | | | | | | | | | | so that user-defined window functions are possible. For the moment you'll have to write them in C, for lack of any interface to the WindowObject API in the available PLs, but it's better than no support at all. There was some debate about the best syntax for this. I ended up choosing the "it's an attribute" position --- the other approach will inevitably be more work, and the likely market for user-defined window functions is probably too small to justify it.
* Add some basic support for window frame clauses to the window-functionsTom Lane2008-12-31
| | | | | | | | patch. This includes the ability to force the frame to cover the whole partition, and the ability to make the frame end exactly on the current row rather than its last ORDER BY peer. Supporting any more of the full SQL frame-clause syntax will require nontrivial hacking on the window aggregate code, so it'll have to wait for 8.5 or beyond.
* Reduce the last group of parallel regression tests to 19 tests, per failureTom Lane2008-12-30
| | | | | on buildfarm member bear. Sync the test order in serial_schedule with that in parallel_schedule.
* The flag to mark dead tuples is nowadays called LP_DEAD, not LP_DELETE.Heikki Linnakangas2008-12-30
| | | | Simon Riggs.
* Fix oversight in ALTER TABLE ENABLE/DISABLE RULE patch: the new enabledTom Lane2008-12-30
| | | | | | | field needs to be included in equalRuleLocks() comparisons, else updates will fail to propagate into relcache entries when they have positive reference count (ie someone is using the relcache entry). Per report from Alex Hunsaker.
* Finally the last test.Michael Meskes2008-12-29
|
* First rounf of whitespace changes. Everything but connect-test1 should be fine.Michael Meskes2008-12-29
|
* Tighten up a couple of regression test cases that can have platform-dependentTom Lane2008-12-29
| | | | | results due to underspecified ordering. Per report from buildfarm member pika.
* Support window functions a la SQL:2008.Tom Lane2008-12-28
| | | | Hitoshi Harada, with some kibitzing from Heikki and Tom.
* Make a couple of small changes to the tuplestore API, for the benefit of theTom Lane2008-12-27
| | | | | | | | | | | | upcoming window-functions patch. First, tuplestore_trim is now an exported function that must be explicitly invoked by callers at appropriate times, rather than something that tuplestore tries to do behind the scenes. Second, a read pointer that is marked as allowing backward scan no longer prevents truncation. This means that a read pointer marked as having BACKWARD but not REWIND capability can only safely read backwards as far as the oldest other read pointer. (The expected use pattern for this involves having another read pointer that serves as the truncation fencepost.)
* Remove unused include file, per ITAGAKI Takahiro. AFAICT this has beenTom Lane2008-12-26
| | | | dead code since Postgres95.
* Change the name of dtrace wal tracepoints:Bruce Momjian2008-12-24
| | | | | | TRACE_POSTGRESQL_WAL_BUFFER_WRITE_DIRTY Robert Lor
* Teach MSVC build system about building foreign data wrappers.Magnus Hagander2008-12-20
| | | | Should fix recent buildfarm breakage.
* Add missing semicolon, per buildfarm results. Martin PihlakTom Lane2008-12-20
|
* Fix various confusions of pointers and OIDs, unsafe assumptions about nulls,Tom Lane2008-12-20
| | | | etc. I think this will fix the current buildfarm issues ...
* Don't use OidIsValid to check the return value of transformGenericOptions,Heikki Linnakangas2008-12-20
| | | | | | because transformGenericOptions returns an array, not an Oid. I'm not sure if this fixes the crashes seen in buildfarm, but it should be fixed anyway.
* Add a new column proiswindow to pg_proc. It doesn't actually do anythingTom Lane2008-12-19
| | | | | useful yet, but I'm tired of re-merging this aspect of the window functions patch.
* SQL/MED catalog manipulation facilitiesPeter Eisentraut2008-12-19
| | | | | | | | This doesn't do any remote or external things yet, but it gives modules like plproxy and dblink a standardized and future-proof system for managing their connection information. Martin Pihlak and Peter Eisentraut
* Have psql's \d+ print reloptions. Extracted from Euler Taveira de Oliveira'sAlvaro Herrera2008-12-19
| | | | | | reloptions patch for autovacuum and revised by me. Note that there doesn't seem to be a way to display an index's reloptions.
* When we added the ability to have zero-element ARRAY[] constructs by adding anTom Lane2008-12-19
| | | | | | explicit cast to show the intended array type, we forgot to teach ruleutils.c to print out such constructs properly. Found by noting bogus output from recent changes in polymorphism regression test.
* Fix oversight in my recent patch to allow ExecMakeFunctionResult to handleTom Lane2008-12-18
| | | | | | | materialize-mode set results. Since it now uses the ReturnSetInfo node to hold internal state, we need to be sure to set up the node even when the immediately called function doesn't return set (but does have a set-valued argument). Per report from Anupama Aherrao.
* Code review for function default parameters patch. Fix numerous problems asTom Lane2008-12-18
| | | | | per recent discussions. In passing this also fixes a couple of bugs in the previous variadic-parameters patch.
* Applied patch by ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp> toMichael Meskes2008-12-17
| | | | fix segfault on non-glibc systems.
* Don't reset pg_class.reltuples and relpages in VACUUM, if any pages wereHeikki Linnakangas2008-12-17
| | | | | | | | | | | | | | | | | skipped. We could update relpages anyway, but it seems better to only update it together with reltuples, because we use the reltuples/relpages ratio in the planner. Also don't update n_live_tuples in pgstat. ANALYZE in VACUUM ANALYZE now needs to update pg_class, if the VACUUM-phase didn't do so. Added some boolean-passing to let analyze_rel know if it should update pg_class or not. I also moved the relcache invalidation (to update rd_targblock) from vac_update_relstats to where RelationTruncate is called, because vac_update_relstats is not called for partial vacuums anymore. It's more obvious to send the invalidation close to the truncation that requires it. Per report by Ned T. Crigler.
* The attached patch contains a couple of fixes in the existing probes andBruce Momjian2008-12-17
| | | | | | | | | | | | | includes a few new ones. - Fixed compilation errors on OS X for probes that use typedefs - Fixed a number of probes to pass ForkNumber per the relation forks patch - The new probes are those that were taken out from the previous submitted patch and required simple fixes. Will submit the other probes that may require more discussion in a separate patch. Robert Lor
* Make heap_update() set newtup->t_tableOid correctly, for consistency withTom Lane2008-12-16
| | | | | | | | | | the other major heapam.c functions. The only known consequence of this omission is that UPDATE RETURNING failed to return the correct value for "tableoid", as per report from KaiGai Kohei. Back-patch to 8.2. Arguably it's wrong all the way back; but without evidence of visible breakage before RETURNING was added, I'll desist from patching the older branches.
* Attempt to fix MSVC breakage from Major Version patch.Andrew Dunstan2008-12-16
|
* Department of second thoughts: further experimentation with CREATE OR REPLACETom Lane2008-12-16
| | | | | VIEW suggests that it'd be worth spelling the error messages out in a little more detail. This seems to help with localizing the problem.
* Code review for CREATE OR REPLACE VIEW patch. Do things in a saner order toTom Lane2008-12-15
| | | | | result in hopefully-less-confusing error messages when the new definition isn't compatible with the old; minor other cleanup.
* Fix cast-away-const problem as well as bogus calculation of required buffer ↵Tom Lane2008-12-15
| | | | size.
* Arrange for the pg_foo_is_visible and has_foo_privilege families of functionsTom Lane2008-12-15
| | | | | | | | | | | to return NULL, instead of erroring out, if the target object is specified by OID and we can't find that OID in the catalogs. Since these functions operate internally on SnapshotNow rules, there is a race condition when using them in user queries: the query's MVCC snapshot might "see" a catalog row that's already committed dead, leading to a failure when the inquiry function is applied. Returning NULL should generally provide more convenient behavior. This issue has been complained of before, and in particular we are now seeing it in the regression tests due to another recent patch.