| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
| |
pointed out by Barry Lind: UPDATE bigintcol = 10000000000 fails because
the constant is initially taken as float8. We really need a better way,
but it's not gonna happen for 7.3.
Also, remove int4reltime() function, which is redundant with the
existing binary-compatibility coercion path from int4 to reltime,
and probably has been unreachable code for a long while.
|
|
|
|
|
|
|
|
|
| |
type for runtime constraint checks, instead of misusing the parse-time
Constraint node for the purpose. Fix some damage introduced into type
coercion logic; in particular ensure that a coerced expression tree will
read out the correct result type when inspected (patch had broken some
RelabelType cases). Enforce domain NOT NULL constraints against columns
that are omitted from an INSERT.
|
| |
|
|
|
|
|
|
| |
you try to use the tupdesc to build a tuple.
Joe Conway
|
|
|
|
|
|
|
|
| |
available (else there's no way to interpret the list links). Change
pg_locks view to show transaction ID locks separately from ordinary
relation locks. Avoid showing N duplicate rows when the same lock is
held multiple times (seems unlikely that users care about exact hold
count). Improve documentation.
|
|
|
|
|
|
| |
functions, per suggestion from John Gray and Joe Conway. Also, fix
plpgsql RETURN NEXT to verify that returned values match the expected
tupdesc.
|
|
|
|
|
|
|
|
|
| |
to false provides more SQL-spec-compliant behavior than we had before.
I am not sure that setting it false is actually a good idea yet; there
is a lot of client-side code that will probably be broken by turning
autocommit off. But it's a start.
Loosely based on a patch by David Van Wie.
|
| |
|
|
|
|
|
|
| |
column additions, deletions, and renames that would let a child table
get out of sync with its parent. Patch by Alvaro Herrera, with some
kibitzing by Tom Lane.
|
|
|
|
|
| |
* Remove wal_files postgresql.conf option because WAL files are
now recycled
|
|
|
|
| |
Improve wording of pre-7.3 syntax mention.
|
|
|
|
| |
which is now required.
|
|
|
|
|
| |
that the functionality is available to anyone via ReturnSetInfo, rather
than hard-wiring it to PL/pgSQL.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Upon invoking a polygon(integer, circle) function a
> src/backend/utils/adt/geo_ops.c:circle_poly() function will gets
> called, which suffers from a buffer overflow.
>
> 2) A src/backend/adt/utils/geo_ops.c:path_encode() fails to detect a
> buffer overrun condition. It is called in multiple places, the most
> interesting are path_out() and poly_out() functions.
> 5) A src/backend/utils/adt/geo_ops.c:path_add() also fails to detect
> a simple buffer overrun.
I've attached a patch which should fix these problems.
Neil Conway
|
|
|
|
|
|
| |
memory.
Neil Conway
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
connections by the superuser only.
This patch replaces the last patch I sent a couple of days ago.
It closes a connection that has not been authorised by a superuser if it would
leave less than the GUC variable ReservedBackends
(superuser_reserved_connections in postgres.conf) backend process slots free
in the SISeg. This differs to the first patch which only reserved the last
ReservedBackends slots in the procState array. This has made the free slot
test more expensive due to the use of a lock.
After thinking about a comment on the first patch I've also made it a fatal
error if the number of reserved slots is not less than the maximum number of
connections.
Nigel J. Andrews
|
|
|
|
|
|
|
| |
to the table function, thus preventing memory leakage accumulation across
calls. This means that SRFs need to be careful to distinguish permanent
and local storage; adjust code and documentation accordingly. Patch by
Joe Conway, very minor tweaks by Tom Lane.
|
|
|
|
| |
Per pghackers discussion from back around 1-August.
|
|
|
|
|
| |
tables that need special defenses. I believe this is okay even for
TOAST tables that belong to system tables.
|
| |
|
|
|
|
| |
pghackers discussion around 31-Jul-02.
|
|
|
|
|
|
| |
ERROR: Cannot display a value of type RECORD
rather than a random integer when someone tries to SELECT a tuple
value. Per pghackers discussion around 26-May-02.
|
|
|
|
| |
This breaks support for 6.2 or older client libraries.
|
|
|
|
| |
defined in the FROM clause. From Joe Conway, with some tweaks.
|
|
|
|
|
| |
types, SRFs. Not happy with memory management yet, but I'll commit these
other changes.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
when it finds an existing relation with the same name as the
to-be-created index.
Old error message:
nconway=# create table foo (a int);
CREATE TABLE
nconway=# create index foo on foo (a);
ERROR: index named "foo" already exists
I replaced 'index' with 'relation' in the error message.
Neil Conway
|
|
|
|
|
|
|
|
|
|
|
| |
should be pretty safe in practice, but it's probably better to be safe
than sorry.
I was actually looking for cases where NAMEDATALEN is assumed to be
32, but only found one. That's fixed too, as well as a few bits of
code cleanup.
Neil Conway
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CVS HEAD):
Amended "strings" regression test. TOAST tests now insert two values
with storage set to "external", to exercise properly the TOAST slice
routines which fetch only a subset of the chunks.
Changed now-misleading comment on AlterTableCreateToastTable in
tablecmds.c, because both columns of the index on a toast table are now
used.
John Gray
|
|
|
|
| |
a more logical ordering.
|
| |
|
| |
|
|
|
|
|
|
| |
(using an elog(LOG) ), as well as includes a few more comment fixes.
Neil Conway
|
| |
|
| |
|
|
|
|
| |
from Tom Lane.
|
|
|
|
|
|
|
|
| |
anonymous return type SRF code. It gets rid of the superflous
'pg_locks_result' that Bruce/Tom had commented on. Otherwise, no
changes in functionality.
Neil Conway
|
|
|
|
|
|
|
|
| |
copying into a fixed-size buffer (in this case, a buffer of
NAMEDATALEN bytes). AFAICT nothing to worry about here, but worth
fixing anyway...
Neil Conway
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bit on the indexes.
I also attach clusterdb and clusterdb.sgml; both of them are blatant
rips of vacuumdb and vacuumdb.sgml, but get the job done. Please review
them, as I'm probably making a lot of mistakes with SGML and I can't
compile it here.
vacuumdb itself is not very comfortable to use when the databases have
passwords, because it has to connect once for each table (I can probably
make it connect only once for each database; should I?). Because of
this I added a mention of PGPASSWORDFILE in the documentation, but I
don't know if that is the correct place for that.
Alvaro Herrera
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
that ANALYZE would not gather any stats for a CHAR(255) column. I still
think a width threshold is appropriate for the reasons mentioned in the
code, but we can loosen it at least.
|
|
|
|
|
|
|
|
|
|
| |
array header, and to compute sizing and alignment of array elements
the same way normal tuple access operations do --- viz, using the
tupmacs.h macros att_addlength and att_align. This makes the world
safe for arrays of cstrings or intervals, and should make it much
easier to write array-type-polymorphic functions; as examples see
the cleanups of array_out and contrib/array_iterator. By Joe Conway
and Tom Lane.
|