You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Matt Foley (JIRA)" <ji...@apache.org> on 2011/03/05 02:50:45 UTC
[jira] Created: (HDFS-1726) query method for what kind of safe mode
the Namenode is in
query method for what kind of safe mode the Namenode is in
----------------------------------------------------------
Key: HDFS-1726
URL: https://issues.apache.org/jira/browse/HDFS-1726
Project: Hadoop HDFS
Issue Type: Improvement
Components: name-node
Affects Versions: 0.22.0
Reporter: Matt Foley
Assignee: Matt Foley
Fix For: 0.23.0
If we could differentiate between "startup safemode" vs other safemode, it would be easier to do startup optimizations like HDFS-1295. Looking at FSNamesystem, this can be queried, but not with a single query, and the semantics are not reliable under future changes. Also, the FSNamesystem code itself, internally, uses more than one way to test for manual safe mode.
Proposal is to create a status field and query method in FSNamesystem with enum values
{NOT_IN_SAFEMODE, SAFEMODE_STARTUP, SAFEMODE_EXTENSION, SAFEMODE_MANUAL}
If in the future we add automatic fallback to safe mode, we would add value SAFEMODE_AUTOMATIC.
This change will make it easier to do startup optimizations, and will also allow making the safemode management code in FSNamesystem simpler and more consistent.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HDFS-1726) query method for what kind of safe
mode the Namenode is in
Posted by "Matt Foley (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HDFS-1726?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Matt Foley updated HDFS-1726:
-----------------------------
Attachment: SafeModeState_v2.patch
Besides creating SafeModeState and a way to query it, this patch fixes two minor bugs found during development:
- when entering manual mode via the SafeModeInfo() ctor, sets "reached" = -1. This caused an incorrect getTurnOffTip() result, because "reached == -1" is supposed to mean safe mode is off, and it is not needed for manual mode detection, which relies on "extension = Integer.MAX_VALUE". Changed to set it to 0, consistent with being in safe mode (regardless of reason).
- safeMode.incrementSafeBlockCount() and safeMode.decrementSafeBlockCount() call checkMode() on every call, regardless of whether they change anything that needs checkMode(). Changed to only call checkMode() if they succeed in changing the blockSafe count.
Finally, found some inconsistencies in the use of "synchronized". Opened ticket HDFS-1790 to clarify them.
> query method for what kind of safe mode the Namenode is in
> ----------------------------------------------------------
>
> Key: HDFS-1726
> URL: https://issues.apache.org/jira/browse/HDFS-1726
> Project: Hadoop HDFS
> Issue Type: Improvement
> Components: name-node
> Affects Versions: 0.22.0
> Reporter: Matt Foley
> Assignee: Matt Foley
> Fix For: 0.23.0
>
> Attachments: SafeModeState_v2.patch
>
>
> If we could differentiate between "startup safemode" vs other safemode, it would be easier to do startup optimizations like HDFS-1295. Looking at FSNamesystem, this can be queried, but not with a single query, and the semantics are not reliable under future changes. Also, the FSNamesystem code itself, internally, uses more than one way to test for manual safe mode.
> Proposal is to create a status field and query method in FSNamesystem with enum values
> {NOT_IN_SAFEMODE, SAFEMODE_STARTUP, SAFEMODE_EXTENSION, SAFEMODE_MANUAL}
> If in the future we add automatic fallback to safe mode, we would add value SAFEMODE_AUTOMATIC.
> This change will make it easier to do startup optimizations, and will also allow making the safemode management code in FSNamesystem simpler and more consistent.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (HDFS-1726) query method for what kind of safe
mode the Namenode is in
Posted by "Aaron T. Myers (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HDFS-1726?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13003023#comment-13003023 ]
Aaron T. Myers commented on HDFS-1726:
--------------------------------------
HDFS-1594 could make use of the proposed SAFEMODE_AUTOMATIC status.
> query method for what kind of safe mode the Namenode is in
> ----------------------------------------------------------
>
> Key: HDFS-1726
> URL: https://issues.apache.org/jira/browse/HDFS-1726
> Project: Hadoop HDFS
> Issue Type: Improvement
> Components: name-node
> Affects Versions: 0.22.0
> Reporter: Matt Foley
> Assignee: Matt Foley
> Fix For: 0.23.0
>
>
> If we could differentiate between "startup safemode" vs other safemode, it would be easier to do startup optimizations like HDFS-1295. Looking at FSNamesystem, this can be queried, but not with a single query, and the semantics are not reliable under future changes. Also, the FSNamesystem code itself, internally, uses more than one way to test for manual safe mode.
> Proposal is to create a status field and query method in FSNamesystem with enum values
> {NOT_IN_SAFEMODE, SAFEMODE_STARTUP, SAFEMODE_EXTENSION, SAFEMODE_MANUAL}
> If in the future we add automatic fallback to safe mode, we would add value SAFEMODE_AUTOMATIC.
> This change will make it easier to do startup optimizations, and will also allow making the safemode management code in FSNamesystem simpler and more consistent.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HDFS-1726) query method for what kind of safe
mode the Namenode is in
Posted by "Steve Loughran (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HDFS-1726?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13413896#comment-13413896 ]
Steve Loughran commented on HDFS-1726:
--------------------------------------
It'd be nice to also have text for end users, which could also be set in a manual entry mode. This would let the ops teams add text like "down for rack maintenance back at 18:00" for the web UI and exception text
> query method for what kind of safe mode the Namenode is in
> ----------------------------------------------------------
>
> Key: HDFS-1726
> URL: https://issues.apache.org/jira/browse/HDFS-1726
> Project: Hadoop HDFS
> Issue Type: Improvement
> Components: name-node
> Affects Versions: 0.22.0
> Reporter: Matt Foley
> Assignee: Matt Foley
> Fix For: 0.24.0
>
> Attachments: SafeModeState_v2.patch
>
>
> If we could differentiate between "startup safemode" vs other safemode, it would be easier to do startup optimizations like HDFS-1295. Looking at FSNamesystem, this can be queried, but not with a single query, and the semantics are not reliable under future changes. Also, the FSNamesystem code itself, internally, uses more than one way to test for manual safe mode.
> Proposal is to create a status field and query method in FSNamesystem with enum values
> {NOT_IN_SAFEMODE, SAFEMODE_STARTUP, SAFEMODE_EXTENSION, SAFEMODE_MANUAL}
> If in the future we add automatic fallback to safe mode, we would add value SAFEMODE_AUTOMATIC.
> This change will make it easier to do startup optimizations, and will also allow making the safemode management code in FSNamesystem simpler and more consistent.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira