aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* The Makefile was invoking perl scripts as ./script.pl. This fails whenPeter Eisentraut2006-02-24
| | | | | | | | the script is not executable as UCS_to_most.pl is in CVS. It also won't pick up any custom setting of the perl version/location to use. This patch calls perl scripts like $(PERL) $(srcdir)/script.pl. Kris Jurka
* Make restricted_exec feature for Windows more robust by using the environmentAndrew Dunstan2006-02-24
| | | | | to pass the flag instead of the command line - some implementations of getopt fail if getopt arguments are present after non-getopt arguments.
* make initdb -U username work as advertised; back out bogus patch at rev 1.42Andrew Dunstan2006-02-24
| | | | and supply real fix for problem it tried to address.
* Cleanup the usage of ScanDirection: use the symbolic names for theNeil Conway2006-02-21
| | | | | | | | | possible ScanDirection alternatives rather than magic numbers (-1, 0, 1). Also, use the ScanDirection macros in a few places rather than directly checking whether `dir == ForwardScanDirection' and the like. Per patch from James William Pye. His patch also changed ScanDirection to be a "char" rather than an enum, which I haven't applied.
* Fix old pg_dump oversight: default values for domains really need to be dumpedTom Lane2006-02-21
| | | | | | | | | | | | by decompiling the typdefaultbin expression, not just printing the typdefault text which may be out-of-date or assume the wrong schema search path. (It's the same hazard as for adbin vs adsrc in column defaults.) The catalogs.sgml spec for pg_type implies that the correct procedure is to look to typdefaultbin first and consider typdefault only if typdefaultbin is NULL. I made dumping of both domains and base types do that, even though in the current backend code typdefaultbin is always correct for domains and typdefault for base types --- might as well try to future-proof it a little. Per bug report from Alexander Galler.
* Adjust probe for getaddrinfo to cope with macro-ized definitions, suchTom Lane2006-02-21
| | | | as Tru64's. Per previous discussion.
* Fix three Python reference leaks in PLy_traceback(). This would resultNeil Conway2006-02-20
| | | | | | | | | | in leaking memory when invoking a PL/Python procedure that raises an exception. Unfortunately this still leaks memory, but at least the largest leak has been plugged. This patch also fixes a reference counting mistake in PLy_modify_tuple() for 8.0, 8.1 and HEAD: we don't actually own a reference to `platt', so we shouldn't Py_DECREF() it.
* Update obsolete comment.Tom Lane2006-02-19
|
* Modify logtape.c so that the initial LogicalTapeSetCreate call onlyTom Lane2006-02-19
| | | | | | | | | | | allocates the control data. The per-tape buffers are allocated only on first use. This saves memory in situations where tuplesort.c overestimates the number of tapes needed (ie, there are fewer runs than tapes). Also, this makes legitimate the coding in inittapes() that includes tape buffer space in the maximum-memory calculation: when inittapes runs, we've already expended the whole allowed memory on tuple storage, and so we'd better not allocate all the tape buffers until we've flushed some tuples out of memory.
* Improve tuplesort.c to support variable merge order. The original codingTom Lane2006-02-19
| | | | | | | | | | with fixed merge order (fixed number of "tapes") was based on obsolete assumptions, namely that tape drives are expensive. Since our "tapes" are really just a couple of buffers, we can have a lot of them given adequate workspace. This allows reduction of the number of merge passes with consequent savings of I/O during large sorts. Simon Riggs with some rework by Tom Lane
* Add TABLESPACE and ON COMMIT clauses to CREATE TABLE AS. ON COMMIT isNeil Conway2006-02-19
| | | | | required by the SQL standard, and TABLESPACE is useful functionality. Patch from Kris Jurka, minor editorialization by Neil Conway.
* ' is not valid HTML 4.01, so print the plain character instead.Peter Eisentraut2006-02-18
|
* Add support for Windows codepages 1253, 1254, 1255, and 1257 and cleanPeter Eisentraut2006-02-18
| | | | | | | | | | | | | | | | | | | | | up a bunch of the support utilities. In src/backend/utils/mb/Unicode remove nearly duplicate copies of the UCS_to_XXX perl script and replace with one version to handle all generic files. Update the Makefile so that it knows about all the map files. This produces a slight difference in some of the map files, using a uniform naming convention and not mapping the null character. In src/backend/utils/mb/conversion_procs create a master utf8<->win codepage function like the ISO 8859 versions instead of having a separate handler for each conversion. There is an externally visible change in the name of the win1258 to utf8 conversion. According to the documentation notes, it was named incorrectly and this changes it to a standard name. Running the Unicode mapping perl scripts has shown some additional mapping changes in koi8r and iso8859-7.
* Mark unescape_single_char() "static": as far as I can see this functionNeil Conway2006-02-18
| | | | is only used by scan.l/scan.c
* Fix typo in comment.Neil Conway2006-02-17
|
* Change MemSet to use long instead of int32, for better performance onPeter Eisentraut2006-02-16
| | | | | | 64-bit platforms. by ITAGAKI Takahiro
* Repair --single-transaction patch so it handles blobs correctly.Tom Lane2006-02-14
| | | | Simon Riggs
* Move btbulkdelete's vacuum_delay_point() call to a place in the loop whereTom Lane2006-02-14
| | | | | | | | we are not holding a buffer content lock; where it was, InterruptHoldoffCount is positive and so we'd not respond to cancel signals as intended. Also add missing vacuum_delay_point() call in btvacuumcleanup. This should fix complaint from Evgeny Gridasov about failure to respond to SIGINT/SIGTERM in a timely fashion (bug #2257).
* Add some missing vacuum_delay_point calls in GIST vacuuming.Tom Lane2006-02-14
|
* AllocSetStats should probably be using unsigned format to show space totals.Tom Lane2006-02-14
|
* Add positive defense against trying to connect when the connectionTom Lane2006-02-13
| | | | | | option state hasn't been fully set up. This is possible via PQreset() and might occur in other code paths too, so a state flag seems the most robust solution. Per report from Arturs Zoldners.
* IMHO, --single-transaction should wrap *all* the commands in BEGIN/COMMIT,Tom Lane2006-02-13
| | | | not just some of them.
* Place function names in first column for consistency.Bruce Momjian2006-02-13
|
* Fix qual_is_pushdown_safe to not try to push down quals involving a whole-rowTom Lane2006-02-13
| | | | | | Var referencing the subselect output. While this case could possibly be made to work, it seems not worth expending effort on. Per report from Magnus Naeslund(f).
* Fix build failure when not USE_READLINE. Sergey E. KoposovTom Lane2006-02-13
|
* Revert because C locale uses "" for thousands_sep, meaning "n/a", whileBruce Momjian2006-02-12
| | | | | French uses "" for "don't want". Seems we have to keep the existing behavior.
* Fix bug that allowed any logged-in user to SET ROLE to any other database userTom Lane2006-02-12
| | | | | | | | id (CVE-2006-0553). Also fix related bug in SET SESSION AUTHORIZATION that allows unprivileged users to crash the server, if it has been compiled with Asserts enabled. The escalation-of-privilege risk exists only in 8.1.0-8.1.2. However, the Assert-crash risk exists in all releases back to 7.3. Thanks to Akio Ishida for reporting this problem.
* Throw a warning rather than an error on invalid character from UTF8 toBruce Momjian2006-02-12
| | | | Latin1, like we do for other Latin encodings.
* Back out patch pending review.Bruce Momjian2006-02-12
| | | | | | | | | | | | | | | | | | | | | | | | | | --------------------------------------------------------------------------- > I've now tested this patch at home w/ 8.2HEAD and it seems to fix the > bug. I plan on testing it under 8.1.2 at work tommorow with > mod_auth_krb5, etc, and expect it'll work there. Assuming all goes > well and unless someone objects I'll forward the patch to -patches. > It'd be great to have this fixed as it'll allow us to use Kerberos to > authenticate to phppgadmin and other web-based tools which use > Postgres. While playing with this patch under 8.1.2 at home I discovered a mistake in how I manually applied one of the hunks to fe-auth.c. Basically, the base code had changed and so the patch needed to be modified slightly. This is because the code no longer either has a freeable pointer under 'name' or has 'name' as NULL. The attached patch correctly frees the string from pg_krb5_authname (where it had been strdup'd) if and only if pg_krb5_authname returned a string (as opposed to falling through and having name be set using name = pw->name;). Also added a comment to this effect. Please review. Stephen Frost (sfrost@snowman.net) wrote:
* > I've now tested this patch at home w/ 8.2HEAD and it seems to fix theBruce Momjian2006-02-12
| | | | | | | | | | | | | | | | | | | | | | | > bug. I plan on testing it under 8.1.2 at work tommorow with > mod_auth_krb5, etc, and expect it'll work there. Assuming all goes > well and unless someone objects I'll forward the patch to -patches. > It'd be great to have this fixed as it'll allow us to use Kerberos to > authenticate to phppgadmin and other web-based tools which use > Postgres. While playing with this patch under 8.1.2 at home I discovered a mistake in how I manually applied one of the hunks to fe-auth.c. Basically, the base code had changed and so the patch needed to be modified slightly. This is because the code no longer either has a freeable pointer under 'name' or has 'name' as NULL. The attached patch correctly frees the string from pg_krb5_authname (where it had been strdup'd) if and only if pg_krb5_authname returned a string (as opposed to falling through and having name be set using name = pw->name;). Also added a comment to this effect. Please review. Stephen Frost (sfrost@snowman.net) wrote:
* Support "" for thousands separator and plus sign in to_char(), perBruce Momjian2006-02-12
| | | | report from French Debian user. psql already handles "" fine.
* Remove LEFT part of JOIN to pg_roles because of optimizer limitation:Bruce Momjian2006-02-12
| | | | | | | | | | | | | | | | | | | | | | > True, but they're not being used where you'd expect. This seems to be > something to do with the fact that it's not pg_authid which is being > accessed, but rather the view pg_roles. I looked into this and it seems the problem is that the view doesn't get flattened into the main query because of the has_nullable_targetlist limitation in prepjointree.c. That's triggered because pg_roles has '********'::text AS rolpassword which isn't nullable, meaning it would produce wrong behavior if referenced above the outer join. Ultimately, the reason this is a problem is that the planner deals only in simple Vars while processing joins; it doesn't want to think about expressions. I'm starting to think that it may be time to fix this, because I've run into several related restrictions lately, but it seems like a nontrivial project. In the meantime, reducing the LEFT JOIN to pg_roles to a JOIN as per Peter's suggestion seems like the best short-term workaround.
* Revert patch becaues of locking concerns:Bruce Momjian2006-02-12
| | | | | | Allow ALTER TABLE ... ALTER CONSTRAINT ... RENAME Joachim Wieland
* Update release checlist.Bruce Momjian2006-02-12
|
* Improve tab completion macro for default keywords.Bruce Momjian2006-02-12
|
* When performing a parallel build (make -j N) with ./configureBruce Momjian2006-02-12
| | | | | | | | --enable-depend it often tries to create the .deps directory twice and bails out when it already exists due to a race condition of if doesn't exist, then create. This patch prevents mkdir from returning an error. Kris Jurka
* List psql tab completion for various default keywords.Bruce Momjian2006-02-12
| | | | Joachim Wieland
* Apply code-reviewed version of for-scalar-list patch: mostly, fixingTom Lane2006-02-12
| | | | it to report reasonable errors in error cases.
* Add MSVC support for utility commands and pg_dump.Bruce Momjian2006-02-12
| | | | Hiroshi Saito
* Allow PL/pgSQL FOR statement to return values to scalars as well asBruce Momjian2006-02-12
| | | | | | records and row types. Pavel Stehule
* Use 0x01 for newlines in saved history. It was determined to be notBruce Momjian2006-02-12
| | | | | used by multi-byte sequences, but futher invesetigation might prove this to be false.
* Clean up plpgsql grammar to make sure that check_assignable() is appliedTom Lane2006-02-12
| | | | | | | | | consistently. This is mostly cosmetic right at the moment because check_assignable() does nothing for ROW or RECORD datums, but that might not always be so. This also syncs several different places that read INTO target lists. They're just enough different that it seems impractical to factor them into a single routine, but they surely should be the same as much as possible.
* Allow to_char() to print localized month and day names.Bruce Momjian2006-02-12
| | | | Euler Taveira de Oliveira
* As part of previous commit, add pg_restore option:Bruce Momjian2006-02-12
| | | | | | -1 or --single-transaction Simon Riggs
* Add psql option:Bruce Momjian2006-02-12
| | | | | | -1 or --single-transaction Simon Riggs
* Add contrib/pg_freespacemap to display free space map information.Bruce Momjian2006-02-12
| | | | Mark Kirkwood
* Fix more fallout from line-wrap patch, to wit, arbitrarily changingTom Lane2006-02-12
| | | | | | | the API of PQdsplen without bothering to fix its callers. Although ReportSyntaxErrorPosition could probably do with more smarts about handling control characters, for the moment I'll just get it back to handling tabs consistently.
* I've created a new shared catalog table pg_shdescription to storeBruce Momjian2006-02-12
| | | | | | | | | | | | | | | | | | comments on cluster global objects like databases, tablespaces, and roles. It touches a lot of places, but not much in the way of big changes. The only design decision I made was to duplicate the query and manipulation functions rather than to try and have them handle both shared and local comments. I believe this is simpler for the code and not an issue for callers because they know what type of object they are dealing with. This has resulted in a shobj_description function analagous to obj_description and backend functions [Create/Delete]SharedComments mirroring the existing [Create/Delete]Comments functions. pg_shdescription.h goes into src/include/catalog/ Kris Jurka
* Undo changes of trailing space in recently-committed expected files.Tom Lane2006-02-12
| | | | | | This is mostly just over-compulsiveness on my part, but the exercise did reveal one real bug: errors.out has a space difference now where it should not.
* Restore previous psql behavior of not printing useless trailing spacesTom Lane2006-02-12
| | | | after the data in the last column on a line.