aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils
Commit message (Collapse)AuthorAge
* Avoid multiple scans of utils/mb/conversion_procs/ subdirectories duringTom Lane2002-09-04
| | | | | | | 'make install'; there are enough of 'em that this slowed down the make noticeably. Ensure that 'all' is the default make target in all these directories (defaulting to 'make install' is surprising and dangerous IMHO). Fix a couple small typos.
* Refrect the changes to src/test/regress/sql/conversion.sql By Tom.Tatsuo Ishii2002-09-04
|
* EXTRACT(EPOCH FROM timestamp) gave wrong answers in the int64-timestampTom Lane2002-09-03
| | | | | case for timestamptz input, and differently wrong answers in the float- timestamp case for timestamp input.
* Arrange for the default permissions on a database to allow temp tableTom Lane2002-09-03
| | | | | | | creation to world, but disallow temp table creation in template1. Per latest round of pghackers discussion. I did not force initdb, but the permissions lockdown on template1 will not take effect unless you do one (or manually REVOKE TEMP ON DATABASE template1 FROM public).
* Remove all traces of multibyte and locale options. Clean up commentsPeter Eisentraut2002-09-03
| | | | referring to "multibyte" where it really means character encoding.
* Work around mktime() brain damage in recent versions of glibc by usingTom Lane2002-09-03
| | | | | | | a series of localtime() calls to determine the local timezone offset when mktime() fails. This eliminates regression failures on RHL 7.3, and should continue to work until it occurs to the glibc boys to break localtime() as well. By then I hope we'll have our own timezone code...
* Eliminate unnecessary dependency on mktime(), and consequent 'Unable toTom Lane2002-09-03
| | | | convert date to tm' failures, by using DetermineLocalTimeZone() instead.
* > Okay. When you get back to the original issue, the gold is hidden inBruce Momjian2002-09-02
| | | | | | | | | | | | > src/backend/optimizer/path/indxpath.c; see the "special indexable > operators" stuff near the bottom of that file. (It's a bit of a crock > that this code is hardwired there, and not somehow accessed through a > system catalog, but it's what we've got at the moment.) The attached patch re-enables a bytea right hand argument (as compared to a text right hand argument), and enables index usage, for bytea LIKE Joe Conway
* I checked all the previous string handling errors and most of them wereBruce Momjian2002-09-02
| | | | | | | | | | | | | | | already fixed by You. However there were a few left and attached patch should fix the rest of them. I used StringInfo only in 2 places and both of them are inside debug ifdefs. Only performance penalty will come from using strlen() like all the other code does. I also modified some of the already patched parts by changing snprintf(buf, 2 * BUFSIZE, ... style lines to snprintf(buf, sizeof(buf), ... where buf is an array. Jukka Holappa
* Add GUC variable to print original query to the server logs when thereBruce Momjian2002-09-02
| | | | | | is an error, warning, etc. Gavin Sherry
* Remove sys/types.h in files that include postgres.h, and hence c.h,Bruce Momjian2002-09-02
| | | | because c.h has sys/types.h.
* Code review for HeapTupleHeader changes. Add version number to page headersTom Lane2002-09-02
| | | | | | | | | | (overlaying low byte of page size) and add HEAP_HASOID bit to t_infomask, per earlier discussion. Simplify scheme for overlaying fields in tuple header (no need for cmax to live in more than one place). Don't try to clear infomask status bits in tqual.c --- not safe to do it there. Don't try to force output table of a SELECT INTO to have OIDs, either. Get rid of unnecessarily complex three-state scheme for TupleDesc.tdhasoids, which has already caused one recent failure. Improve documentation.
* Add log_duration to GUC/postgresql.conf.Bruce Momjian2002-09-01
| | | | | Rename debug_print_query to log_statement and rename show_query_stats to show_statement_stats.
* Mark the float8 -> int8 cast as implicit. This resolves the problemTom Lane2002-09-01
| | | | | | | | | | 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.
* Code review for domain-constraints patch. Use a new ConstraintTest nodeTom Lane2002-08-31
| | | | | | | | | 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.
* Code review for pg_locks feature. Make shmemoffset of PROCLOCK structsTom Lane2002-08-31
| | | | | | | | 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.
* Add expected tuple descriptor to ReturnSetInfo information for tableTom Lane2002-08-30
| | | | | | functions, per suggestion from John Gray and Joe Conway. Also, fix plpgsql RETURN NEXT to verify that returned values match the expected tupdesc.
* AUTOCOMMIT mode is now an available backend GUC variable; setting itTom Lane2002-08-30
| | | | | | | | | 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.
* Fix for breakage of C-coded SRFs, from Joe Conway.Tom Lane2002-08-30
|
* Complete TODO item:Bruce Momjian2002-08-30
| | | | | * Remove wal_files postgresql.conf option because WAL files are now recycled
* PL/pgSQL functions can return sets. Neil Conway's patch, modified soTom Lane2002-08-30
| | | | | that the functionality is available to anyone via ReturnSetInfo, rather than hard-wiring it to PL/pgSQL.
* Sir Mordred The Traitor <mordred@s-mail.com> writes:Bruce Momjian2002-08-29
| | | | | | | | | | | | | | | | | > 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
* This patch reserves the last superuser_reserved_connections slots forBruce Momjian2002-08-29
| | | | | | | | | | | | | | | | | | | 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
* Adjust nodeFunctionscan.c to reset transient memory context between callsTom Lane2002-08-29
| | | | | | | 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.
* Remove #ifdef MULTIBYTE per hackers list discussion.Tatsuo Ishii2002-08-29
|
* Fix ruleutils to dump column definition lists for anonymous record typesTom Lane2002-08-29
| | | | defined in the FROM clause. From Joe Conway, with some tweaks.
* Code review for standalone composite types, query-specified compositeTom Lane2002-08-29
| | | | | types, SRFs. Not happy with memory management yet, but I'll commit these other changes.
* backend where a statically sized buffer is written to. Most of theseBruce Momjian2002-08-28
| | | | | | | | | | | 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
* Bring comments back in sync with code.Tom Lane2002-08-27
|
* Throw error on pg_atoi(''), regression adjustments.Bruce Momjian2002-08-27
|
* Add fsm sizes.Bruce Momjian2002-08-27
|
* This patch updates the lock listing code to use Joe Conway's newBruce Momjian2002-08-27
| | | | | | | | 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
* This patches replaces a few more usages of strcpy() and sprintf() whenBruce Momjian2002-08-27
| | | | | | | | 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
* Add to skip list in check_gucBruce Momjian2002-08-27
|
* Comment cleanup.Bruce Momjian2002-08-27
|
* Script cleanups.Bruce Momjian2002-08-27
|
* Clean up script.Bruce Momjian2002-08-27
|
* Add check_guc utility to compare guc.c and postgresql.conf.sample.Bruce Momjian2002-08-27
|
* Fix units in postgresql.conf.Bruce Momjian2002-08-27
|
* Add units to postgresql.conf file.Bruce Momjian2002-08-26
|
* Modify array operations to include array's element type OID in theTom Lane2002-08-26
| | | | | | | | | | 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.
* The cstring datatype can now be copied, passed around, etc. The typlenTom Lane2002-08-24
| | | | | | | value '-2' is used to indicate a variable-width type whose width is computed as strlen(datum)+1. Everything that looks at typlen is updated except for array support, which Joe Conway is working on; at the moment it wouldn't work to try to create an array of cstring.
* Commit updated repeat() patch, from Neil ConwayBruce Momjian2002-08-22
|
* This patch should fix the problem. Doesn't include my previous patchBruce Momjian2002-08-22
| | | | | | | | | | | | | | | for repeat(). Again, somewhat off-the-cuff, so I might have missed something... test=# select lpad('xxxxx',1431655765,'yyyyyyyyyyyyyyyy'); ERROR: Requested length too large test=# select rpad('xxxxx',1431655765,'yyyyyyyyyyyyyyyy'); ERROR: Requested length too large (That's on a Unicode DB, haven't tested other encodings but AFAICT this fix should still work.) Neil Conway
* repeat() fix:Bruce Momjian2002-08-22
| | | | | | | | | | | | | | | | > Neil Conway <neilc@samurai.com> writes: > > + /* Check for integer overflow */ > > + if (tlen / slen != count) > > + elog(ERROR, "Requested buffer is too large."); > > What about slen == 0? Good point -- that wouldn't cause incorrect results or a security problem, but it would reject input that we should really accept. Revised patch is attached. Neil Conway
* As suggested by Tom, this patch restricts the right-hand argument ofBruce Momjian2002-08-22
| | | | | | | | | | | bytealike to TEXT. This leaves like_escape_bytea() without anything to do, but I left it in place in anticipation of the eventual bytea pattern selectivity functions. If there is agreement that this would be the best long term solution, I'll take it as a TODO for 7.4. Joe Conway
* Add:Bruce Momjian2002-08-22
| | | | | | | | | | | replace(string, from, to) -- replaces all occurrences of "from" in "string" to "to" split(string, fldsep, column) -- splits "string" on "fldsep" and returns "column" number piece to_hex(int32_num) & to_hex(int64_num) -- takes integer number and returns as hex string Joe Conway
* Remove erroneous character from Makefile due to editor error.Bruce Momjian2002-08-22
|
* Add a bunch of pseudo-types to replace the behavior formerly associatedTom Lane2002-08-22
| | | | | | with OPAQUE, as per recent pghackers discussion. I still want to do some more work on the 'cstring' pseudo-type, but I'm going to commit the bulk of the changes now before the tree starts shifting under me ...
* Changes made so new conversion Makefiles will build out of the source tree.Bruce Momjian2002-08-21
|