aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* I reconfirmed MS-VC6. Thank you for wonderful correspondence.Bruce Momjian2005-12-09
| | | | | | | | | However, Another problem newly occurred. This solves the problem of snprintf and vsnprintf. Patch to HEAD and 8.1.X. Hiroshi Saito
* Stamp libraries for 8.2 by updating minor library version numbers andBruce Momjian2005-12-09
| | | | Win32 library files.
* Simplify lock manager data structures by making a clear separation betweenTom Lane2005-12-09
| | | | | | | | | | | | the data defining the semantics of a lock method (ie, conflict resolution table and ancillary data, which is all constant) and the hash tables storing the current state. The only thing we give up by this is the ability to use separate hashtables for different lock methods, but there is no need for that anyway. Put some extra fields into the LockMethod definition structs to clean up some other uglinesses, like hard-wired tests for DEFAULT_LOCKMETHOD and USER_LOCKMETHOD. This commit doesn't do anything about the performance issues we were discussing, but it clears away some of the underbrush that's in the way of fixing that.
* > 1) I'm proposing a patch to do the DROP FUNCTION argument tab completion.Bruce Momjian2005-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | | > Now, the arguments of the drop function can be tab completed. for example > > drop function strpos ( > <press tab> > drop FUNCTION strpos (text, text) > > or: > > wsdb=# drop FUNCTION length ( > bit) bytea) character) lseg) path) text) > <press c> > wsdb# DROP FUNCTION length ( character) > > I think that this patch should be rather useful. At it least I hate > always to type all the arguments of the dropped functions. > > 2) Also some fixes applied for the > CREATE INDEX syntax > > now the parenthesises are inserted by tab pressing. > suppose I have the table q3c: Sergey E. Koposov
* Add missing translation markerPeter Eisentraut2005-12-08
|
* Fix bgwriter's failure to release buffer pins and open files after anTom Lane2005-12-08
| | | | | error. This probably explains bug #2099 and could also account for mysterious VACUUM hangups.
* Disble some Win32-specific code in win32-client-only builds:Bruce Momjian2005-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | | I have the problem, when building by MS-VC6. An error occurs in the 8.1.0 present source codes. nmake -f win32.mak ..\..\port\getaddrinfo.c(244) : error C2065: 'WSA_NOT_ENOUGH_MEMORY' ..\..\port\getaddrinfo.c(342) : error C2065: 'WSATYPE_NOT_FOUND' This is used by winsock2.h. However, Construction of a windows base is winsock.h. Then, Since MinGW has special environment, this is right. but, it is not found in VC6. Furthermore, in getaddrinfo.c, IPV6-API is used by LoadLibraryA("ws2_32"); Referring to of dll the external memory generates this violation by VC6 specification. I considered whether the whole should have been converted into winsock2. However, Now, DLL of MinGW creation operates wonderfully as it is. That's right, it has pliability by replacement of simple DLL. Then, I propose the system using winsock(non IPV6) in construction of VC6. Hiroshi Saito
* Fix thinko in comment.Tom Lane2005-12-08
|
* Push the responsibility for handling ignore_killed_tuples down intoTom Lane2005-12-07
| | | | | | _bt_checkkeys(), instead of checking it in the top-level nbtree.c routines as formerly. This saves a little bit of loop overhead, but more importantly it lets us skip performing the index key comparisons for dead tuples.
* A couple of tiny performance hacks in _bt_step(). Remove PageIsEmptyTom Lane2005-12-07
| | | | | | | | | checks, which were once needed because PageGetMaxOffsetNumber would fail on empty pages, but are now just redundant. Also, don't set up local variables that aren't needed in the fast path --- most of the time, we only need to advance offnum and not step across a page boundary. Motivated by noticing _bt_step at the top of OProfile profile for a pgbench run.
* Fix a couple of lingering references to POSTQUEL query syntax, per Simon.Tom Lane2005-12-07
|
* Spell "explicitly" correctly, per Simon.Tom Lane2005-12-07
|
* Get rid of slru.c's hardwired insistence on a fixed number of slots perTom Lane2005-12-06
| | | | | | | | | SLRU area. The number of slots is still a compile-time constant (someday we might want to change that), but at least it's a different constant for each SLRU area. Increase number of subtrans buffers to 32 based on experimentation with a heavily subtrans-bashing test case, and increase number of multixact member buffers to 16, since it's obviously silly for it not to be at least twice the number of multixact offset buffers.
* Add documentation on the use of *printf() macros and libintl.Bruce Momjian2005-12-06
| | | | Backpatch to 8.1.X.
* Arrange for read-only accesses to SLRU page buffers to take only a sharedTom Lane2005-12-06
| | | | | | | | | | lock, not exclusive, if the desired page is already in memory. This can be demonstrated to be a significant win on the pg_subtrans cache when there is a large window of open transactions. It should be useful for pg_clog as well. I didn't try to make GetMultiXactIdMembers() use the code, as that would have taken some restructuring, and what with the local cache for multixact contents it probably wouldn't really make a difference. Per my recent proposal.
* In a nestloop inner indexscan, it's OK to use pushed-down baserestrictinfoTom Lane2005-12-06
| | | | | | clauses even if it's an outer join. This is a corner case since such clauses could only arise from weird OUTER JOIN ON conditions, but worth fixing. Per example from Ron at cheapcomplexdevices.com.
* ecpg/pgtypeslib seems to need snprintf.c pulled in, too.Tom Lane2005-12-06
|
* Put undef's before extern declarations that need 'em, per Andrew Dunstan.Tom Lane2005-12-06
|
* Make Win32 build use our port/snprintf.c routines, instead of dependingTom Lane2005-12-06
| | | | | on libintl which may or may not provide what we need. Make a few marginal cleanups to ensure this works. Andrew Dunstan and Tom Lane.
* Document return-value conventions used by this implementation, perTom Lane2005-12-05
| | | | suggestion from Bruce.
* Add regression test to see if the min/max values of int8 convert correctly.Tom Lane2005-12-05
|
* Fix a rather sizable number of problems in our homegrown snprintf, such asTom Lane2005-12-05
| | | | | | | | | incorrect implementation of argument reordering, arbitrary limit of output size for sprintf and fprintf, willingness to access more bytes than "%.Ns" specification allows, wrong formatting of LONGLONG_MIN, various field-padding bugs and omissions. I believe it now accurately implements a subset of the Single Unix Spec requirements (remaining unimplemented features are documented, too). Bruce Momjian and Tom Lane.
* Treat procedural languages as owned by the bootstrap superuser, ratherTom Lane2005-12-03
| | | | | | | | | than owned by nobody. This results in cleaner display of language ACLs, since the backend's aclchk.c uses the same convention. AFAICS there is no practical difference but it's nice to avoid emitting SET SESSION AUTHORIZATION; also this will make it easier to transition pg_dump to some future version in which we may include an explicit ownership column in pg_language. Per gripe from David Begley.
* Fix out-of-order inclusion of -L switches from LDFLAGS on AIX and HPUX.Tom Lane2005-12-03
| | | | Per example from Dirk Pirschel.
* Allow to_char(interval) and to_char(time) to use AM/PM specifications.Bruce Momjian2005-12-03
| | | | | | | | | | | Map them to a single day, so '30 hours' is 'AM'. Have to_char(interval) and to_char(time) use "HH", "HH12" as 12-hour intervals, rather than bypass and print the full interval hours. This is neeeded because to_char(time) is mapped to interval in this function. Intervals should use "HH24", and document suggestion. Allow "D" format specifiers for interval/time.
* Tweak indexscan machinery to avoid taking an AccessShareLock on an indexTom Lane2005-12-03
| | | | | | | if we already have a stronger lock due to the index's table being the update target table of the query. Same optimization I applied earlier at the table level. There doesn't seem to be much interest in the more radical idea of not locking indexes at all, so do what we can ...
* Fix obsolete comment.Tom Lane2005-12-02
|
* Adjust scan plan nodes to avoid getting an extra AccessShareLock on aTom Lane2005-12-02
| | | | | | relation if it's already been locked by execMain.c as either a result relation or a FOR UPDATE/SHARE relation. This avoids an extra trip to the shared lock manager state. Per my suggestion yesterday.
* Added special handling of CONNECTION variable that is used by ECPG instead ↵Michael Meskes2005-12-02
| | | | of given to the backend.
* Remove comment on errno=0 lines, but add mention to port/strtol.c function.Bruce Momjian2005-12-02
|
* Rearrange code in ExecInitBitmapHeapScan so that we don't initialize theTom Lane2005-12-02
| | | | | | | | child plan nodes until we have acquired lock on the relation to scan. The relative order of initialization of plan nodes isn't real important in other cases, but it's critical here because one is supposed to lock a relation before its indexes, not vice versa. The original coding was at least vulnerable to deadlock against DROP INDEX, and perhaps worse things.
* Add comment to pg_atoi.Bruce Momjian2005-12-01
|
* Comment "errno = 0" in a more generic way.Bruce Momjian2005-12-01
|
* Retry in FileRead and FileWrite if Windows returns ERROR_NO_SYSTEM_RESOURCES.Tom Lane2005-12-01
| | | | | | Also add a retry for Unixen returning EINTR, which hasn't been reported as an issue but at least theoretically could be. Patch by Qingqing Zhou, some minor adjustments by me.
* Add comments about why errno is set to zero.Bruce Momjian2005-12-01
|
* Check for overflow in strtol() while parsing datetime inputs.Tom Lane2005-12-01
| | | | Michael Fuhr.
* Refactor some bits in aclchk.c in order to reduce code duplication.Alvaro Herrera2005-12-01
|
* Rearrange code in pg_atoi() to avoid assuming that isspace() cannotTom Lane2005-11-30
| | | | change errno. No reported bugs here, but why take a chance?
* Tweak choose_bitmap_and() heuristics in the light of example provided in bugTom Lane2005-11-30
| | | | | | | #2075: consider an index redundant if any of its index conditions were already used, rather than if all of them were. Also, make the selectivity comparison a bit fuzzy, so that very small differences in estimated selectivities don't skew the results.
* - Made several variables "const char *" instead of "char *" as proposed by ↵Michael Meskes2005-11-30
| | | | | | | | Qingqing Zhou <zhouqq@cs.toronto.edu>. - Replaced all strdup() calls by ECPGstrdup(). - Set ecpg library version to 5.2. - Set ecpg version to 4.2.1.
* Fix EXPLAIN and EXECUTE commands to pass portal parameters through toTom Lane2005-11-29
| | | | | the executor. This allows, for example, JDBC clients to use '?' bound parameters in these commands. Per gripe from Virag Saksena.
* Tweak hash join code to use an additional heuristic for deciding whetherTom Lane2005-11-28
| | | | | | | | it's worth probing the outer relation for emptiness before building the hash table. To wit, if we're rescanning a join previously performed, remember whether we found it nonempty the previous time, and don't bother with the probe if it was nonempty. This buys back the performance lost in examples like Mario Weilguni's.
* Come to think of it, the backend doesn't use -lz either.Tom Lane2005-11-28
|
* Don't link readline and supporting libraries into the backend.Tom Lane2005-11-28
| | | | After a proposal by Martijn van Oosterhout (not exactly his patch though).
* Install a more future-proof fix for the snapshot-unset bug just found.Alvaro Herrera2005-11-28
| | | | Per suggestion from Tom Lane.
* Recent changes to allow hash join to exit early given empty input fromTom Lane2005-11-28
| | | | | | | one child or the other had a problem: they did not leave the node in a state that ExecReScanHashJoin would understand. In particular it would tend to fail to reset the child plans when needed. Per report from Mario Weilguni.
* Set a snapshot before running analyze on a single table, to avoid aAlvaro Herrera2005-11-28
| | | | | | crash when analyzing tables with expressional indexes. Per report from Frank van Vugt.
* Install pg_regress where PGXS' "make installcheck" can find it.Alvaro Herrera2005-11-28
|
* Change the parser to translate "foo [NOT] IN (expression-list)" toTom Lane2005-11-28
| | | | | | | | | | | ScalarArrayOpExpr when possible, that is, whenever there is an array type for the values of the expression list. This completes the project I've been working on to improve the speed of index searches with long IN lists, as per discussion back in mid-October. I did not force initdb, but until you do one you will see failures in the "rules" regression test, because some of the standard system views use IN and their compiled formats have changed.
* Teach predtest.c how to reason about ScalarArrayOpExpr clauses as thoughTom Lane2005-11-27
| | | | | | | | they were broken-out AND or OR lists. The least grotty way to do this seemed to be to set up a general mechanism for handling nodes as though they were ANDs or ORs. There's no other immediate use for it, but perhaps we might want to use the mechanism someday for things like BETWEEN SYMMETRIC.