[ 
https://issues.apache.org/jira/browse/DERBY-2020?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12504155
 ] 

Olav Sandstaa commented on DERBY-2020:
--------------------------------------

Thanks a lot for writing the release note, Myrna.

I think the release note look very good and I have only some minor comments:

1. If the VM supports "rws" it also supports "rwd" mode. So there are no 
reverting back from "rwd" to "rws". The only case where Derby revert back from 
using "rwd" is due to a JVM bug, and then Derby will revert back to use "rw" 
mode (since the bug is also present when running with "rws"). I propose to 
change the last sentence in "Rationale for Change" from:

   "Because not all JVMs support this mechanism, Derby will check if it can use 
this mechanism and if not, it will revert back to using the "rws" and print an 
appropriate message indicating same in derby.log"

to 

   "Some JVMs have a bug in the support for "rws" and "rwd" mode. Derby will 
check for this bug, and if it is detected, Derby will revert back to using "rw" 
mode and print an appropriate message indicating this in derby.log".

2. For the same reason I propose that the second sentence in the "Application 
Changes required" is changed from:

   "If not, a message will be printed to derby.log:"

to 

  "If Derby detects that your JVM has a bug in the support for "rwd", a message 
will be printed to derby.log"

(as it is written now it seems like this sentence would be written to derby.log 
every time Derby does not use "rwd" mode. This is no correct. For JVMs older 
than 1.4.2 "rwd" is not supported, but Derby will not write anything about this 
to the derby.log)

3. There is a "the the" typo in the second last sentence in the "Rationale for 
Change" section.

Let me know if you want me to upload a new version of the release note or if 
you incorporate this.

> Change file option for syncing log file to disk from rws to rwd
> ---------------------------------------------------------------
>
>                 Key: DERBY-2020
>                 URL: https://issues.apache.org/jira/browse/DERBY-2020
>             Project: Derby
>          Issue Type: Improvement
>          Components: Performance, Store
>    Affects Versions: 10.3.0.0
>            Reporter: Olav Sandstaa
>            Assignee: Olav Sandstaa
>             Fix For: 10.3.0.0
>
>         Attachments: disk-cache.png, jvmsyncbug.diff, jvmsyncbug.stat, 
> jvmsyncbug_v2.diff, jvmsyncbug_v2.stat, jvmsyncbug_v3.diff, 
> jvmsyncbug_v3.stat, no-disk-cache.png, releaseNote.html, rwd.diff, rwd.stat, 
> rwd_pre.diff, rwd_pre.stat, rwd_v2.diff
>
>
> For writing the transaction log to disk Derby uses a
> RandomAccessFile. If it is supported by the JVM, the log files are
> opened in "rws" mode making the file system take care of syncing
> writes to disk. "rws" mode will ensure that both the data and the file
> meta-data is updated for every write to the file. On some operating
> systems (e.g. Solaris) this leads to two write operation to the disk
> for every write issued by Derby. This is limiting the throughput of
> update intensive applications.  If we could change the file mode to
> "rwd" this could reduce the number of updates to the disk.
> I have run some simple tests where I have changed mode from "rws" to
> "rwd" for the Derby log file. When running a small numbers of
> concurrent client threads the throughput is almost doubled and the
> response time is almost halved. I will attach some graphs that show
> this when running a given number of concurrent "tpc-b" like clients. These
> graphs show the throughput when running with "rws" and "rwd" mode when the
> disk's write cache has been enabled and disabled.
> I am creating this Jira to have a place where we can collect
> information about issues both for and against changing the default
> mode for writing to log files.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to