You might want to invoke a rolling restart when upgrading to a new HBase version, or when you want to apply some configuration changes. As described in the Graceful node decommissioning recipe, a rolling restart minimizes downtime because we only take a single region offline at a time rather than a whole cluster. A rolling restart keeps the region distribution the same as what it was before the restart. This is important to retain data locality.
New HBase versions are not always backward compatible. You can invoke a rolling restart to upgrade minor releases (for example, from 0.92.1 to 0.92.2), but not across major versions (for example, from 0.92.x to 0.94.x) because the protocol has changed between these versions. This will ...