You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ng...@apache.org on 2021/04/06 15:40:22 UTC
[hive] 38/38: HIVE-24396: Additional feedback incorporated (Naveen
Gangam) Removed ReplicationSpec for connectors Notification event for alter
connector removed some code.
This is an automated email from the ASF dual-hosted git repository.
ngangam pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git
commit 2eb0e00d5d614d3144519cf4861ec1759a373c7d
Author: Naveen Gangam <ng...@cloudera.com>
AuthorDate: Fri Apr 2 16:02:20 2021 -0400
HIVE-24396: Additional feedback incorporated (Naveen Gangam)
Removed ReplicationSpec for connectors
Notification event for alter connector
removed some code.
---
.../alter/AbstractAlterDataConnectorDesc.java | 13 +----
.../alter/AbstractAlterDataConnectorOperation.java | 12 ++---
.../owner/AlterDataConnectorSetOwnerAnalyzer.java | 2 +-
.../owner/AlterDataConnectorSetOwnerDesc.java | 5 +-
.../owner/AlterDataConnectorSetOwnerOperation.java | 4 +-
.../AlterDataConnectorSetPropertiesAnalyzer.java | 2 +-
.../AlterDataConnectorSetPropertiesDesc.java | 6 +--
.../AlterDataConnectorSetPropertiesOperation.java | 3 +-
.../alter/url/AlterDataConnectorSetUrlDesc.java | 2 +-
.../url/AlterDataConnectorSetUrlOperation.java | 3 +-
.../drop/DropDataConnectorAnalyzer.java | 3 +-
.../dataconnector/drop/DropDataConnectorDesc.java | 13 +----
.../drop/DropDataConnectorOperation.java | 22 +--------
.../hive/metastore/MetaStoreEventListener.java | 8 +++
.../hive/metastore/MetaStoreListenerNotifier.java | 8 +++
.../DataConnectorProviderFactory.java | 12 -----
.../metastore/events/AlterDataConnectorEvent.java | 57 ++++++++++++++++++++++
17 files changed, 92 insertions(+), 83 deletions(-)
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/AbstractAlterDataConnectorDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/AbstractAlterDataConnectorDesc.java
index 281378f..2258161 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/AbstractAlterDataConnectorDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/AbstractAlterDataConnectorDesc.java
@@ -21,7 +21,6 @@ package org.apache.hadoop.hive.ql.ddl.dataconnector.alter;
import java.io.Serializable;
import org.apache.hadoop.hive.ql.ddl.DDLDesc;
-import org.apache.hadoop.hive.ql.parse.ReplicationSpec;
import org.apache.hadoop.hive.ql.plan.Explain;
import org.apache.hadoop.hive.ql.plan.Explain.Level;
@@ -32,23 +31,13 @@ public abstract class AbstractAlterDataConnectorDesc implements DDLDesc, Seriali
private static final long serialVersionUID = 1L;
private final String connectorName;
- private final ReplicationSpec replicationSpec;
- public AbstractAlterDataConnectorDesc(String connectorName, ReplicationSpec replicationSpec) {
+ public AbstractAlterDataConnectorDesc(String connectorName) {
this.connectorName = connectorName;
- this.replicationSpec = replicationSpec;
}
@Explain(displayName="name", explainLevels = {Level.USER, Level.DEFAULT, Level.EXTENDED })
public String getConnectorName() {
return connectorName;
}
-
- /**
- * @return what kind of replication scope this alter is running under.
- * This can result in a "ALTER IF NEWER THAN" kind of semantic
- */
- public ReplicationSpec getReplicationSpec() {
- return this.replicationSpec;
- }
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/AbstractAlterDataConnectorOperation.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/AbstractAlterDataConnectorOperation.java
index 84093e7..01da755 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/AbstractAlterDataConnectorOperation.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/AbstractAlterDataConnectorOperation.java
@@ -43,17 +43,13 @@ public abstract class AbstractAlterDataConnectorOperation<T extends AbstractAlte
}
Map<String, String> params = connector.getParameters();
- if ((desc.getReplicationSpec() != null) &&
- !desc.getReplicationSpec().allowEventReplacementInto(params)) {
- LOG.debug("DDLTask: Alter Connector {} is skipped as connector is newer than update", dcName);
- return 0; // no replacement, the existing connector state is newer than our update.
- }
-
- doAlteration(connector, params);
+ // this call is to set the values from the alter descriptor onto the connector object
+ doAlteration(connector);
+ // This is the HMS metadata operation to modify the object
context.getDb().alterDataConnector(connector.getName(), connector);
return 0;
}
- protected abstract void doAlteration(DataConnector connector, Map<String, String> params) throws HiveException;
+ protected abstract void doAlteration(DataConnector connector) throws HiveException;
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerAnalyzer.java
index 1fb34e1..4634f82 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerAnalyzer.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerAnalyzer.java
@@ -48,7 +48,7 @@ public class AlterDataConnectorSetOwnerAnalyzer extends AbstractAlterDataConnect
throw new SemanticException("Owner type can't be null in alter connector set owner command");
}
- AlterDataConnectorSetOwnerDesc desc = new AlterDataConnectorSetOwnerDesc(connectorName, principalDesc, null);
+ AlterDataConnectorSetOwnerDesc desc = new AlterDataConnectorSetOwnerDesc(connectorName, principalDesc);
addAlterDataConnectorDesc(desc);
}
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerDesc.java
index 8d2c0c3..70c923d7 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerDesc.java
@@ -20,7 +20,6 @@ package org.apache.hadoop.hive.ql.ddl.dataconnector.alter.owner;
import org.apache.hadoop.hive.ql.ddl.dataconnector.alter.AbstractAlterDataConnectorDesc;
import org.apache.hadoop.hive.ql.ddl.privilege.PrincipalDesc;
-import org.apache.hadoop.hive.ql.parse.ReplicationSpec;
import org.apache.hadoop.hive.ql.plan.Explain;
import org.apache.hadoop.hive.ql.plan.Explain.Level;
@@ -33,8 +32,8 @@ public class AlterDataConnectorSetOwnerDesc extends AbstractAlterDataConnectorDe
private final PrincipalDesc ownerPrincipal;
- public AlterDataConnectorSetOwnerDesc(String connectorName, PrincipalDesc ownerPrincipal, ReplicationSpec replicationSpec) {
- super(connectorName, replicationSpec);
+ public AlterDataConnectorSetOwnerDesc(String connectorName, PrincipalDesc ownerPrincipal) {
+ super(connectorName);
this.ownerPrincipal = ownerPrincipal;
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerOperation.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerOperation.java
index 7f06a4d..bd740a5 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerOperation.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/owner/AlterDataConnectorSetOwnerOperation.java
@@ -18,8 +18,6 @@
package org.apache.hadoop.hive.ql.ddl.dataconnector.alter.owner;
-import java.util.Map;
-
import org.apache.hadoop.hive.metastore.api.DataConnector;
import org.apache.hadoop.hive.ql.ddl.DDLOperationContext;
import org.apache.hadoop.hive.ql.ddl.dataconnector.alter.AbstractAlterDataConnectorOperation;
@@ -34,7 +32,7 @@ public class AlterDataConnectorSetOwnerOperation extends
}
@Override
- protected void doAlteration(DataConnector connector, Map<String, String> params) {
+ protected void doAlteration(DataConnector connector) {
connector.setOwnerName(desc.getOwnerPrincipal().getName());
connector.setOwnerType(desc.getOwnerPrincipal().getType());
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesAnalyzer.java
index e8fb1b9..1d347b0 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesAnalyzer.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesAnalyzer.java
@@ -51,7 +51,7 @@ public class AlterDataConnectorSetPropertiesAnalyzer extends AbstractAlterDataCo
}
}
- AlterDataConnectorSetPropertiesDesc desc = new AlterDataConnectorSetPropertiesDesc(connectorName, dbProps, null);
+ AlterDataConnectorSetPropertiesDesc desc = new AlterDataConnectorSetPropertiesDesc(connectorName, dbProps);
addAlterDataConnectorDesc(desc);
}
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesDesc.java
index 07958c2..d53260e 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesDesc.java
@@ -21,7 +21,6 @@ package org.apache.hadoop.hive.ql.ddl.dataconnector.alter.properties;
import java.util.Map;
import org.apache.hadoop.hive.ql.ddl.dataconnector.alter.AbstractAlterDataConnectorDesc;
-import org.apache.hadoop.hive.ql.parse.ReplicationSpec;
import org.apache.hadoop.hive.ql.plan.Explain;
import org.apache.hadoop.hive.ql.plan.Explain.Level;
@@ -34,9 +33,8 @@ public class AlterDataConnectorSetPropertiesDesc extends AbstractAlterDataConnec
private final Map<String, String> dcProperties;
- public AlterDataConnectorSetPropertiesDesc(String connectorName, Map<String, String> dcProperties,
- ReplicationSpec replicationSpec) {
- super(connectorName, replicationSpec);
+ public AlterDataConnectorSetPropertiesDesc(String connectorName, Map<String, String> dcProperties) {
+ super(connectorName);
this.dcProperties = dcProperties;
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesOperation.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesOperation.java
index c9fa032..2037539 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesOperation.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/properties/AlterDataConnectorSetPropertiesOperation.java
@@ -34,8 +34,9 @@ public class AlterDataConnectorSetPropertiesOperation
}
@Override
- protected void doAlteration(DataConnector connector, Map<String, String> params) {
+ protected void doAlteration(DataConnector connector) {
Map<String, String> newParams = desc.getConnectorProperties();
+ Map<String, String> params = connector.getParameters();
// if both old and new params are not null, merge them
if (params != null && newParams != null) {
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/url/AlterDataConnectorSetUrlDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/url/AlterDataConnectorSetUrlDesc.java
index a142ea0..9416a97 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/url/AlterDataConnectorSetUrlDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/url/AlterDataConnectorSetUrlDesc.java
@@ -32,7 +32,7 @@ public class AlterDataConnectorSetUrlDesc extends AbstractAlterDataConnectorDesc
private final String url;
public AlterDataConnectorSetUrlDesc(String connectorName, String location) {
- super(connectorName, null);
+ super(connectorName);
this.url = location;
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/url/AlterDataConnectorSetUrlOperation.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/url/AlterDataConnectorSetUrlOperation.java
index 190e833..364187b 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/url/AlterDataConnectorSetUrlOperation.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/alter/url/AlterDataConnectorSetUrlOperation.java
@@ -20,7 +20,6 @@ package org.apache.hadoop.hive.ql.ddl.dataconnector.alter.url;
import java.net.URI;
import java.net.URISyntaxException;
-import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import org.apache.hadoop.hive.metastore.api.DataConnector;
@@ -39,7 +38,7 @@ public class AlterDataConnectorSetUrlOperation extends
}
@Override
- protected void doAlteration(DataConnector connector, Map<String, String> params) throws HiveException {
+ protected void doAlteration(DataConnector connector) throws HiveException {
try {
String newUrl = desc.getURL();
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorAnalyzer.java
index 37817db..7cb8b8b 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorAnalyzer.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorAnalyzer.java
@@ -28,7 +28,6 @@ import org.apache.hadoop.hive.ql.hooks.WriteEntity;
import org.apache.hadoop.hive.ql.parse.ASTNode;
import org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer;
import org.apache.hadoop.hive.ql.parse.HiveParser;
-import org.apache.hadoop.hive.ql.parse.ReplicationSpec;
import org.apache.hadoop.hive.ql.parse.SemanticException;
/**
@@ -53,7 +52,7 @@ public class DropDataConnectorAnalyzer extends BaseSemanticAnalyzer {
inputs.add(new ReadEntity(connector));
outputs.add(new WriteEntity(connector, WriteEntity.WriteType.DDL_EXCLUSIVE));
- DropDataConnectorDesc desc = new DropDataConnectorDesc(connectorName, ifExists, new ReplicationSpec());
+ DropDataConnectorDesc desc = new DropDataConnectorDesc(connectorName, ifExists);
rootTasks.add(TaskFactory.get(new DDLWork(getInputs(), getOutputs(), desc)));
}
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorDesc.java
index 8e3bc6b..d07c976 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorDesc.java
@@ -21,7 +21,6 @@ package org.apache.hadoop.hive.ql.ddl.dataconnector.drop;
import java.io.Serializable;
import org.apache.hadoop.hive.ql.ddl.DDLDesc;
-import org.apache.hadoop.hive.ql.parse.ReplicationSpec;
import org.apache.hadoop.hive.ql.plan.Explain;
import org.apache.hadoop.hive.ql.plan.Explain.Level;
@@ -34,16 +33,10 @@ public class DropDataConnectorDesc implements DDLDesc, Serializable {
private final String connectorName;
private final boolean ifExists;
- private final ReplicationSpec replicationSpec;
- public DropDataConnectorDesc(String connectorName, boolean ifExists, ReplicationSpec replicationSpec) {
- this(connectorName, ifExists, false, replicationSpec);
- }
-
- public DropDataConnectorDesc(String connectorName, boolean ifExists, boolean cascade, ReplicationSpec replicationSpec) {
+ public DropDataConnectorDesc(String connectorName, boolean ifExists) {
this.connectorName = connectorName;
this.ifExists = ifExists;
- this.replicationSpec = replicationSpec;
}
@Explain(displayName = "connector", explainLevels = { Level.USER, Level.DEFAULT, Level.EXTENDED })
@@ -55,8 +48,4 @@ public class DropDataConnectorDesc implements DDLDesc, Serializable {
public boolean getIfExists() {
return ifExists;
}
-
- public ReplicationSpec getReplicationSpec() {
- return replicationSpec;
- }
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorOperation.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorOperation.java
index 64692f7..81a41b9 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorOperation.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/dataconnector/drop/DropDataConnectorOperation.java
@@ -18,15 +18,11 @@
package org.apache.hadoop.hive.ql.ddl.dataconnector.drop;
-import org.apache.hadoop.hive.llap.LlapHiveUtils;
-import org.apache.hadoop.hive.llap.ProactiveEviction;
-import org.apache.hadoop.hive.metastore.api.DataConnector;
import org.apache.hadoop.hive.metastore.api.NoSuchObjectException;
import org.apache.hadoop.hive.ql.ErrorMsg;
import org.apache.hadoop.hive.ql.ddl.DDLOperation;
import org.apache.hadoop.hive.ql.ddl.DDLOperationContext;
import org.apache.hadoop.hive.ql.metadata.HiveException;
-import org.apache.hadoop.hive.ql.parse.ReplicationSpec;
/**
* Operation process of dropping a data connector.
@@ -39,23 +35,7 @@ public class DropDataConnectorOperation extends DDLOperation<DropDataConnectorDe
@Override
public int execute() throws HiveException {
try {
- String dcName = desc.getConnectorName();
- ReplicationSpec replicationSpec = desc.getReplicationSpec();
- if (replicationSpec.isInReplicationScope()) {
- DataConnector connector = context.getDb().getDataConnector(dcName);
- if (connector == null || !replicationSpec.allowEventReplacementInto(connector.getParameters())) {
- return 0;
- }
- }
-
- context.getDb().dropDataConnector(dcName, desc.getIfExists());
-
- // TODO is this required for Connectors
- if (LlapHiveUtils.isLlapMode(context.getConf())) {
- ProactiveEviction.Request.Builder llapEvictRequestBuilder = ProactiveEviction.Request.Builder.create();
- llapEvictRequestBuilder.addDb(dcName);
- ProactiveEviction.evict(context.getConf(), llapEvictRequestBuilder.build());
- }
+ context.getDb().dropDataConnector(desc.getConnectorName(), desc.getIfExists());
} catch (NoSuchObjectException ex) {
throw new HiveException(ex, ErrorMsg.DATACONNECTOR_NOT_EXISTS, desc.getConnectorName());
}
diff --git a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreEventListener.java b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreEventListener.java
index 78a2079..aff4855 100644
--- a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreEventListener.java
+++ b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreEventListener.java
@@ -32,6 +32,7 @@ import org.apache.hadoop.hive.metastore.events.AddSchemaVersionEvent;
import org.apache.hadoop.hive.metastore.events.AddUniqueConstraintEvent;
import org.apache.hadoop.hive.metastore.events.AlterCatalogEvent;
import org.apache.hadoop.hive.metastore.events.AlterDatabaseEvent;
+import org.apache.hadoop.hive.metastore.events.AlterDataConnectorEvent;
import org.apache.hadoop.hive.metastore.events.AlterISchemaEvent;
import org.apache.hadoop.hive.metastore.events.AddPartitionEvent;
import org.apache.hadoop.hive.metastore.events.AlterPartitionEvent;
@@ -162,6 +163,13 @@ public abstract class MetaStoreEventListener implements Configurable {
}
/**
+ * @param dcEvent alter data connector event
+ * @throws MetaException
+ */
+ public void onAlterDataConnector(AlterDataConnectorEvent dcEvent) throws MetaException {
+ }
+
+ /**
* @param dbEvent alter database event
* @throws MetaException
*/
diff --git a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreListenerNotifier.java b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreListenerNotifier.java
index 43ba3f1..d5cf811 100644
--- a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreListenerNotifier.java
+++ b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreListenerNotifier.java
@@ -34,6 +34,7 @@ import org.apache.hadoop.hive.metastore.events.AddSchemaVersionEvent;
import org.apache.hadoop.hive.metastore.events.AddUniqueConstraintEvent;
import org.apache.hadoop.hive.metastore.events.AlterCatalogEvent;
import org.apache.hadoop.hive.metastore.events.AlterDatabaseEvent;
+import org.apache.hadoop.hive.metastore.events.AlterDataConnectorEvent;
import org.apache.hadoop.hive.metastore.events.AlterISchemaEvent;
import org.apache.hadoop.hive.metastore.events.AlterPartitionEvent;
import org.apache.hadoop.hive.metastore.events.AlterSchemaVersionEvent;
@@ -140,6 +141,13 @@ public class MetaStoreListenerNotifier {
listener.onAlterDatabase((AlterDatabaseEvent)event);
}
})
+ .put(EventType.ALTER_DATACONNECTOR, new EventNotifier() {
+ @Override
+ public void notify(MetaStoreEventListener listener,
+ ListenerEvent event) throws MetaException {
+ listener.onAlterDataConnector((AlterDataConnectorEvent)event);
+ }
+ })
.put(EventType.ALTER_TABLE, new EventNotifier() {
@Override
public void notify(MetaStoreEventListener listener, ListenerEvent event) throws MetaException {
diff --git a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/dataconnector/DataConnectorProviderFactory.java b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/dataconnector/DataConnectorProviderFactory.java
index bb2d972..6d404cf 100644
--- a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/dataconnector/DataConnectorProviderFactory.java
+++ b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/dataconnector/DataConnectorProviderFactory.java
@@ -75,18 +75,6 @@ public class DataConnectorProviderFactory {
return provider;
}
- IDataConnectorProvider getDataConnectorProvider(String connectorName) {
- if (connectorName == null || connectorName.isEmpty()) {
- return null;
- }
-
- if (cache.containsKey(connectorName.toLowerCase() != null)) {
- return cache.get(connectorName.toLowerCase());
- }
- return null;
- // return getDataConnectorProvider();
- }
-
public void shutdown() {
for (IDataConnectorProvider provider: cache.values()) {
try {
diff --git a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/events/AlterDataConnectorEvent.java b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/events/AlterDataConnectorEvent.java
new file mode 100644
index 0000000..cf29b93
--- /dev/null
+++ b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/events/AlterDataConnectorEvent.java
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hadoop.hive.metastore.events;
+
+import org.apache.hadoop.classification.InterfaceAudience;
+import org.apache.hadoop.classification.InterfaceStability;
+import org.apache.hadoop.hive.metastore.IHMSHandler;
+import org.apache.hadoop.hive.metastore.api.DataConnector;
+
+/**
+ * AlterDataConnectorEvent.
+ * Event which is captured during connector alters for owner info or properties or URI
+ */
+@InterfaceAudience.Public
+@InterfaceStability.Stable
+public class AlterDataConnectorEvent extends ListenerEvent {
+ private final DataConnector oldDc;
+ private final DataConnector newDc;
+
+ public AlterDataConnectorEvent(DataConnector oldDc, DataConnector newDc, boolean status, IHMSHandler handler,
+ boolean isReplicated) {
+ super(status, handler);
+ this.oldDc = oldDc;
+ this.newDc = newDc;
+ }
+
+ /**
+ * @return the old db
+ */
+ public DataConnector getOldDataConnector() {
+ return oldDc;
+ }
+
+ /**
+ * @return the new db
+ */
+ public DataConnector getNewDataConnector() {
+ return newDc;
+ }
+
+}