BUG #4965: missing tests in tools/fsync/test_fsync.c
The following bug has been logged online:
Bug reference: 4965
Logged by: Jeff Janes
Email address: jeff.janes@gmail.com
PostgreSQL version: 8.4.0
Operating system: Linux
Description: missing tests in tools/fsync/test_fsync.c
Details:
In the part that implements "Compare file sync methods with one 8k write",
the #ifdef OPEN_SYNC_FLAG code
is nested within the #ifdef OPEN_DATASYNC_FLAG code.
This causes o_sync to be skipped if o_dsync is unavailable, but only for
this particular section (the section with 2 8k writes doesn't have this
problem.)
Also, the statement that prints the "Compare file sync methods with one 8k
write" section title is up in the #ifdef block of a previous section, where
it might be omitted on systems without an o_sync.
On Wed, Aug 5, 2009 at 10:46 AM, Jeff Janes<jeff.janes@gmail.com> wrote:
The following bug has been logged online:
Bug reference: 4965
Logged by: Jeff Janes
Email address: jeff.janes@gmail.com
PostgreSQL version: 8.4.0
Operating system: Linux
Description: missing tests in tools/fsync/test_fsync.c
Details:In the part that implements "Compare file sync methods with one 8k write",
the #ifdef OPEN_SYNC_FLAG code
is nested within the #ifdef OPEN_DATASYNC_FLAG code.This causes o_sync to be skipped if o_dsync is unavailable, but only for
this particular section (the section with 2 8k writes doesn't have this
problem.)Also, the statement that prints the "Compare file sync methods with one 8k
write" section title is up in the #ifdef block of a previous section, where
it might be omitted on systems without an o_sync.
I'm not familiar enough with this code to know whether this is a bug,
but perhaps you should prepare a patch and send it to pgsql-hackers?
...Robert
Jeff Janes wrote:
The following bug has been logged online:
Bug reference: 4965
Logged by: Jeff Janes
Email address: jeff.janes@gmail.com
PostgreSQL version: 8.4.0
Operating system: Linux
Description: missing tests in tools/fsync/test_fsync.c
Details:In the part that implements "Compare file sync methods with one 8k write",
the #ifdef OPEN_SYNC_FLAG code
is nested within the #ifdef OPEN_DATASYNC_FLAG code.This causes o_sync to be skipped if o_dsync is unavailable, but only for
this particular section (the section with 2 8k writes doesn't have this
problem.)Also, the statement that prints the "Compare file sync methods with one 8k
write" section title is up in the #ifdef block of a previous section, where
it might be omitted on systems without an o_sync.
Yea, that C file needed some help. I have applied the attached patch to
CVS HEAD and 8.4.X. Thanks for the report and let me know if you think
this can be improved further.
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +