You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by el...@apache.org on 2016/08/26 15:54:03 UTC

[4/9] accumulo git commit: Merge branch '1.6' into 1.7

Merge branch '1.6' into 1.7

 Conflicts:
	server/gc/src/main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java
	server/master/src/main/java/org/apache/accumulo/master/Master.java
	server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
	server/tracer/src/main/java/org/apache/accumulo/tracer/TraceServer.java
	server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java


Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/371db68c
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/371db68c
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/371db68c

Branch: refs/heads/master
Commit: 371db68cfc4a82921a0b47c886be3e88c4058cdf
Parents: ffd5028 679a1c3
Author: Sean Busbey <bu...@cloudera.com>
Authored: Wed Aug 24 10:22:25 2016 -0500
Committer: Sean Busbey <bu...@cloudera.com>
Committed: Wed Aug 24 10:22:25 2016 -0500

----------------------------------------------------------------------
 .../main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java | 2 +-
 .../master/src/main/java/org/apache/accumulo/master/Master.java  | 4 ++--
 .../src/main/java/org/apache/accumulo/monitor/Monitor.java       | 4 ++--
 .../src/main/java/org/apache/accumulo/tracer/TraceServer.java    | 4 ++--
 .../src/main/java/org/apache/accumulo/tserver/TabletServer.java  | 4 ++--
 5 files changed, 9 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/accumulo/blob/371db68c/server/gc/src/main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java
----------------------------------------------------------------------
diff --cc server/gc/src/main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java
index da25d55,0191f38..98acf9a
--- a/server/gc/src/main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java
+++ b/server/gc/src/main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java
@@@ -139,14 -133,16 +139,14 @@@ public class SimpleGarbageCollector ext
  
    private GCStatus status = new GCStatus(new GcCycleStats(), new GcCycleStats(), new GcCycleStats(), new GcCycleStats());
  
 -  private Instance instance;
 -
    public static void main(String[] args) throws UnknownHostException, IOException {
-     SecurityUtil.serverLogin(SiteConfiguration.getInstance());
      final String app = "gc";
      Accumulo.setupLogging(app);
 -    SecurityUtil.serverLogin(ServerConfiguration.getSiteConfiguration());
++    SecurityUtil.serverLogin(SiteConfiguration.getInstance());
      Instance instance = HdfsZooInstance.getInstance();
 +    ServerConfigurationFactory conf = new ServerConfigurationFactory(instance);
      log.info("Version " + Constants.VERSION);
      log.info("Instance " + instance.getInstanceID());
 -    ServerConfiguration conf = new ServerConfiguration(instance);
      final VolumeManager fs = VolumeManagerImpl.get();
      Accumulo.init(fs, conf, app);
      Opts opts = new Opts();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/371db68c/server/master/src/main/java/org/apache/accumulo/master/Master.java
----------------------------------------------------------------------
diff --cc server/master/src/main/java/org/apache/accumulo/master/Master.java
index 5a2a346,14bdd6b..dc26a11
--- a/server/master/src/main/java/org/apache/accumulo/master/Master.java
+++ b/server/master/src/main/java/org/apache/accumulo/master/Master.java
@@@ -1345,14 -1156,15 +1345,14 @@@ public class Master extends AccumuloSer
  
    public static void main(String[] args) throws Exception {
      try {
+       final String app = "master";
+       Accumulo.setupLogging(app);
 -      SecurityUtil.serverLogin(ServerConfiguration.getSiteConfiguration());
 +      SecurityUtil.serverLogin(SiteConfiguration.getInstance());
  
        ServerOpts opts = new ServerOpts();
-       final String app = "master";
        opts.parseArgs(app, args);
        String hostname = opts.getAddress();
-       Accumulo.setupLogging(app);
 -      Instance instance = HdfsZooInstance.getInstance();
 -      ServerConfiguration conf = new ServerConfiguration(instance);
 +      ServerConfigurationFactory conf = new ServerConfigurationFactory(HdfsZooInstance.getInstance());
        VolumeManager fs = VolumeManagerImpl.get();
        Accumulo.init(fs, conf, app);
        Master master = new Master(conf, fs, hostname);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/371db68c/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
----------------------------------------------------------------------
diff --cc server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
index c3dd773,e5ba9e4..58cf921
--- a/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
+++ b/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
@@@ -417,18 -422,17 +417,18 @@@ public class Monitor 
    }
  
    public static void main(String[] args) throws Exception {
+     final String app = "monitor";
+     Accumulo.setupLogging(app);
 -    SecurityUtil.serverLogin(ServerConfiguration.getSiteConfiguration());
 +    SecurityUtil.serverLogin(SiteConfiguration.getInstance());
  
      ServerOpts opts = new ServerOpts();
-     final String app = "monitor";
      opts.parseArgs(app, args);
      String hostname = opts.getAddress();
  
-     Accumulo.setupLogging(app);
      VolumeManager fs = VolumeManagerImpl.get();
      instance = HdfsZooInstance.getInstance();
 -    config = new ServerConfiguration(instance);
 +    config = new ServerConfigurationFactory(instance);
 +    context = new AccumuloServerContext(config);
      log.info("Version " + Constants.VERSION);
      log.info("Instance " + instance.getInstanceID());
      Accumulo.init(fs, config, app);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/371db68c/server/tracer/src/main/java/org/apache/accumulo/tracer/TraceServer.java
----------------------------------------------------------------------
diff --cc server/tracer/src/main/java/org/apache/accumulo/tracer/TraceServer.java
index 2d5d68d,ebfed9c..4b07dcc
--- a/server/tracer/src/main/java/org/apache/accumulo/tracer/TraceServer.java
+++ b/server/tracer/src/main/java/org/apache/accumulo/tracer/TraceServer.java
@@@ -305,41 -291,14 +305,41 @@@ public class TraceServer implements Wat
      zoo.exists(path, this);
    }
  
 +  private static void loginTracer(AccumuloConfiguration acuConf) {
 +    Map<String,String> loginMap = acuConf.getAllPropertiesWithPrefix(Property.TRACE_TOKEN_PROPERTY_PREFIX);
 +    String keyTab = loginMap.get(Property.TRACE_TOKEN_PROPERTY_PREFIX.getKey() + "keytab");
 +    if (keyTab == null || keyTab.length() == 0) {
 +      keyTab = acuConf.getPath(Property.GENERAL_KERBEROS_KEYTAB);
 +    }
 +    if (keyTab == null || keyTab.length() == 0)
 +      return;
 +
 +    String principalConfig = acuConf.get(Property.TRACE_USER);
 +    if (principalConfig == null || principalConfig.length() == 0)
 +      return;
 +
 +    log.info("Attempting to login as {} with {}", principalConfig, keyTab);
 +    if (SecurityUtil.login(principalConfig, keyTab)) {
 +      try {
 +        // This spawns a thread to periodically renew the logged in (trace) user
 +        UserGroupInformation.getLoginUser();
 +        return;
 +      } catch (IOException io) {
 +        log.error("Error starting up renewal thread. This shouldn't be happening.", io);
 +      }
 +    }
 +
 +    throw new RuntimeException("Failed to perform Kerberos login for " + principalConfig + " using  " + keyTab);
 +  }
 +
    public static void main(String[] args) throws Exception {
+     final String app = "tracer";
+     Accumulo.setupLogging(app);
 -    SecurityUtil.serverLogin(ServerConfiguration.getSiteConfiguration());
 +    loginTracer(SiteConfiguration.getInstance());
      ServerOpts opts = new ServerOpts();
-     final String app = "tracer";
      opts.parseArgs(app, args);
-     Accumulo.setupLogging(app);
      Instance instance = HdfsZooInstance.getInstance();
 -    ServerConfiguration conf = new ServerConfiguration(instance);
 +    ServerConfigurationFactory conf = new ServerConfigurationFactory(instance);
      VolumeManager fs = VolumeManagerImpl.get();
      Accumulo.init(fs, conf, app);
      String hostname = opts.getAddress();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/371db68c/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
----------------------------------------------------------------------
diff --cc server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
index a7abe05,2fdae29..6762c53
--- a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
+++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
@@@ -2920,30 -3736,20 +2920,30 @@@ public class TabletServer extends Accum
  
    public static void main(String[] args) throws IOException {
      try {
+       final String app = "tserver";
+       Accumulo.setupLogging(app);
 -      SecurityUtil.serverLogin(ServerConfiguration.getSiteConfiguration());
 +      SecurityUtil.serverLogin(SiteConfiguration.getInstance());
        ServerOpts opts = new ServerOpts();
-       final String app = "tserver";
        opts.parseArgs(app, args);
        String hostname = opts.getAddress();
-       Accumulo.setupLogging(app);
 -      final Instance instance = HdfsZooInstance.getInstance();
 -      ServerConfiguration conf = new ServerConfiguration(instance);
 +      ServerConfigurationFactory conf = new ServerConfigurationFactory(HdfsZooInstance.getInstance());
        VolumeManager fs = VolumeManagerImpl.get();
        Accumulo.init(fs, conf, app);
 -      TabletServer server = new TabletServer(conf, fs);
 +      final TabletServer server = new TabletServer(conf, fs);
        server.config(hostname);
 -      Accumulo.enableTracing(hostname, app);
 -      server.run();
 +      DistributedTrace.enable(hostname, app, conf.getConfiguration());
 +      if (UserGroupInformation.isSecurityEnabled()) {
 +        UserGroupInformation loginUser = UserGroupInformation.getLoginUser();
 +        loginUser.doAs(new PrivilegedExceptionAction<Void>() {
 +          @Override
 +          public Void run() {
 +            server.run();
 +            return null;
 +          }
 +        });
 +      } else {
 +        server.run();
 +      }
      } catch (Exception ex) {
        log.error("Uncaught exception in TabletServer.main, exiting", ex);
        System.exit(1);