- 31 May, 2004 4 commits
-
-
Teodor Sigaev authored
-
Tom Lane authored
explicitly fsync'ing every (non-temp) file we have written since the last checkpoint. In the vast majority of cases, the burden of the fsyncs should fall on the bgwriter process not on backends. (To this end, we assume that an fsync issued by the bgwriter will force out blocks written to the same file by other processes using other file descriptors. Anyone have a problem with that?) This makes the world safe for WIN32, which ain't even got sync(2), and really makes the world safe for Unixen as well, because sync(2) never had the semantics we need: it offers no way to wait for the requested I/O to finish. Along the way, fix a bug I recently introduced in xlog recovery: file truncation replay failed to clear bufmgr buffers for the dropped blocks, which could result in 'PANIC: heap_delete_redo: no block' later on in xlog replay.
-
Bruce Momjian authored
> o -Allow Java server-side programming
-
Bruce Momjian authored
-
- 30 May, 2004 4 commits
-
-
Neil Conway authored
list compatibility API by default. While doing this, I decided to keep the llast() macro around and introduce llast_int() and llast_oid() variants.
-
Tom Lane authored
never executed SIBackendInit().
-
Bruce Momjian authored
-
Tom Lane authored
In passing, align a few error messages with the style guide.
-
- 29 May, 2004 5 commits
-
-
Tom Lane authored
than being random pieces of other files. Give bgwriter responsibility for all checkpoint activity (other than a post-recovery checkpoint); so this child process absorbs the functionality of the former transient checkpoint and shutdown subprocesses. While at it, create an actual include file for postmaster.c, which for some reason never had its own file before.
-
Peter Eisentraut authored
-
Peter Eisentraut authored
-
Peter Eisentraut authored
-
Tom Lane authored
side-effect on the original list z. I fear we have a few more of these to track down yet :-(.
-
- 28 May, 2004 10 commits
-
-
Bruce Momjian authored
-
Bruce Momjian authored
mktemp function wants an argument that contains 6 X, while the current version only supplies 5 X which will fail on my SuSE 8.1. Andreas Pflug
-
Tom Lane authored
-
Tom Lane authored
this is an aclmask function and does not have the same return convention as aclcheck functions. Also adjust the behavior so that users without CREATE TEMP permission still have USAGE permission on their session's temp schema. This allows privileged code to create a temp table and make it accessible to code that's not got the same privilege. (Since the default permissions on a table are no-access, an explicit grant on the table will still be needed; but I see no reason that the temp schema itself should prohibit such access.)
-
Teodor Sigaev authored
-
Tom Lane authored
Thanks to Thomas Hallgren.
-
Teodor Sigaev authored
New version. Add support for int2, int8, float4, float8, timestamp with/without time zone, time with/without time zone, date, interval, oid, money and macaddr, char, varchar/text, bytea, numeric, bit, varbit, inet/cidr types for GiST
-
Tom Lane authored
about a third, make it work on non-Windows platforms again. (But perhaps I broke the WIN32 code, since I have no way to test that.) Fold all the paths that fork postmaster child processes to go through the single routine SubPostmasterMain, which takes care of resurrecting the state that would normally be inherited from the postmaster (including GUC variables). Clean up some places where there's no particularly good reason for the EXEC and non-EXEC cases to work differently. Take care of one or two FIXMEs that remained in the code.
-
Tom Lane authored
-
Tom Lane authored
-
- 27 May, 2004 9 commits
-
-
Tom Lane authored
Per report from Magnus.
-
Tom Lane authored
of ThisStartUpID and RedoRecPtr into new backends. It's a lot easier just to make them all grab the values out of shared memory during startup. This helps to decouple the postmaster from checkpoint execution, which I need since I'm intending to let the bgwriter do it instead, and it also fixes a bug in the Win32 port: ThisStartUpID wasn't getting propagated at all AFAICS. (Doesn't give me a lot of faith in the amount of testing that port has gotten.)
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
helpful for the Win32 port. Andrew Dunstan, with additions by Bruce.
-
Tom Lane authored
Recommend ALTER TABLE ... TYPE as the best way to reclaim space occupied by deleted columns. The old method involving UPDATE and VACUUM FULL will be considerably less efficient.
-
Neil Conway authored
-
- 26 May, 2004 8 commits
-
-
Tom Lane authored
ListCells are only 8 bytes instead of 12 (on 4-byte-pointer machines anyway), it's worth maintaining a separate freelist for 8-byte objects. Remembering that alloc chunks carry 8 bytes of overhead, this should reduce the net storage requirement for a long List by about a third.
-
Tom Lane authored
-
Bruce Momjian authored
-
Tom Lane authored
-
Bruce Momjian authored
> FWIW, the section on configuring kernel resources under various > Unixen[1] doesn't have any documentation for AIX. If someone out there > knows which knobs need to be tweaked, would they mind sending in a doc > patch? (Or just specifying what needs to be done, and I'll add the > SGML.) After verifying that nobody wound up messing with the kernel parameters, here's a docs patch... Chris Browne
-
Bruce Momjian authored
1) temp table crash 2) Check send_query() function call return value. Backpatch to 7.4.X.
-
Bruce Momjian authored
-
Bruce Momjian authored
the four functions. > Also, please justify the temp-related changes. I was not aware that we > had any breakage there. patch-tmp-schema.txt contains the following bits: *) Changes pg_namespace_aclmask() so that the superuser is always able to create objects in the temp namespace. *) Changes pg_namespace_aclmask() so that if this is a temp namespace, objects are only allowed to be created in the temp namespace if the user has TEMP privs on the database. This encompasses all object creation, not just TEMP tables. *) InitTempTableNamespace() checks to see if the current user, not the session user, has access to create a temp namespace. The first two changes are necessary to support the third change. Now it's possible to revoke all temp table privs from non-super users and limiting all creation of temp tables/schemas via a function that's executed with elevated privs (security definer). Before this change, it was not possible to have a setuid function to create a temp table/schema if the session user had no TEMP privs. patch-area-path.txt contains: *) Can now determine the area of a closed path. patch-dfmgr.txt contains: *) Small tweak to add the library path that's being expanded. I was using $lib/foo.so and couldn't easily figure out what the error message, "invalid macro name in dynamic library path" meant without looking through the source code. With the path in there, at least I know where to start looking in my config file. Sean Chittenden
-