You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "stack (JIRA)" <ji...@apache.org> on 2008/06/06 21:34:45 UTC

[jira] Created: (HBASE-670) Historian deadlocks if regionserver is at global memory boundary and is hosting .META.

Historian deadlocks if regionserver is at global memory boundary and is hosting .META.
--------------------------------------------------------------------------------------

                 Key: HBASE-670
                 URL: https://issues.apache.org/jira/browse/HBASE-670
             Project: Hadoop HBase
          Issue Type: Bug
            Reporter: stack
             Fix For: 0.2.0


The global memory unit test was deadlocking because historian was trying to update .META. with flush info -- only the single regionserver was the one hosting the .META. and the regionserver global lock was in place while memory is full

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


[jira] Assigned: (HBASE-670) Historian deadlocks if regionserver is at global memory boundary and is hosting .META.

Posted by "stack (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack reassigned HBASE-670:
---------------------------

    Assignee: stack

> Historian deadlocks if regionserver is at global memory boundary and is hosting .META.
> --------------------------------------------------------------------------------------
>
>                 Key: HBASE-670
>                 URL: https://issues.apache.org/jira/browse/HBASE-670
>             Project: Hadoop HBase
>          Issue Type: Bug
>            Reporter: stack
>            Assignee: stack
>             Fix For: 0.2.0
>
>         Attachments: 670.patch
>
>
> The global memory unit test was deadlocking because historian was trying to update .META. with flush info -- only the single regionserver was the one hosting the .META. and the regionserver global lock was in place while memory is full

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


[jira] Updated: (HBASE-670) Historian deadlocks if regionserver is at global memory boundary and is hosting .META.

Posted by "stack (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack updated HBASE-670:
------------------------

    Attachment: 670-v2.patch

Here's another cut at this issue.  Thinking on it, if regionserver is at its upper memory bound and is forcing flushes to run, we should not let compactions run while updates for the whole server are blocked.

This patch makes it so we do not run compactions after 'emergency' flushes.  Upside is that we avoid the occasional case where updates must wait on compaction to complete.  Downside, is because we miss a compaction opportunity, we add to the possibility of compactions being overwhelmed.

Patch also narrows the global regionserver lock.

And restores logging of compactions in the historian now no longer danger of it deadlocking.

> Historian deadlocks if regionserver is at global memory boundary and is hosting .META.
> --------------------------------------------------------------------------------------
>
>                 Key: HBASE-670
>                 URL: https://issues.apache.org/jira/browse/HBASE-670
>             Project: Hadoop HBase
>          Issue Type: Bug
>            Reporter: stack
>            Assignee: stack
>             Fix For: 0.2.0
>
>         Attachments: 670-v2.patch, 670.patch
>
>
> The global memory unit test was deadlocking because historian was trying to update .META. with flush info -- only the single regionserver was the one hosting the .META. and the regionserver global lock was in place while memory is full

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


[jira] Updated: (HBASE-670) Historian deadlocks if regionserver is at global memory boundary and is hosting .META.

Posted by "stack (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack updated HBASE-670:
------------------------

    Attachment: 670.patch

Disable flush and compaction logging by historian.  Also added logging of onlining and offlining of the historian.

> Historian deadlocks if regionserver is at global memory boundary and is hosting .META.
> --------------------------------------------------------------------------------------
>
>                 Key: HBASE-670
>                 URL: https://issues.apache.org/jira/browse/HBASE-670
>             Project: Hadoop HBase
>          Issue Type: Bug
>            Reporter: stack
>             Fix For: 0.2.0
>
>         Attachments: 670.patch
>
>
> The global memory unit test was deadlocking because historian was trying to update .META. with flush info -- only the single regionserver was the one hosting the .META. and the regionserver global lock was in place while memory is full

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


[jira] Resolved: (HBASE-670) Historian deadlocks if regionserver is at global memory boundary and is hosting .META.

Posted by "stack (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack resolved HBASE-670.
-------------------------

    Resolution: Fixed

Committed.

> Historian deadlocks if regionserver is at global memory boundary and is hosting .META.
> --------------------------------------------------------------------------------------
>
>                 Key: HBASE-670
>                 URL: https://issues.apache.org/jira/browse/HBASE-670
>             Project: Hadoop HBase
>          Issue Type: Bug
>            Reporter: stack
>            Assignee: stack
>             Fix For: 0.2.0
>
>         Attachments: 670.patch
>
>
> The global memory unit test was deadlocking because historian was trying to update .META. with flush info -- only the single regionserver was the one hosting the .META. and the regionserver global lock was in place while memory is full

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


[jira] Commented: (HBASE-670) Historian deadlocks if regionserver is at global memory boundary and is hosting .META.

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12603163#action_12603163 ] 

stack commented on HBASE-670:
-----------------------------

On IRC, was asking if could add history for .META. itself, probably the table we're most interested in.  My experience over last few days changing historian so it is only enabled after .META. has been deployed and issues like this one have me thinking it'd be hard to do.

> Historian deadlocks if regionserver is at global memory boundary and is hosting .META.
> --------------------------------------------------------------------------------------
>
>                 Key: HBASE-670
>                 URL: https://issues.apache.org/jira/browse/HBASE-670
>             Project: Hadoop HBase
>          Issue Type: Bug
>            Reporter: stack
>            Assignee: stack
>             Fix For: 0.2.0
>
>         Attachments: 670.patch
>
>
> The global memory unit test was deadlocking because historian was trying to update .META. with flush info -- only the single regionserver was the one hosting the .META. and the regionserver global lock was in place while memory is full

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