You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Luis Tavarez (JIRA)" <ji...@apache.org> on 2016/12/30 14:15:58 UTC

[jira] [Commented] (ACCUMULO-4061) Add way to determine Accumulo version from a running tserver

    [ https://issues.apache.org/jira/browse/ACCUMULO-4061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15787747#comment-15787747 ] 

Luis Tavarez commented on ACCUMULO-4061:
----------------------------------------

I added the code for the tablet servers to store the version and to display it on the current monitor, however, I am not sure how to test the case of changing Accumulo versions with a "dead" tablet server. If anyone wants to test it themselves, you can checkout my [branch|https://github.com/lstav/accumulo/tree/ACCUMULO-4061]. Or if anyone can point me on the right direction to test it myself I would appreciate it.

> Add way to determine Accumulo version from a running tserver
> ------------------------------------------------------------
>
>                 Key: ACCUMULO-4061
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-4061
>             Project: Accumulo
>          Issue Type: New Feature
>          Components: tserver
>            Reporter: Ed Coleman
>            Assignee: Luis Tavarez
>            Priority: Minor
>             Fix For: 1.7.3, 1.8.1
>
>
> When upgrading by performing a rolling restart, realized that there was no way to determine the version of a running tserver other than using ps to get start time or maybe a versioned package on the classpath.
> A typical deployment structure seems to be lay down the Accumulo directories with a version and then use a symbolic link to point to the version that is used at run-time. As an example:
> /usr/local/accumulo
> /usr/local/accumulo/accumulo-1.6.2
> /usr/local/accumulo/accumulo-1.6.3
> /usr/local/accumulo/accumulo-latest --> /usr/local/accumulo/accumulo-1.6.3
> To upgrade without a complete shutdown, we lay down the new version, update the symbolic link and then perform a rolling restart of the tservers, with scripts, env,... using the symbolic link to specify which version are used.
> Realized that if the rolling shutdown failed for any particular tserver, it would keep running the previous version.  The only way to determine if we were running the desired version was to use ps and check the running time of the tserver process.
> The could also be a situation were a "dead" server would be offline during the upgrade and not receive the new version. If the server was resurrected and services started before updated versions are installed it could be difficult to determine exactly what version of the tserver was running. 
> It would be nice if there was some way to ask a running tserver what version it is. That way, post-upgrade we could confirm that all running tservers reply with the expected version.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)