aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* Put back WAL TODO.detail entries.Bruce Momjian2005-06-03
|
* Remove because it is partly done and we might not want to go farther:Bruce Momjian2005-06-03
| | | | < * -Compress WAL entries [wal]
* Just noticed that you can't Query-Cancel a long planner run, becauseTom Lane2005-06-03
| | | | | no part of the planner did CHECK_FOR_INTERRUPTS(). Add one in a suitably strategic spot.
* Update Russian FAQ.Bruce Momjian2005-06-03
| | | | Viktor Vislobokov
* Trim TODO.detail for wal completed items.Bruce Momjian2005-06-03
|
* Done:Bruce Momjian2005-06-03
| | | | > * -Compress WAL entries [wal]
* Done:Bruce Momjian2005-06-03
| | | | > * -Change WAL to use 32-bit CRC, for performance reasons
* Push enable/disable of notify and catchup interrupts all the way downTom Lane2005-06-02
| | | | | | | to just around the bare recv() call that gets a command from the client. The former placement in PostgresMain was unsafe because the intermediate processing layers (especially SSL) use facilities such as malloc that are not necessarily re-entrant. Per report from counterstorm.com.
* The no-lexer-backup speedup hadn't been there a week before somebodyTom Lane2005-06-02
| | | | broke it. Maybe we do need an automated check ...
* - Fixed memory leak in ecpglib by adding some missing free() commands.Michael Meskes2005-06-02
| | | | - Added patch by Gavin Scott <gavin@planetacetech.com> for Intel 64bit hardware.
* Change CRCs in WAL records from 64bit to 32bit for performance reasons.Tom Lane2005-06-02
| | | | | | | | | | | | Instead of a separate CRC on each backup block, include backup blocks in their parent WAL record's CRC; this is important to ensure that the backup block really goes with the WAL record, ie there was not a page tear right at the start of the backup block. Implement a simple form of compression of backup blocks: drop any run of zeroes starting at pd_lower, so as not to store the unused 'hole' that commonly exists in PG heap and index pages. Tweak PageRepairFragmentation and related routines to ensure they keep the unused space zeroed, so that the above compression method remains effective. All per recent discussions.
* Completed:Bruce Momjian2005-06-02
| | | | | < o Allow COPY to understand \x as a hex byte > o -Allow COPY to understand \x as a hex byte
* Add support for \x hex strings in psql variables.Bruce Momjian2005-06-02
|
* Add support for \x hex escapes in backend strings. Octal was alreadyBruce Momjian2005-06-02
| | | | supported. This follows the C standard escapes.
* Add support for \x hex escapes in COPY.Bruce Momjian2005-06-02
| | | | Sergey Ten
* Fix log_statement to properly recognize SELECT INTO and CREATE TABLE ASBruce Momjian2005-06-01
| | | | | | | | and DDL statements. Backpatch fix to 8.0.X. Per report from Murthy Kambhampaty
* patternsel() was improperly stripping RelabelType from the derivedTom Lane2005-06-01
| | | | | | expressions it constructed, causing scalarineqsel to become confused if the underlying variable was of a domain type. Per report from Kevin Grittner.
* Prevent to divide by zero and range out of 0..1Teodor Sigaev2005-06-01
|
* Add test to WAL replay to verify that xl_prev points back to the previousTom Lane2005-05-31
| | | | | WAL record; this is necessary to be sure we recognize stale WAL records when a WAL page was only partially written during a system crash.
* Tab cleanup for SGML.Bruce Momjian2005-05-31
| | | | Robert Treat
* Fix information_schema for OUT and INOUT parameters.Tom Lane2005-05-31
|
* Teach ruleutils to drill down into RECORD-type Vars in the same wayTom Lane2005-05-31
| | | | | that the parser now can, so that it can reverse-list cases involving FieldSelect from a RECORD Var.
* ParseComplexProjection should make use of expandRecordVariable so thatTom Lane2005-05-31
| | | | | it can handle cases like (foo.x).y where foo is a subquery and x is a function-returning-RECORD RTE in that subquery.
* Change relblocknumber field of pg_buffercache view from numeric to int8Tom Lane2005-05-31
| | | | for efficiency's sake. Mark Kirkwood.
* Document get_call_result_type() and friends; mark TypeGetTupleDesc()Tom Lane2005-05-30
| | | | | | and RelationNameGetTupleDesc() as deprecated; remove uses of the latter in the contrib library. Along the way, clean up crosstab() code and documentation a little.
* Move to ALTER section:Bruce Momjian2005-05-30
| | | | | | | | | < * Prevent child tables from altering constraints like CHECK that were < inherited from the parent table 470a469,471 > > o Prevent child tables from altering constraints like CHECK that were > inherited from the parent table
* Add:Bruce Momjian2005-05-30
| | | | | > * Prevent child tables from altering constraints like CHECK that were > inherited from the parent table
* Add support for NUMERIC ^ NUMERIC based on power(numeric, numeric).Bruce Momjian2005-05-30
|
* Wording improvement (may -> can)Bruce Momjian2005-05-30
|
* Add support for FUNCTION RTEs to build_physical_tlist(), so that theTom Lane2005-05-30
| | | | | physical-tlist optimization can be applied to FunctionScan nodes as well as regular tables and SubqueryScans.
* Support only octal for psql PROMPT values, rather than the confusingBruce Momjian2005-05-30
| | | | | | hex/decimal/octal. Documentation already updated. BACKWARD COMPATIBLE CHANGE
* Use {xqoctesc} lex macro now that \ddd is standard.Bruce Momjian2005-05-30
|
* Update psql docs for recent octal-only string behavior.Bruce Momjian2005-05-30
|
* Have psql escape bytes in strings for variables follow the backendBruce Momjian2005-05-30
| | | | | | | | | | | | | | | | | conventions of only allowing octal, like \045. Remove support for \decimal, \0octal, and \0xhex which matches the strtol() function but didn't make sense with backslashes. These now return the same character: test=> \set x '\54' test=> \echo :x , test=> \set x '\054' test=> \echo :x , THIS IS A BACKWARD COMPATIBILITY CHANGE.
* Add missing <P>.Bruce Momjian2005-05-30
|
* When enqueueing after-row triggers for updates of a table with a foreignNeil Conway2005-05-30
| | | | | | | | | | | | key, compare the new and old row versions. If the foreign key column has not changed, we needn't enqueue the trigger, since the update cannot violate the foreign key. This optimization was previously applied in the RI trigger function, but it is more efficient to avoid firing the trigger altogether. Per recent discussion on pgsql-hackers. Also add a regression test for some unintuitive foreign key behavior, and refactor some code that deals with the OIDs of the various RI trigger functions.
* Create separate ON INSERT and ON UPDATE triggers on tables with foreignNeil Conway2005-05-30
| | | | | | | | | | keys, rather than a single trigger for both events. This should not change functionality, but it is more consistent: previously, there were trigger functions for both "check_insert" and "check_update", but the former was used for both events. Bump catalog version number (not strictly necessary, but best to be cautious).
* Fix longstanding oversight in ruleutils.c: it doesn't regurgitateTom Lane2005-05-30
| | | | a FOR UPDATE clause, if one is present.
* Change the UNKNOWN type to have an internal representation matchingTom Lane2005-05-30
| | | | | cstring, rather than text, so as to eliminate useless conversions inside the parser. Per recent discussion.
* Skip eval_const_expressions when the query is such that the expressionTom Lane2005-05-30
| | | | | | would be evaluated only once anyway (ie, it's just a SELECT with no FROM or an INSERT ... VALUES). The planner can't do it any faster than the executor, so no point in an extra copying of the expression tree.
* Avoid unnecessary fetch from pg_shadow in the normal case inTom Lane2005-05-29
| | | | | | pg_class_aclmask(). We only need to do this when we have to check pg_shadow.usecatupd, and that's not relevant unless the target table is a system catalog. So we can usually avoid one syscache lookup.
* Improve LockAcquire API per my recent proposal. All error conditionsTom Lane2005-05-29
| | | | | | | | are now reported via elog, eliminating the need to test the result code at most call sites. Make it possible for the caller to distinguish a freshly acquired lock from one already held in the current transaction. Use that capability to avoid redundant AcceptInvalidationMessages() calls in LockRelation().
* Make superuser.c maintain a simple one-entry cache holding the superuserTom Lane2005-05-29
| | | | | | status of the most recently queried userid. Since the common pattern is many successive queries about the same user (ie, the current user) this can save a lot of syscache probes.
* Marginal hack to save a little bit of time in bpcharin() when typmod is -1,Tom Lane2005-05-29
| | | | which is a common case.
* Avoid unnecessary call of rangeTableEntry_used() for the result relationTom Lane2005-05-29
| | | | of a query.
* Remove typeidIsValid() checks in can_coerce_type(). These checksTom Lane2005-05-29
| | | | | | | | were pretty expensive and I believe the case they were put in to defend against can no longer arise, now that we have dependency checks to prevent deletion of a type entry that is still referenced. Certainly the example given in the CVS log entry can't happen anymore. Since this was the only use of typeidIsValid(), remove the routine too.
* expandRTE and get_rte_attribute_type mistakenly always imputed typmod -1Tom Lane2005-05-29
| | | | | | to columns of an RTE that was a function returning RECORD with a column definition list. Apparently no one has tried to use non-default typmod with a function returning RECORD before.
* Modify hash_search() API to prevent future occurrences of the errorTom Lane2005-05-29
| | | | | | | | | | | | | spotted by Qingqing Zhou. The HASH_ENTER action now automatically fails with elog(ERROR) on out-of-memory --- which incidentally lets us eliminate duplicate error checks in quite a bunch of places. If you really need the old return-NULL-on-out-of-memory behavior, you can ask for HASH_ENTER_NULL. But there is now an Assert in that path checking that you aren't hoping to get that behavior in a palloc-based hash table. Along the way, remove the old HASH_FIND_SAVE/HASH_REMOVE_SAVED actions, which were not being used anywhere anymore, and were surely too ugly and unsafe to want to see revived again.
* Add reference to libpq environment variables for client applications.Bruce Momjian2005-05-29
|
* Bgwriter should PANIC if it runs out of memory for pending-fsyncsTom Lane2005-05-28
| | | | | | hash table. This is a pretty unlikely scenario, since the table should be tiny, but we can't guarantee continued correct operation if it does occur. Spotted by Qingqing Zhou.