|
@@ -91,9 +91,11 @@ public class BasicOzoneClientAdapterImpl implements OzoneClientAdapter {
|
|
|
ClassLoader contextClassLoader =
|
|
|
Thread.currentThread().getContextClassLoader();
|
|
|
Thread.currentThread().setContextClassLoader(null);
|
|
|
- OzoneConfiguration conf = new OzoneConfiguration();
|
|
|
- Thread.currentThread().setContextClassLoader(contextClassLoader);
|
|
|
- return conf;
|
|
|
+ try {
|
|
|
+ return new OzoneConfiguration();
|
|
|
+ } finally {
|
|
|
+ Thread.currentThread().setContextClassLoader(contextClassLoader);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
public BasicOzoneClientAdapterImpl(OzoneConfiguration conf, String volumeStr,
|
|
@@ -109,38 +111,39 @@ public class BasicOzoneClientAdapterImpl implements OzoneClientAdapter {
|
|
|
ClassLoader contextClassLoader =
|
|
|
Thread.currentThread().getContextClassLoader();
|
|
|
Thread.currentThread().setContextClassLoader(null);
|
|
|
- OzoneConfiguration conf = OzoneConfiguration.of(hadoopConf);
|
|
|
|
|
|
- if (omHost == null && OmUtils.isServiceIdsDefined(conf)) {
|
|
|
- // When the host name or service id isn't given
|
|
|
- // but ozone.om.service.ids is defined, declare failure.
|
|
|
+ try {
|
|
|
+ OzoneConfiguration conf = OzoneConfiguration.of(hadoopConf);
|
|
|
|
|
|
- // This is a safety precaution that prevents the client from
|
|
|
- // accidentally failing over to an unintended OM.
|
|
|
- throw new IllegalArgumentException("Service ID or host name must not"
|
|
|
- + " be omitted when ozone.om.service.ids is defined.");
|
|
|
- }
|
|
|
+ if (omHost == null && OmUtils.isServiceIdsDefined(conf)) {
|
|
|
+ // When the host name or service id isn't given
|
|
|
+ // but ozone.om.service.ids is defined, declare failure.
|
|
|
|
|
|
- if (omPort != -1) {
|
|
|
- // When the port number is specified, perform the following check
|
|
|
- if (OmUtils.isOmHAServiceId(conf, omHost)) {
|
|
|
- // If omHost is a service id, it shouldn't use a port
|
|
|
- throw new IllegalArgumentException("Port " + omPort +
|
|
|
- " specified in URI but host '" + omHost + "' is "
|
|
|
- + "a logical (HA) OzoneManager and does not use port information.");
|
|
|
+ // This is a safety precaution that prevents the client from
|
|
|
+ // accidentally failing over to an unintended OM.
|
|
|
+ throw new IllegalArgumentException("Service ID or host name must not"
|
|
|
+ + " be omitted when ozone.om.service.ids is defined.");
|
|
|
}
|
|
|
- } else {
|
|
|
- // When port number is not specified, read it from config
|
|
|
- omPort = OmUtils.getOmRpcPort(conf);
|
|
|
- }
|
|
|
|
|
|
- SecurityConfig secConfig = new SecurityConfig(conf);
|
|
|
+ if (omPort != -1) {
|
|
|
+ // When the port number is specified, perform the following check
|
|
|
+ if (OmUtils.isOmHAServiceId(conf, omHost)) {
|
|
|
+ // If omHost is a service id, it shouldn't use a port
|
|
|
+ throw new IllegalArgumentException("Port " + omPort +
|
|
|
+ " specified in URI but host '" + omHost + "' is a "
|
|
|
+ + "logical (HA) OzoneManager and does not use port information.");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // When port number is not specified, read it from config
|
|
|
+ omPort = OmUtils.getOmRpcPort(conf);
|
|
|
+ }
|
|
|
|
|
|
- if (secConfig.isSecurityEnabled()) {
|
|
|
- this.securityEnabled = true;
|
|
|
- }
|
|
|
+ SecurityConfig secConfig = new SecurityConfig(conf);
|
|
|
+
|
|
|
+ if (secConfig.isSecurityEnabled()) {
|
|
|
+ this.securityEnabled = true;
|
|
|
+ }
|
|
|
|
|
|
- try {
|
|
|
String replicationTypeConf =
|
|
|
conf.get(OzoneConfigKeys.OZONE_REPLICATION_TYPE,
|
|
|
OzoneConfigKeys.OZONE_REPLICATION_TYPE_DEFAULT);
|