summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2006-07-12Fix pgrminclude to work for stripping include files.Bruce Momjian
2006-07-12Clean up for warning:Joe Conway
fe-auth.c:573: warning: passing argument 1 of 'free' discards qualifiers from pointer target type pg_krb5_authname used to return a (const char *) to memory allocated by krb. Somewhere along the lines this was changed so that a copy was made, returned, and freed instead. However the const modifier was never removed.
2006-07-11Apply entab fix from Marko Kreen for these problems:Alvaro Herrera
- halt.c did not include stdlib.h, thus missed exit() prototype - Makefile ignores BINDIR for install. - Makefile calls install with user/group args, thus failing for regular user. While trying it I noticed that the Makefile does not support VPATH builds ...
2006-07-11Tweak fillfactor code as per my recent proposal. Fix nbtsort.c so thatTom Lane
it can handle small fillfactors for ordinary-sized index entries without failing on large ones; fix nbtinsert.c to distinguish leaf and nonleaf pages; change the minimum fillfactor to 10% for all index types.
2006-07-11Improve pginclude tests.Bruce Momjian
2006-07-11Improve pginclude compile flags.Bruce Momjian
2006-07-11Update pginclude documentation.Bruce Momjian
2006-07-11Add support to GIN for =(anyarray,anyarray) operationTeodor Sigaev
2006-07-11Have pgrminclude process include files too.Bruce Momjian
2006-07-11Add $CFLAGS support to pgrminclude.Bruce Momjian
2006-07-11Move pgrminclude debug code to be more effective.Bruce Momjian
2006-07-11Improve shell script wrapping.Bruce Momjian
2006-07-11Add comments to pgrminclude.Bruce Momjian
2006-07-11Alphabetically order reference to include files, "S"-"Z".Bruce Momjian
2006-07-11Alphabetically order reference to include files, "N" - "S".Bruce Momjian
2006-07-11Alphabetically order reference to include files, "G" - "M".Bruce Momjian
2006-07-11GIN improvementsTeodor Sigaev
- Replace sorted array of entries in maintenance_work_mem to binary tree, this should improve create performance. - More precisely calculate allocated memory, eliminate leaks with user-defined extractValue() - Improve wordings in tsearch2
2006-07-11Sort reference of include files, "A" - "F".Bruce Momjian
2006-07-11Reverse inclusion order of <ws2tcpip.h> and <winsock2.h>, per Dave Page.Tom Lane
2006-07-11Allow each C include file to compile on its own by including any neededBruce Momjian
header files.
2006-07-11Add libpq include directory to script.Bruce Momjian
2006-07-10Fix ALTER TABLE to check pre-existing NOT NULL constraints when rewritingTom Lane
a table. Otherwise a USING clause that yields NULL can leave the table violating its constraint (possibly there are other cases too). Per report from Alexander Pravking.
2006-07-10Move pthread-win32.h to /port, modify bcc/msvc makefiles.Bruce Momjian
2006-07-10Improve compile line for tool.Bruce Momjian
2006-07-10Update usage documention for pgincludeBruce Momjian
2006-07-10Add $CFLAGS handling to pgcompinclude.Bruce Momjian
2006-07-10Fix 'find' args for pgcompinclude tool.Bruce Momjian
2006-07-10Improve tool coding.Bruce Momjian
2006-07-10Improve vacuum code to track minimum Xids per table instead of per database.Alvaro Herrera
To this end, add a couple of columns to pg_class, relminxid and relvacuumxid, based on which we calculate the pg_database columns after each vacuum. We now force all databases to be vacuumed, even template ones. A backend noticing too old a database (meaning pg_database.datminxid is in danger of falling behind Xid wraparound) will signal the postmaster, which in turn will start an autovacuum iteration to process the offending database. In principle this is only there to cope with frozen (non-connectable) databases without forcing users to set them to connectable, but it could force regular user database to go through a database-wide vacuum at any time. Maybe we should warn users about this somehow. Of course the real solution will be to use autovacuum all the time ;-) There are some additional improvements we could have in this area: for example the vacuum code could be smarter about not updating pg_database for each table when called by autovacuum, and do it only once the whole autovacuum iteration is done. I updated the system catalogs documentation, but I didn't modify the maintenance section. Also having some regression tests for this would be nice but it's not really a very straightforward thing to do. Catalog version bumped due to system catalog changes.
2006-07-10Improve script by processing only C files.Bruce Momjian
2006-07-10Testing commit stuffAlvaro Herrera
2006-07-08Fix typo in comment.Alvaro Herrera
2006-07-06WIN32 fixes:Bruce Momjian
I take out patch for this as a promise. This is client-build support of MS-VC6+. Fix for different getaddrinfo structure ordering on Win32 for IPv6. Hiroshi Saito
2006-07-06Attached patch is required ot build with the CRT that comes with VisualBruce Momjian
Studio 2005. Basically MS defined errcode in the headers with a typedef, so we have to #define it out of the way. While at it, fix a function declaration in plpython that didn't match the implementation (volatile missing). Magnus Hagander
2006-07-06Please find attached two patches for documentation and regression testsBruce Momjian
for the usage of full time zone names. Joachim Wieland
2006-07-05Fixed remaining Coverity bugs.Michael Meskes
2006-07-04Remove libpq's PQescapeIdentifier(), not safe from injection attacks.Bruce Momjian
2006-07-04Fix typos in comments.Neil Conway
2006-07-03Code review for FILLFACTOR patch. Change WITH grammar as per earlierTom Lane
discussion (including making def_arg allow reserved words), add missed opt_definition for UNIQUE case. Put the reloptions support code in a less random place (I chose to make a new file access/common/reloptions.c). Eliminate header inclusion creep. Make the index options functions safely user-callable (seems like client apps might like to be able to test validity of options before trying to make an index). Reduce overhead for normal case with no options by allowing rd_options to be NULL. Fix some unmaintainably klugy code, including getting rid of Natts_pg_class_fixed at long last. Some stylistic cleanup too, and pay attention to keeping comments in sync with code. Documentation still needs work, though I did fix the omissions in catalogs.sgml and indexam.sgml.
2006-07-02Do a pass of code review for the ALTER TABLE ADD INHERITS patch. KeepNeil Conway
the read lock we hold on the table's parent relation until commit. Update equalfuncs.c for the new field in AlterTableCmd. Various improvements to comments, variable names, and error reporting. There is room for further improvement here, but this is at least a step in the right direction.
2006-07-02Add FILLFACTOR to CREATE INDEX.Bruce Momjian
ITAGAKI Takahiro
2006-07-02ALTER TABLE ... ADD/DROPS INHERIT (actually INHERIT / NO INHERIT)Bruce Momjian
Open items: There were a few tangentially related issues that have come up that I think are TODOs. I'm likely to tackle one or two of these next so I'm interested in hearing feedback on them as well. . Constraints currently do not know anything about inheritance. Tom suggested adding a coninhcount and conislocal like attributes have to track their inheritance status. . Foreign key constraints currently do not get copied to new children (and therefore my code doesn't verify them). I don't think it would be hard to add them and treat them like CHECK constraints. . No constraints at all are copied to tables defined with LIKE. That makes it hard to use LIKE to define new partitions. The standard defines LIKE and specifically says it does not copy constraints. But the standard already has an option called INCLUDING DEFAULTS; we could always define a non-standard extension LIKE table INCLUDING CONSTRAINTS that gives the user the option to request a copy including constraints. . Personally, I think the whole attislocal thing is bunk. The decision about whether to drop a column from children tables or not is something that should be up to the user and trying to DWIM based on whether there was ever a local definition or the column was acquired purely through inheritance is hardly ever going to match up with user expectations. . And of course there's the whole unique and primary key constraint issue. I think to get any traction at all on this you have a prerequisite of a real partitioned table implementation where the system knows what the partition key is so it can recognize when it's a leading part of an index key. Greg Stark
2006-07-01Fix oversight in planning for multiple indexscans driven byTom Lane
ScalarArrayOpExpr index quals: we were estimating the right total number of rows returned, but treating the index-access part of the cost as if a single scan were fetching that many consecutive index tuples. Actually we should treat it as a multiple indexscan, and if there are enough of 'em the Mackert-Lohman discount should kick in.
2006-07-01Revise the planner's handling of "pseudoconstant" WHERE clauses, that isTom Lane
clauses containing no variables and no volatile functions. Such a clause can be used as a one-time qual in a gating Result plan node, to suppress plan execution entirely when it is false. Even when the clause is true, putting it in a gating node wins by avoiding repeated evaluation of the clause. In previous PG releases, query_planner() would do this for pseudoconstant clauses appearing at the top level of the jointree, but there was no ability to generate a gating Result deeper in the plan tree. To fix it, get rid of the special case in query_planner(), and instead process pseudoconstant clauses through the normal RestrictInfo qual distribution mechanism. When a pseudoconstant clause is found attached to a path node in create_plan(), pull it out and generate a gating Result at that point. This requires special-casing pseudoconstants in selectivity estimation and cost_qual_eval, but on the whole it's pretty clean. It probably even makes the planner a bit faster than before for the normal case of no pseudoconstants, since removing pull_constant_clauses saves one useless traversal of the qual tree. Per gripe from Phil Frost.
2006-06-30Fix memory leak introduced in the prior commit, detected by Tom Lane.Alvaro Herrera
2006-06-30Fix use-after-free error reported by Neil Conway.Alvaro Herrera
2006-06-29Remove the separate 'stats buffer' process, letting backend stats messagesTom Lane
be delivered directly to the collector process. The extra process context swaps required to transfer data through the buffer process seem to outweigh any value the buffering might have. Per recent discussion and tests. I modified Bruce's draft patch to use poll() rather than select() where available (this makes a noticeable difference on my system), and fixed up the EXEC_BACKEND case.
2006-06-29Change TRUNCATE's method for searching for foreign-key references so thatTom Lane
the order in which it visits tables is not dependent on the physical order of pg_constraint entries, and neither are the error messages it gives. This should correct recently-noticed instability in regression tests.
2006-06-28Add missing #include directive: pg_constraint.h declares some functionsNeil Conway
whose prototypes include the "List" type, so it ought to include the list header file.
2006-06-28Fix typo in comment.Neil Conway