Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-21 Thread Daniel Dai

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/
---

(Updated Sept. 21, 2017, 4:36 p.m.)


Review request for hive.


Repository: hive-git


Description
---

See HIVE-16898


Diffs (updated)
-

  ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
  ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
  
standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java
 dd9296a 


Diff: https://reviews.apache.org/r/62360/diff/7/

Changes: https://reviews.apache.org/r/62360/diff/6-7/


Testing
---

Manually test it with debugger: setup a breakpoint right before copy, and drop 
table in another session.


Thanks,

Daniel Dai



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-21 Thread anishek

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/#review185867
---




ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 121 (patched)


we cant set this to false all paths that are source paths as there might be 
for ex: 5 paths all of which are sourcePath but during copy the 5th one fails 
we cant set the first 4 to be moved to CM as CM would not have anything for them



ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 123 (patched)


we cant throw this as the fileNotFound might be a source file but the file 
list will contain both source and CM files.


- anishek


On Sept. 20, 2017, 9:41 p.m., Daniel Dai wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62360/
> ---
> 
> (Updated Sept. 20, 2017, 9:41 p.m.)
> 
> 
> Review request for hive.
> 
> 
> Repository: hive-git
> 
> 
> Description
> ---
> 
> See HIVE-16898
> 
> 
> Diffs
> -
> 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
>   
> standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java
>  dd9296a 
> 
> 
> Diff: https://reviews.apache.org/r/62360/diff/6/
> 
> 
> Testing
> ---
> 
> Manually test it with debugger: setup a breakpoint right before copy, and 
> drop table in another session.
> 
> 
> Thanks,
> 
> Daniel Dai
> 
>



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-20 Thread Daniel Dai

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/
---

(Updated Sept. 20, 2017, 9:41 p.m.)


Review request for hive.


Repository: hive-git


Description
---

See HIVE-16898


Diffs (updated)
-

  ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
  ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
  
standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java
 dd9296a 


Diff: https://reviews.apache.org/r/62360/diff/6/

Changes: https://reviews.apache.org/r/62360/diff/5-6/


Testing
---

Manually test it with debugger: setup a breakpoint right before copy, and drop 
table in another session.


Thanks,

Daniel Dai



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-20 Thread anishek

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/#review185773
---




ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 80 (patched)


Since we are taking in a list of Paths to copy over and if one of path 
leads to FileNotFoundException, i am not sure if distcp guarantees that it will 
copy all other valid paths, hence we can be in a situation where we will miss 
copying some files as we might have given a list of 100 files and distcp for ex 
copies 10 files simultaneously and on 25 th file there is file not found, in 
this case the other 75 files might not be copied since we only check the 
checksum on the source.


- anishek


On Sept. 19, 2017, 8:06 p.m., Daniel Dai wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62360/
> ---
> 
> (Updated Sept. 19, 2017, 8:06 p.m.)
> 
> 
> Review request for hive.
> 
> 
> Repository: hive-git
> 
> 
> Description
> ---
> 
> See HIVE-16898
> 
> 
> Diffs
> -
> 
>   metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
> 88d6a7a 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
> 
> 
> Diff: https://reviews.apache.org/r/62360/diff/5/
> 
> 
> Testing
> ---
> 
> Manually test it with debugger: setup a breakpoint right before copy, and 
> drop table in another session.
> 
> 
> Thanks,
> 
> Daniel Dai
> 
>



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-19 Thread Daniel Dai

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/
---

(Updated Sept. 19, 2017, 8:06 p.m.)


Review request for hive.


Repository: hive-git


Description
---

See HIVE-16898


Diffs (updated)
-

  metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
88d6a7a 
  ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
  ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 


Diff: https://reviews.apache.org/r/62360/diff/5/

Changes: https://reviews.apache.org/r/62360/diff/4-5/


Testing
---

Manually test it with debugger: setup a breakpoint right before copy, and drop 
table in another session.


Thanks,

Daniel Dai



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-19 Thread Daniel Dai


> On Sept. 19, 2017, 5:48 a.m., anishek wrote:
> > ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
> > Lines 153 (patched)
> > 
> >
> > use lambda

Already lambda.


- Daniel


---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/#review185647
---


On Sept. 19, 2017, 7:11 a.m., Daniel Dai wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62360/
> ---
> 
> (Updated Sept. 19, 2017, 7:11 a.m.)
> 
> 
> Review request for hive.
> 
> 
> Repository: hive-git
> 
> 
> Description
> ---
> 
> See HIVE-16898
> 
> 
> Diffs
> -
> 
>   metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
> 88d6a7a 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
> 
> 
> Diff: https://reviews.apache.org/r/62360/diff/4/
> 
> 
> Testing
> ---
> 
> Manually test it with debugger: setup a breakpoint right before copy, and 
> drop table in another session.
> 
> 
> Thanks,
> 
> Daniel Dai
> 
>



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-19 Thread Daniel Dai


> On Sept. 19, 2017, 5:46 a.m., anishek wrote:
> > ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
> > Lines 120 (patched)
> > 
> >
> > May be i am missing something but even when we are using the CM path in 
> > copyAndVerify towards the last, the file from CM itself might be deleted 
> > via the CM cleaner thread, in that case the doCopy will quietly fail and 
> > move on rather than failing replication.

It is handled by copyAndVerify. If the source file is not there, getting 
checksum of source file will throw exception:
catch (FileNotFoundException e) {
  if (!srcFile.isUseSourcePath()) {
// If we already use CM path, that means the CM path is expired, throw 
exception
// as there is no remedy
throw e;
  }
}

Anyway, this is refactor in the new patch.


- Daniel


---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/#review185643
---


On Sept. 19, 2017, 7:11 a.m., Daniel Dai wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62360/
> ---
> 
> (Updated Sept. 19, 2017, 7:11 a.m.)
> 
> 
> Review request for hive.
> 
> 
> Repository: hive-git
> 
> 
> Description
> ---
> 
> See HIVE-16898
> 
> 
> Diffs
> -
> 
>   metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
> 88d6a7a 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
> 
> 
> Diff: https://reviews.apache.org/r/62360/diff/4/
> 
> 
> Testing
> ---
> 
> Manually test it with debugger: setup a breakpoint right before copy, and 
> drop table in another session.
> 
> 
> Thanks,
> 
> Daniel Dai
> 
>



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-19 Thread Daniel Dai

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/
---

(Updated Sept. 19, 2017, 7:11 a.m.)


Review request for hive.


Repository: hive-git


Description
---

See HIVE-16898


Diffs (updated)
-

  metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
88d6a7a 
  ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
  ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 


Diff: https://reviews.apache.org/r/62360/diff/4/

Changes: https://reviews.apache.org/r/62360/diff/3-4/


Testing
---

Manually test it with debugger: setup a breakpoint right before copy, and drop 
table in another session.


Thanks,

Daniel Dai



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-18 Thread anishek

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/#review185647
---




ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Line 61 (original), 69 (patched)


use lambdas



ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 82 (patched)


Path not required on right hand side



ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 153 (patched)


use lambda


- anishek


On Sept. 19, 2017, 12:14 a.m., Daniel Dai wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62360/
> ---
> 
> (Updated Sept. 19, 2017, 12:14 a.m.)
> 
> 
> Review request for hive.
> 
> 
> Repository: hive-git
> 
> 
> Description
> ---
> 
> See HIVE-16898
> 
> 
> Diffs
> -
> 
>   metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
> 88d6a7a 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
> 
> 
> Diff: https://reviews.apache.org/r/62360/diff/3/
> 
> 
> Testing
> ---
> 
> Manually test it with debugger: setup a breakpoint right before copy, and 
> drop table in another session.
> 
> 
> Thanks,
> 
> Daniel Dai
> 
>



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-18 Thread anishek

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/#review185643
---




ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 51 (patched)


This can be private



ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 86 (patched)


we can start with

if(!srcFile.isUseSourcePath() && 
sourceFs.exists(srcFile.getEffectivePath())){continue;} 

as the first statement inside the for loop for srcFiles, that way it 
wouldnt have to try and get checksum etc for files in CM. Check to see 
existence of CM is to make sure that while doing the copy the cleaner thread 
did not clean the CM.

This will also make a few subsequent conditional checking irrelevant.



ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 120 (patched)


May be i am missing something but even when we are using the CM path in 
copyAndVerify towards the last, the file from CM itself might be deleted via 
the CM cleaner thread, in that case the doCopy will quietly fail and move on 
rather than failing replication.



ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 130 (patched)


copyAsUser and hiveConf are member variables, they dont need to be passed 
to functions.


- anishek


On Sept. 19, 2017, 12:14 a.m., Daniel Dai wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62360/
> ---
> 
> (Updated Sept. 19, 2017, 12:14 a.m.)
> 
> 
> Review request for hive.
> 
> 
> Repository: hive-git
> 
> 
> Description
> ---
> 
> See HIVE-16898
> 
> 
> Diffs
> -
> 
>   metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
> 88d6a7a 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
> 
> 
> Diff: https://reviews.apache.org/r/62360/diff/3/
> 
> 
> Testing
> ---
> 
> Manually test it with debugger: setup a breakpoint right before copy, and 
> drop table in another session.
> 
> 
> Thanks,
> 
> Daniel Dai
> 
>



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-18 Thread Daniel Dai

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/
---

(Updated Sept. 19, 2017, 12:14 a.m.)


Review request for hive.


Repository: hive-git


Description
---

See HIVE-16898


Diffs (updated)
-

  metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
88d6a7a 
  ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
  ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 


Diff: https://reviews.apache.org/r/62360/diff/3/

Changes: https://reviews.apache.org/r/62360/diff/2-3/


Testing
---

Manually test it with debugger: setup a breakpoint right before copy, and drop 
table in another session.


Thanks,

Daniel Dai



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-18 Thread Daniel Dai

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/
---

(Updated Sept. 18, 2017, 10:55 p.m.)


Review request for hive.


Repository: hive-git


Description
---

See HIVE-16898


Diffs (updated)
-

  metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
88d6a7a 
  ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
  ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 


Diff: https://reviews.apache.org/r/62360/diff/2/

Changes: https://reviews.apache.org/r/62360/diff/1-2/


Testing
---

Manually test it with debugger: setup a breakpoint right before copy, and drop 
table in another session.


Thanks,

Daniel Dai



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-18 Thread Daniel Dai


> On Sept. 18, 2017, 4:49 a.m., anishek wrote:
> > ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
> > Lines 73 (patched)
> > 
> >
> > Evaluation of doing a regularCopy or distCp can be done in the inner 
> > most function call, this will reduce passing in another variable from the 
> > top which can be evaluated later

I need to cache useRegularCopy and pass it to multiple doCopyRetry, that's why 
I put in the outer function.


> On Sept. 18, 2017, 4:49 a.m., anishek wrote:
> > ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
> > Lines 92 (patched)
> > 
> >
> > I think eventually we have to move to a model of doing the checksum on 
> > sourceFS vs destinationFS as you have done here, though certain FS 
> > configurations change the value of checksum and unless we can guarantee 
> > that we calculate the checksum on the data by reading the data this might 
> > lead to more failures,
> > 
> > I thought the idea for now was that,
> > 
> > 1>> we get the checksum of the file on sourceFS before copy
> > 2>> we do the copy
> > 3>> we get the checksum on the file on sourceFS again 
> > 4>> we compare the checksum in 1 and 3 and if its not changed then 
> > during our copy the value wouldnt have either. 
> > 
> > until we can figure out the acutal solution to this, the fall back of 
> > doing the check on sourceFS might be the way to go.

Yes, that's right. The checksum of the file is in _files.


> On Sept. 18, 2017, 4:49 a.m., anishek wrote:
> > ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
> > Lines 116 (patched)
> > 
> >
> > As a part of doing copy if the copy fails due to fileNotFoundException 
> > for a file location to actual location on hdfs then we should retry with 
> > the corresponding CMRoot Path for this file since it was moved while we 
> > were in the porcess of doing the copy.
> > 
> > Also if this happnes for a CM root file then there is an issue in our 
> > configuration such that the CM root FS is cleaned before the copy is done 
> > and we should log this as an error as the cleaner thread for CMroot is not 
> > configured for the right time. i did rather fail repl load, instead of just 
> > logging the error else we might not know how many such instances might 
> > happen before we realize that replication is broken.

Retry with CM path is part of copyAndVerify. doCopyRetry is shared between 
regular import and repl load, it does not deal with CM logic.


- Daniel


---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/#review185534
---


On Sept. 15, 2017, 6:10 p.m., Daniel Dai wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62360/
> ---
> 
> (Updated Sept. 15, 2017, 6:10 p.m.)
> 
> 
> Review request for hive.
> 
> 
> Repository: hive-git
> 
> 
> Description
> ---
> 
> See HIVE-16898
> 
> 
> Diffs
> -
> 
>   metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
> 88d6a7a 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
> 
> 
> Diff: https://reviews.apache.org/r/62360/diff/1/
> 
> 
> Testing
> ---
> 
> Manually test it with debugger: setup a breakpoint right before copy, and 
> drop table in another session.
> 
> 
> Thanks,
> 
> Daniel Dai
> 
>



Re: Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-17 Thread anishek

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/#review185534
---




ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 73 (patched)


Evaluation of doing a regularCopy or distCp can be done in the inner most 
function call, this will reduce passing in another variable from the top which 
can be evaluated later



ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 92 (patched)


I think eventually we have to move to a model of doing the checksum on 
sourceFS vs destinationFS as you have done here, though certain FS 
configurations change the value of checksum and unless we can guarantee that we 
calculate the checksum on the data by reading the data this might lead to more 
failures,

I thought the idea for now was that,

1>> we get the checksum of the file on sourceFS before copy
2>> we do the copy
3>> we get the checksum on the file on sourceFS again 
4>> we compare the checksum in 1 and 3 and if its not changed then during 
our copy the value wouldnt have either. 

until we can figure out the acutal solution to this, the fall back of doing 
the check on sourceFS might be the way to go.



ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 95 (patched)


the same problem here were our cleaner thread on CM is running sooner than 
expected then we will miss data, might be better to fail in case the file is 
not in CM



ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java
Lines 116 (patched)


As a part of doing copy if the copy fails due to fileNotFoundException for 
a file location to actual location on hdfs then we should retry with the 
corresponding CMRoot Path for this file since it was moved while we were in the 
porcess of doing the copy.

Also if this happnes for a CM root file then there is an issue in our 
configuration such that the CM root FS is cleaned before the copy is done and 
we should log this as an error as the cleaner thread for CMroot is not 
configured for the right time. i did rather fail repl load, instead of just 
logging the error else we might not know how many such instances might happen 
before we realize that replication is broken.


- anishek


On Sept. 15, 2017, 6:10 p.m., Daniel Dai wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62360/
> ---
> 
> (Updated Sept. 15, 2017, 6:10 p.m.)
> 
> 
> Review request for hive.
> 
> 
> Repository: hive-git
> 
> 
> Description
> ---
> 
> See HIVE-16898
> 
> 
> Diffs
> -
> 
>   metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
> 88d6a7a 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
>   ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 
> 
> 
> Diff: https://reviews.apache.org/r/62360/diff/1/
> 
> 
> Testing
> ---
> 
> Manually test it with debugger: setup a breakpoint right before copy, and 
> drop table in another session.
> 
> 
> Thanks,
> 
> Daniel Dai
> 
>



Review Request 62360: HIVE-16898: Validation of source file after distcp in repl load

2017-09-15 Thread Daniel Dai

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62360/
---

Review request for hive.


Repository: hive-git


Description
---

See HIVE-16898


Diffs
-

  metastore/src/java/org/apache/hadoop/hive/metastore/ReplChangeManager.java 
88d6a7a 
  ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java 54746d3 
  ql/src/java/org/apache/hadoop/hive/ql/parse/repl/CopyUtils.java 28e7bcb 


Diff: https://reviews.apache.org/r/62360/diff/1/


Testing
---

Manually test it with debugger: setup a breakpoint right before copy, and drop 
table in another session.


Thanks,

Daniel Dai