You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by mh...@apache.org on 2018/03/14 22:27:30 UTC

asterixdb git commit: [ASTERIXDB-2329][MTD] Remove Invalid Find Dataset

Repository: asterixdb
Updated Branches:
  refs/heads/master 1a99f00bd -> d6d42c861


[ASTERIXDB-2329][MTD] Remove Invalid Find Dataset

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
- Remove invalid findDataset from MetadataManager.
- Add test case for dropping and recreating a dataverse
  with indexes and data.

Change-Id: I59b084c85279d926aa60fb7bfcd1a9f6e5935f2a
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2482
Sonar-Qube: Jenkins <je...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Contrib: Jenkins <je...@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Luo Chen <cl...@uci.edu>
Reviewed-by: Michael Blow <mb...@apache.org>


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

Branch: refs/heads/master
Commit: d6d42c8616454733bcfbe8fb44856fc71992669a
Parents: 1a99f00
Author: Murtadha Hubail <mh...@apache.org>
Authored: Wed Mar 14 15:43:15 2018 +0300
Committer: Murtadha Hubail <mh...@apache.org>
Committed: Wed Mar 14 15:27:01 2018 -0700

----------------------------------------------------------------------
 .../test/metadata/MetadataManagerTest.java      | 64 ++++++++++++++++++++
 .../asterix/metadata/MetadataManager.java       | 10 +--
 2 files changed, 65 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/asterixdb/blob/d6d42c86/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/metadata/MetadataManagerTest.java
----------------------------------------------------------------------
diff --git a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/metadata/MetadataManagerTest.java b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/metadata/MetadataManagerTest.java
new file mode 100644
index 0000000..9045680
--- /dev/null
+++ b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/metadata/MetadataManagerTest.java
@@ -0,0 +1,64 @@
+/*
+ * 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.asterix.test.metadata;
+
+import org.apache.asterix.api.common.AsterixHyracksIntegrationUtil;
+import org.apache.asterix.common.config.GlobalConfig;
+import org.apache.asterix.test.common.TestExecutor;
+import org.apache.asterix.testframework.context.TestCaseContext;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+public class MetadataManagerTest {
+
+    protected static final String TEST_CONFIG_FILE_NAME = "src/main/resources/cc.conf";
+    private static final TestExecutor testExecutor = new TestExecutor();
+    private static final AsterixHyracksIntegrationUtil integrationUtil = new AsterixHyracksIntegrationUtil();
+
+    @Before
+    public void setUp() throws Exception {
+        System.setProperty(GlobalConfig.CONFIG_FILE_PROPERTY, TEST_CONFIG_FILE_NAME);
+        integrationUtil.init(true, TEST_CONFIG_FILE_NAME);
+    }
+
+    @After
+    public void tearDown() throws Exception {
+        integrationUtil.deinit(true);
+    }
+
+    @Test
+    public void dropDataverseWithIndexesAfterRestart() throws Exception {
+        final TestCaseContext.OutputFormat cleanJson = TestCaseContext.OutputFormat.CLEAN_JSON;
+        StringBuilder sql = new StringBuilder();
+        sql.append("create dataverse test;");
+        sql.append("use test;");
+        sql.append("create type testType as{id:int};");
+        sql.append("create dataset testDS(testType) primary key id;");
+        sql.append("create primary index primaryIdx on testDS;");
+        sql.append("insert into testDS{\"id\":1};");
+        testExecutor.executeSqlppUpdateOrDdl(sql.toString(), cleanJson);
+        // restart
+        integrationUtil.deinit(false);
+        integrationUtil.init(false, TEST_CONFIG_FILE_NAME);
+        // drop then recreate dataverse
+        testExecutor.executeSqlppUpdateOrDdl("drop dataverse test;", cleanJson);
+        testExecutor.executeSqlppUpdateOrDdl(sql.toString(), cleanJson);
+    }
+}

http://git-wip-us.apache.org/repos/asf/asterixdb/blob/d6d42c86/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataManager.java
----------------------------------------------------------------------
diff --git a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataManager.java b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataManager.java
index 8e06dd7..a6a708f 100644
--- a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataManager.java
+++ b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataManager.java
@@ -287,7 +287,7 @@ public abstract class MetadataManager implements IMetadataManager {
     public List<Index> getDatasetIndexes(MetadataTransactionContext ctx, String dataverseName, String datasetName)
             throws AlgebricksException {
         List<Index> datasetIndexes = new ArrayList<>();
-        Dataset dataset = findDataset(ctx, dataverseName, datasetName);
+        Dataset dataset = getDataset(ctx, dataverseName, datasetName);
         if (dataset == null) {
             return datasetIndexes;
         }
@@ -951,14 +951,6 @@ public abstract class MetadataManager implements IMetadataManager {
         ctx.addDataset(dataset);
     }
 
-    public Dataset findDataset(MetadataTransactionContext ctx, String dataverseName, String datasetName) {
-        Dataset dataset = ctx.getDataset(dataverseName, datasetName);
-        if (dataset == null) {
-            dataset = cache.getDataset(dataverseName, datasetName);
-        }
-        return dataset;
-    }
-
     @Override
     public <T extends IExtensionMetadataEntity> void addEntity(MetadataTransactionContext mdTxnCtx, T entity)
             throws AlgebricksException {