Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Jul 2016 09:57:16 +0000 (UTC)
From:      Andriy Gapon <avg@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org
Subject:   svn commit: r303082 - vendor/illumos/dist/cmd/zdb
Message-ID:  <201607200957.u6K9vGAs053613@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: avg
Date: Wed Jul 20 09:57:16 2016
New Revision: 303082
URL: https://svnweb.freebsd.org/changeset/base/303082

Log:
  6391 Override default SPA config location via environment
  
  illumos/illumos-gate@ae24175b2b25e9fb4bfd9ac0648b57e0735b6651
  https://github.com/illumos/illumos-gate/commit/ae24175b2b25e9fb4bfd9ac0648b57e0735b6651
  
  https://www.illumos.org/issues/6391
    When using zdb with non-default SPA config file it is not convenient
    to add -U <non-default-config-file-path> all the time. This commit
    introduces support for setting/overriding SPA config location via
    environment variable 'SPA_CONFIG_PATH'.
    If -U flag is specified in the command line it will override any other
    value as usual.
  
  https://github.com/zfsonlinux/zfs/commit/64d7b6cf75e52a4698d9bdec61745573c39d2e5a
  
  Reviewed by: Brian Behlendorf <behlendorf1@llnl.gov>
  Reviewed by: Richard Yao <ryao@gentoo.org>
  Reviewed by: Matthew Ahrens <mahrens@delphix.com>
  Reviewed by: Will Andrews <will@freebsd.org>
  Reviewed by: George Wilson <george.wilson@delphix.com>
  Approved by: Robert Mustacchi <rm@joyent.com>
  Author: Cyril Plisko <cyril.plisko@mountall.com>

Modified:
  vendor/illumos/dist/cmd/zdb/zdb.c

Modified: vendor/illumos/dist/cmd/zdb/zdb.c
==============================================================================
--- vendor/illumos/dist/cmd/zdb/zdb.c	Wed Jul 20 09:54:18 2016	(r303081)
+++ vendor/illumos/dist/cmd/zdb/zdb.c	Wed Jul 20 09:57:16 2016	(r303082)
@@ -3529,12 +3529,22 @@ main(int argc, char **argv)
 	nvlist_t *policy = NULL;
 	uint64_t max_txg = UINT64_MAX;
 	int rewind = ZPOOL_NEVER_REWIND;
+	char *spa_config_path_env;
 
 	(void) setrlimit(RLIMIT_NOFILE, &rl);
 	(void) enable_extended_FILE_stdio(-1, -1);
 
 	dprintf_setup(&argc, argv);
 
+	/*
+	 * If there is an environment variable SPA_CONFIG_PATH it overrides
+	 * default spa_config_path setting. If -U flag is specified it will
+	 * override this environment variable settings once again.
+	 */
+	spa_config_path_env = getenv("SPA_CONFIG_PATH");
+	if (spa_config_path_env != NULL)
+		spa_config_path = spa_config_path_env;
+
 	while ((c = getopt(argc, argv,
 	    "bcdhilmMI:suCDRSAFLXx:evp:t:U:P")) != -1) {
 		switch (c) {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201607200957.u6K9vGAs053613>