hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-10156) FSHLog Refactor (WAS -> Fix up the HBASE-8755 slowdown when low contention)
Date Thu, 17 Apr 2014 18:07:18 GMT

    [ https://issues.apache.org/jira/browse/HBASE-10156?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13973214#comment-13973214

stack commented on HBASE-10156:

[~liochon] You have a point.

We could do this:

@@ -1486,6 +1488,9 @@ class FSHLog implements HLog, Syncable {
   // txid is unused.  txid is an implementation detail.  It should not leak outside of WAL.
   public void sync(long txid) throws IOException {
+    // If this edit has been sync'd already, we can just return.  This is dangerous.  Can
+    // be for a single edit or for a sequence of edits written by this thread.
+    if (this.highestSyncedSequence.get() > txid) return;

This is all before the ringbuffer.  It would be hard to do on other side of the ringbuffer
unless we carried this seqid -- which would be different from the ringbuffers' current seqid
-- over to the other side and then on the other side did something similar (would be a bit
more involved on other side since context would be blown).

Good one.

(Would have to undo my 'deprecation' of the sync that takes a txid in a more complete patch).

> FSHLog Refactor (WAS -> Fix up the HBASE-8755 slowdown when low contention)
> ---------------------------------------------------------------------------
>                 Key: HBASE-10156
>                 URL: https://issues.apache.org/jira/browse/HBASE-10156
>             Project: HBase
>          Issue Type: Sub-task
>          Components: wal
>            Reporter: stack
>            Assignee: stack
>             Fix For: 0.99.0
>         Attachments: 10156.txt, 10156v10.txt, 10156v11.txt, 10156v12.txt, 10156v12.txt,
10156v13.txt, 10156v16.txt, 10156v17.txt, 10156v18.txt, 10156v19.txt, 10156v2.txt, 10156v20.txt,
10156v20.txt, 10156v21.txt, 10156v21.txt, 10156v21.txt, 10156v3.txt, 10156v4.txt, 10156v5.txt,
10156v6.txt, 10156v7.txt, 10156v9.txt, Disrupting.java
> HBASE-8755 slows our writes when only a few clients.  Fix.

This message was sent by Atlassian JIRA

View raw message