summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2002-09-23Further thinking about heap_mark4update: in HeapTupleSelfUpdated case,Tom Lane
executor should not return the tuple as successfully marked, because in fact it's been deleted. Not clear that this case has ever been seen in practice (I think you'd have to write a SELECT FOR UPDATE that calls a function that deletes some row the SELECT will visit later...) but we should be consistent. Also add comments to several other places that got it right but didn't explain what they were doing.
2002-09-23Move PyGreSQL usage documentation from README into DocBook. Some otherPeter Eisentraut
editing.
2002-09-23Disallow VACUUM, ANALYZE, TRUNCATE on temp tables belonging to otherTom Lane
backends. Given that temp tables now store data locally in the local buffer manager, these things are not going to work safely.
2002-09-23Obviously noone has ever tested the doubling of availiable result idsBruce Momjian
up to reaching the hard limit. After opening 16(=current REST_START value) results via pg_exec, the next pg_exec tries to find an empty slot forever :-( . In PgSetResultId file pgtclId.c in the for loop there has to be done a break, if res_max ist reached. The piece of code should look like if (resid == connid->res_max) { resid = 0; break; /* the break as to be added */ } now everything works (double available results after reaching RES_START up to reaching RES_HARD_MAX) Gerhard Hintermayer
2002-09-23Get rid of bogus use of heap_mark4update in reindex operations (cf.Tom Lane
recent bug report). Fix processing of nailed-in-cache indexes; it appears that REINDEX DATABASE has been broken for months :-(.
2002-09-22In UpdateStats(), don't bother to update the pg_class row if it alreadyTom Lane
contains the correct statistics. This is a partial solution for the problem of allowing concurrent CREATE INDEX commands: unless they commit at nearly the same instant, the second one will see the first one's pg_class updates as committed, and won't try to update again, thus avoiding the 'tuple concurrently updated' failure.
2002-09-22Remove commas for compatibility with newer releases of bison.Tom Lane
2002-09-22Remove commas for compatibility with newer bisons.Tom Lane
2002-09-22Remove commas from %type and %token lists, for compatibility with newerTom Lane
versions of bison.
2002-09-22Translation updates, some messages tweaked.Peter Eisentraut
2002-09-22RelationClearRelation must reset rd_targblock and update rd_nblocksTom Lane
even when dealing with a nailed-in-cache relation; otherwise, following VACUUM truncation of a system catalog, other backends might have unreasonably large values of these fields.
2002-09-22Make \dS work more like it used to, viz, show only system objects.Tom Lane
2002-09-22server_min_messages and friends should have valid values at bootup.Tom Lane
2002-09-22Replace pg_attribute.attisinherited with attislocal and attinhcountTom Lane
columns, to allow more correct behavior in multiple-inheritance cases. Patch by Alvaro Herrera, review by Tom Lane.
2002-09-22Bring SIMILAR TO and SUBSTRING into some semblance of conformance withTom Lane
the SQL99 standard. (I'm not sure that the character-class features are quite right, but that can be fixed later.) Document SQL99 and POSIX regexps as being different features; provide variants of SUBSTRING for each.
2002-09-22Move most of the error checking for foreign-key constraints out ofTom Lane
parse analysis and into the execution code (in tablecmds.c). This eliminates a lot of unreasonably complex code that needed to have two or more execution paths in case it was dealing with a not-yet-created table column vs. an already-existing one. The execution code is always dealing with already-created tables and so needs only one case. This also eliminates some potential race conditions (the table wasn't locked between parse analysis and execution), makes it easy to fix the gripe about wrong referenced-column names generating a misleading error message, and lets us easily add a dependency from the foreign-key constraint to the unique index that it requires the referenced table to have. (Cf. complaint from Kris Jurka 12-Sep-2002 on pgsql-bugs.) Also, third try at building a deletion mechanism that is not sensitive to the order in which pg_depend entries are visited. Adding the above- mentioned dependency exposed the folly of what dependency.c had been doing: it failed for cases where B depends on C while both auto-depend on A. Dropping A should succeed in this case, but was failing if C happened to be visited before B. It appears the only solution is two separate walks over the dependency tree.
2002-09-21Add last-ditch defense against attempts to compile datetime code withTom Lane
-ffast-math.
2002-09-21Provide an upgrade strategy for dump files containing functions declaredTom Lane
with OPAQUE. CREATE LANGUAGE, CREATE TRIGGER, and CREATE TYPE will all accept references to functions declared with OPAQUE --- but they will issue a NOTICE, and will modify the function entries in pg_proc to have the preferred type-safe argument or result types instead of OPAQUE. Per recent pghackers discussions.
2002-09-21Fix PPC s_lock operations to work correctly on multi-CPU machines.Tom Lane
Need 'isync' during TAS and 'sync' during S_UNLOCK.
2002-09-20Performance improvement for MultiRecordFreeSpace on large relations ---Tom Lane
avoid O(N^2) behavior. Problem noted and fixed by Stephen Marshall <smarshall@wsicorp.com>, with some help from Tom Lane.
2002-09-20Code review for check-domain-constraints-in-COPY patch. Do correct thingTom Lane
when default expression for a domain is being used. Avoid repetitive catalog lookups.
2002-09-20Update regression expected results for to_char() change.Tom Lane
2002-09-20Change domain patch to COERCE_IMPLICIT_CAST, per Tom.Bruce Momjian
2002-09-20Fix compile error from Rod's patch.Bruce Momjian
2002-09-20The patch fix bug described in TODO:Bruce Momjian
* to_char(0,'FM999.99') returns a period, to_char(1,'FM999.99') does not Karel Zak
2002-09-20Tom Lane wrote:Bruce Momjian
> I see in your recent bytea-LIKE patch > > if (datatype != BYTEAOID && pg_database_encoding_max_length() > 1) > len = pg_mbcliplen((const unsigned char *) workstr, len, len - 1); > else > len -= -1; > > Surely there's one too many minus signs in that last? Joe Conway
2002-09-20This patch cleans up some of the code in src/util/adt/formatting.c,Bruce Momjian
fixes a few minor bugs (typos, potential buffer overruns, etc.), and fixes some spelling/grammar mistakes. Neil Conway
2002-09-20This patch fixes two typos in src/backend/storage/ipc/README.Bruce Momjian
Neil Conway
2002-09-20Fixed this problem and added regression tests in domain.sql.Bruce Momjian
Also: - Changed header file order (alphabetical) - Changed to m = attnum - 1 in binary copy code for consistency Rod Taylor
2002-09-20> I'm not sure why NDirectFileRead/NDirectFileWrite are unused at theBruce Momjian
> moment, but they used to be used; I think the correct response is to > put back the missing counter increments, not rip out the counters. Ok, fair enough. It's worth noting that they've been broken for a while -- for example, the HashJoin counter increments were broken when you comitted r1.20 of executor/nodeHashJoin.c in May of '99. I've attached a revised patch that doesn't remove the counters (but doesn't increment them either: I'm not sure of all the places where the counter should be incremented). Neil Conway
2002-09-19Tweak heap.c to refuse attempts to create table columns of standaloneTom Lane
composite types. Add a couple more lsyscache.c routines to support this, and make use of them in some other places that were doing lookups the hard way.
2002-09-19Department of second thoughts: suppressing implicit casts everywhere inTom Lane
ruleutils display is not such a great idea. For arguments of functions and operators I think we'd better keep the historical behavior of showing such casts explicitly, to ensure that the function/operator is reparsed the same way when the rule is reloaded. This also makes the output of EXPLAIN less obscurantist about exactly what's happening.
2002-09-18Extend pg_cast castimplicit column to a three-way value; this allows usTom Lane
to be flexible about assignment casts without introducing ambiguity in operator/function resolution. Introduce a well-defined promotion hierarchy for numeric datatypes (int2->int4->int8->numeric->float4->float8). Change make_const to initially label numeric literals as int4, int8, or numeric (never float8 anymore). Explicitly mark Func and RelabelType nodes to indicate whether they came from a function call, explicit cast, or implicit cast; use this to do reverse-listing more accurately and without so many heuristics. Explicit casts to char, varchar, bit, varbit will truncate or pad without raising an error (the pre-7.2 behavior), while assigning to a column without any explicit cast will still raise an error for wrong-length data like 7.3. This more nearly follows the SQL spec than 7.2 behavior (we should be reporting a 'completion condition' in the explicit-cast cases, but we have no mechanism for that, so just do silent truncation). Fix some problems with enforcement of typmod for array elements; it didn't work at all in 'UPDATE ... SET array[n] = foo', for example. Provide a generalized array_length_coerce() function to replace the specialized per-array-type functions that used to be needed (and were missing for NUMERIC as well as all the datetime types). Add missing conversions int8<->float4, text<->numeric, oid<->int8. initdb forced.
2002-09-18Fix bug in encoding conversion map.Tatsuo Ishii
2002-09-18Update Japanese README so that it reflects the changes made to theTatsuo Ishii
conversion function interface.
2002-09-17Remove src/test/regress/sql: plpgsql-nsp-testing.sql per Joe Conway.Bruce Momjian
2002-09-17Un-break duplicate_oids script.Tom Lane
2002-09-16Remove retest Makefile entry because it does not compile.Bruce Momjian
2002-09-16Fix for rare race-condition-like failure: if a backend receives SIGUSR2Tom Lane
(notify/SI-overrun interrupt) while it is in process of doing proc_exit, it is possible for Async_NotifyHandler() to try to start a transaction when one is already running. This leads to Asserts() or worse. I think it may only be possible to occur when frontend synchronization is lost (ie, the elog(FATAL) in SocketBackend() fires), but that is a standard occurrence after error during COPY. In any case, I have seen this failure occur during regression tests, so it is definitely possible.
2002-09-15Cast functions can be immutable or stable.Peter Eisentraut
2002-09-14Update obsolete comment.Tom Lane
2002-09-14Cosmetic fixes from Neil Conway.Tom Lane
2002-09-14Avoid overflow for large elapsed times in \timing output. PerTom Lane
Kenji Sugita.
2002-09-14Shrink the pg_hba.conf and pg_ident.conf default files and move most of thePeter Eisentraut
inline documentation to the main docs.
2002-09-14Translation updatesPeter Eisentraut
2002-09-14Added regression test for using server side prepared statements in jdbcBarry Lind
and fixed a bug found by the regression test Modified Files: jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java jdbc/org/postgresql/test/jdbc2/Jdbc2TestSuite.java Added Files: jdbc/org/postgresql/test/jdbc2/ServerPreparedStmtTest.java
2002-09-13Change Assert(len > 0) to Assert(len >= 0)Tatsuo Ishii
Change PG_RETURN_INT32(0) to PG_RETURN_VOID()
2002-09-12Fix likely cause of rare ALTER TABLE ADD FOREIGN KEY failures ---Tom Lane
don't assume relname field of a relcache entry will stay valid across lots of operations.
2002-09-12Avoid misleading error message when SET/RESET target variable nameTom Lane
doesn't match any known variable.
2002-09-12The small context diff below corrects what seems to be an oversight inBruce Momjian
fmgr.h - it's discouraged to access fcinfo directly but there is no macro to get the number of arguments passed to the function. Checking the number of arguments is often useful when you have a function which can be called like: func('arg'); func(null); func(); all mapping to the same C function. the macro has a function-like appearance to match the other PG_* macros. Lee Kindness.