[ 
https://issues.apache.org/jira/browse/HBASE-20411?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stack updated HBASE-20411:
--------------------------
    Status: Patch Available  (was: Open)

.001 
{code}
    Change the synchronize across three volatiles incrementing our memory
    sizings. Instead:

         * Make MemStoreSize immutable. Create a new instance on every 
increment.
         * Undo MemStoreSizing being an instance of MemStoreSize; instead it 
has-a.
         * Make two MemStoreSizing implementations; one thread-safe, the other 
not.
         * Use an AtomicReference#checkAndPut (lockless) where concurrent 
updates
         * Otherwise, use unsynchronized accounting.

    TODO: Conservative using thread-safe accounting when unclear. Fix.
    TODO: Use this technique accounting at the global level too.

    A 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/LocalMemStoreSizing.java
     Non-thread-safe memory size accounting.

    M 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreSize.java
     Make MemStoreSize immutable, just a container for three longs.

    M 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreSizing.java
     Make this an Interface. Implementations are a thread-safe instance and
     a non-thread-safe version.

    A 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ThreadSafeMemStoreSizing.java
     Thread-safe version.

{code}

> Ameliorate MutableSegment synchronize
> -------------------------------------
>
>                 Key: HBASE-20411
>                 URL: https://issues.apache.org/jira/browse/HBASE-20411
>             Project: HBase
>          Issue Type: Bug
>            Reporter: stack
>            Priority: Major
>         Attachments: 41901.lock.svg, HBASE-20411.branch-2.0.001.patch
>
>
> This item is migrated from HBASE-20236 so it gets dedicated issue.
> Let me upload evidence that has this synchronize as a stake in our write-time 
> perf. I'll migrate the patch I posted with updates that come of comments 
> posted by [~mdrob] on the HBASE-20236 issue.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to