summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2003-08-23Fix uninstall target.Peter Eisentraut
2003-08-23Correct uninstall target.Peter Eisentraut
2003-08-22Tweak grammar to use FastAppend rather than lappend when constructingTom Lane
expr_lists. This appears to be the only remaining O(N^2) bottleneck in processing many-way 'x IN (a,b,c,...)' conditions.
2003-08-22Tweak processing of multiple-index-scan plans to reduce overhead whenTom Lane
handling many-way scans: instead of re-evaluating all prior indexscan quals to see if a tuple has been fetched more than once, use a hash table indexed by tuple CTID. But fall back to the old way if the hash table grows to exceed SortMem.
2003-08-20Translation updatesPeter Eisentraut
2003-08-19Improve dynahash.c's API so that caller can specify the comparison functionTom Lane
as well as the hash function (formerly the comparison function was hardwired as memcmp()). This makes it possible to eliminate the special-purpose hashtable management code in execGrouping.c in favor of using dynahash to manage tuple hashtables; which is a win because dynahash knows how to expand a hashtable when the original size estimate was too small, whereas the special-purpose code was too stupid to do that. (See recent gripe from Stephan Szabo about poor performance when hash table size estimate is way off.) Free side benefit: when using string_hash, the default comparison function is now strncmp() instead of memcmp(). This should eliminate some part of the overhead associated with larger NAMEDATALEN values.
2003-08-18When compiling a plpgsql trigger function, include the OID of the tableTom Lane
the trigger is attached to in the hashkey. This ensures that we will create separate compiled trees for each table the trigger is used with, avoiding possible datatype-mismatch problems if the tables have different rowtypes. This is essentially the same bug recently identified in plpython --- though plpgsql doesn't seem as prone to crash when the rowtype changes underneath it. But failing robustly is no substitute for just working.
2003-08-17Fix ARRAY[] construct so that in multidimensional case, elements canTom Lane
be anything yielding an array of the proper kind, not only sub-ARRAY[] constructs; do subscript checking at runtime not parse time. Also, adjust array_cat to make array || array comply with the SQL99 spec. Joe Conway
2003-08-17Clean up locktable init code per recent gripe from Kurt Roeckx.Tom Lane
No change in behavior, but old code would have failed to detect overrun of MAX_LOCKMODES.
2003-08-17Somebody forgot to include any actual documentation for ADD_MISSING_FROM.Tom Lane
2003-08-17Create a 'type cache' that keeps track of the data needed for any particularTom Lane
datatype by array_eq and array_cmp; use this to solve problems with memory leaks in array indexing support. The parser's equality_oper and ordering_oper routines also use the cache. Change the operator search algorithms to look for appropriate btree or hash index opclasses, instead of assuming operators named '<' or '=' have the right semantics. (ORDER BY ASC/DESC now also look at opclasses, instead of assuming '<' and '>' are the right things.) Add several more index opclasses so that there is no regression in functionality for base datatypes. initdb forced due to catalog additions.
2003-08-17(I always forget what the magic numbers 0 through 2 means for theBruce Momjian
"syslog" option.) By the way: The "virtual_host" parameter is a bad name for that particular option, I think. "Virtual host" signals that PostgreSQL will behave differently according to which IP address it's contacted (like Apache's virtual host support which makes the web-server serve different sites according to different criteria). A better word for the options would be "tcpip_listen_addr" or something like that. Troels Arvin
2003-08-17Not needed, already in CVS.Bruce Momjian
2003-08-16Add description of error style.Bruce Momjian
2003-08-16Make NEED_REENTRANT_FUNC_NAMES _require_ *_r functions, and add tests toBruce Momjian
configure to report if they are not found.
2003-08-15Updated the blob regression test to actually use the getBlob/getClob methodsBarry Lind
and test them, in addition to testing the underlying LargeObject API methods. Modified Files: jdbc/build.xml jdbc/org/postgresql/test/jdbc2/BlobTest.java
2003-08-15Fixed improper message length for the connection termination message 'X' whenBarry Lind
using the V3 protocol. Modified Files: jdbc1/AbstractJdbc1Connection.java
2003-08-15Rewrite array_cmp to not depend on deconstruct_array. Should be a littleTom Lane
faster, but more importantly does not leak memory. Still needs more work though, per my recent note to pgsql-hackers.
2003-08-14Adjustment for unixware threading.Bruce Momjian
2003-08-14Mark unixware as having threaded support.Bruce Momjian
2003-08-14Add missing quotes.Tom Lane
2003-08-14Someone moved PageOutput here from common.c, but forgot to move allTom Lane
the #includes it depends on.
2003-08-14Remove unnecessary #include's (see c.h).Tom Lane
2003-08-14Workaround for platforms that have getaddrinfo() without AI_NUMERICHOST.Tom Lane
We don't actually need the flag, so just #define it as zero in such cases.
2003-08-14Handle double-quotes correctly in user names in ACL lists.Tom Lane
Christopher Kings-Lynne
2003-08-14Document threading status.Bruce Momjian
Update to POSIX getpwuid_r() function.
2003-08-13Adjust for compiler options for compiler bug.Bruce Momjian
Larry Rosenman
2003-08-13libpq failed to cope with COPY FROM STDIN if the command was issuedTom Lane
via extended query protocol, because it sends Sync right after Execute without realizing that the command to be executed is COPY. There seems to be no reasonable way for it to realize that, either, so the best fix seems to be to make the backend ignore Sync during copy-in mode. Bit of a wart on the protocol, but little alternative. Also, libpq must send another Sync after terminating the COPY, if the command was issued via Execute.
2003-08-13Add PQexecPrepared() and PQsendQueryPrepared() functions, to allowTom Lane
libpq users to perform Bind/Execute of previously prepared statements. Per yesterday's discussion, this offers enough performance improvement to justify bending the 'no new features during beta' rule.
2003-08-13Move MemoryContextCheck() call from bottom of PostgresMain loop toTom Lane
just before CommitTransactionCommand(). This is a more sensible place to put it since commit discards a lot of contexts, and we'd not find out about stomps affecting only transaction-local contexts.
2003-08-13I'm quite fond of doing VPATH builds, i.e. building outside the sourceBruce Momjian
tree. This also catches lots of little Makefile bugs, so here's a small patch for one of them (replacing an explicit reference to thread.c with a reference to it as the first prerequsite of the rule makes make look for it in the place where it was found (the source tree) rather than in the build tree. (using GNU make 3.79.1) John Gray
2003-08-12Include 'IPv4', 'IPv6', or 'Unix' in socket-creation failure messages,Tom Lane
in hopes of soothing fears of those with partial IPv6 support. Still an open question whether we should report EAFNOSUPPORT errors at all, though.
2003-08-12Cope with NoData message from backend. Needed for case whereTom Lane
PQexecParams is used with a statement that doesn't return data.
2003-08-12Marginal hacks to move some processing out of the per-client-messageTom Lane
processing loop; avoids extra overhead when using parse/bind/execute messages instead of single Query message.
2003-08-12Change some frequently-reached elog(DEBUG...) calls to ereport(DEBUG...)Tom Lane
for speed reasons. (ereport falls out much more quickly when no output is needed than elog does.)
2003-08-12Avoid unnecessary work when stats collection is disabled. TightenTom Lane
search loop in pgstat_initstats. Per report from Gavin Sherry.
2003-08-11Applied patch from Oliver Jowett to clean up the jdbc regression test buildBarry Lind
Modified Files: jdbc/build.xml jdbc/org/postgresql/test/jdbc3/Jdbc3TestSuite.java
2003-08-11Rewriter and planner should use only resno, not resname, to identifyTom Lane
target columns in INSERT and UPDATE targetlists. Don't rely on resname to be accurate in ruleutils, either. This fixes bug reported by Donald Fraser, in which renaming a column referenced in a rule did not work very well.
2003-08-11Applied patch from Oliver Jowett to better handle invalid input for getArrayBarry Lind
(no longer throw an index out of range exception) Modified Files: jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSet.java
2003-08-11Applied patch from Oliver Jowett to clean up some aditional warning messagesBarry Lind
from ant. Modified Files: jdbc/build.xml
2003-08-11Applied patch from Oliver Jewett to fix a deprecation in newer versions of antBarry Lind
Modified Files: jdbc/build.xml
2003-08-11Applied patch from Oliver Jewett to clean up the testing README fileBarry Lind
Modified Files: jdbc/org/postgresql/test/README
2003-08-11Applied patch by Oliver Jowett to clean up some exception handlingBarry Lind
Modified Files: jdbc/org/postgresql/core/QueryExecutor.java jdbc/org/postgresql/util/PSQLException.java
2003-08-11Applied patch from Oliver Jowett to improve a buffer sizing.Barry Lind
Modified Files: jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
2003-08-11Applied patch from Kim Ho to fix a regression against a 7.4 server. The resultBarry Lind
of transaction isolation level changed from uppercase to lower case between 7.3 and 7.4. In testing, a regression was also fixed in this area when talking to a 7.2 server due to changes in how notice messages are processed in the current code. Modified Files: jdbc/build.xml jdbc/org/postgresql/core/BaseStatement.java jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java
2003-08-11Code cleanup inspired by recent resname bug report (doesn't fix the bugTom Lane
yet, though). Avoid using nth() to fetch tlist entries; provide a common routine get_tle_by_resno() to search a tlist for a particular resno. This replaces a couple uses of nth() and a dozen hand-coded search loops. Also, replace a few uses of nth(length-1, list) with llast().
2003-08-11Do not link in libwsock32 on non-win32 platforms. Improve grammarTom Lane
of thread-safety comments.
2003-08-11Translation updatesPeter Eisentraut
2003-08-10Repair potential deadlock created by recent changes to recycle btreeTom Lane
index pages: when _bt_getbuf asks the FSM for a free index page, it is possible (and, in some cases, even moderately likely) that the answer will be the same page that _bt_split is trying to split. _bt_getbuf already knew that the returned page might not be free, but it wasn't prepared for the possibility that even trying to lock the page could be problematic. Fix by doing a conditional rather than unconditional grab of the page lock.
2003-08-09I get the following warning when I compile src/bin/pg_id/pg_id.c:Bruce Momjian
gcc -pipe -g -Wall -Wmissing-prototypes -Wmissing-declarations -I../../../src/include -c -o pg_id.o pg_id.c -MMD pg_id.c: In function `main': pg_id.c:35: warning: unused variable `optarg' The attached trivial patch fixes the warning by removing the variable. Neil Conway