[ https://issues.apache.org/jira/browse/DRILL-3867?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16052476#comment-16052476 ]
ASF GitHub Bot commented on DRILL-3867: --------------------------------------- Github user vdiravka commented on a diff in the pull request: https://github.com/apache/drill/pull/824#discussion_r122529973 --- Diff: exec/java-exec/src/test/java/org/apache/drill/exec/store/parquet/TestParquetMetadataCache.java --- @@ -398,6 +398,23 @@ public void testDrill4877() throws Exception { } + @Test // DRILL-3867 + public void testMoveCache() throws Exception { + String tableName = "nation_move"; + String newTableName = "nation_moved"; + test("use dfs_test.tmp"); + test("create table `%s/t1` as select * from cp.`tpch/nation.parquet`", tableName); + test("create table `%s/t2` as select * from cp.`tpch/nation.parquet`", tableName); + test(String.format("refresh table metadata %s", tableName)); + checkForMetadataFile(tableName); + File srcFile = new File(getDfsTestTmpSchemaLocation(), tableName); + File dstFile = new File(getDfsTestTmpSchemaLocation(), newTableName); + FileUtils.moveDirectory(srcFile, dstFile); + Assert.assertFalse("Cache file was not moved successfully", srcFile.exists()); + int rowCount = testSql(String.format("select * from %s", newTableName)); + Assert.assertEquals(50, rowCount); + } + --- End diff -- There are the metadata files with full absolute paths in other test cases (for example in TestCorruptParquetDateCorrection`). > Store relative paths in metadata file > ------------------------------------- > > Key: DRILL-3867 > URL: https://issues.apache.org/jira/browse/DRILL-3867 > Project: Apache Drill > Issue Type: Bug > Components: Metadata > Affects Versions: 1.2.0 > Reporter: Rahul Challapalli > Assignee: Vitalii Diravka > Fix For: Future > > > git.commit.id.abbrev=cf4f745 > git.commit.time=29.09.2015 @ 23\:19\:52 UTC > The below sequence of steps reproduces the issue > 1. Create the cache file > {code} > 0: jdbc:drill:zk=10.10.103.60:5181> refresh table metadata > dfs.`/drill/testdata/metadata_caching/lineitem`; > +-------+-------------------------------------------------------------------------------------+ > | ok | summary > | > +-------+-------------------------------------------------------------------------------------+ > | true | Successfully updated metadata for table > /drill/testdata/metadata_caching/lineitem. | > +-------+-------------------------------------------------------------------------------------+ > 1 row selected (1.558 seconds) > {code} > 2. Move the directory > {code} > hadoop fs -mv /drill/testdata/metadata_caching/lineitem /drill/ > {code} > 3. Now run a query on top of it > {code} > 0: jdbc:drill:zk=10.10.103.60:5181> select * from dfs.`/drill/lineitem` limit > 1; > Error: SYSTEM ERROR: FileNotFoundException: Requested file > maprfs:///drill/testdata/metadata_caching/lineitem/2006/1 does not exist. > [Error Id: b456d912-57a0-4690-a44b-140d4964903e on pssc-66.qa.lab:31010] > (state=,code=0) > {code} > This is obvious given the fact that we are storing absolute file paths in the > cache file -- This message was sent by Atlassian JIRA (v6.4.14#64029)