bin/hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -Dfs.s3a.buffer.dir=/tmp/hbase_snap_tmp -snapshot TestTable-20170413-143020 -copy-to s3a://bucket-backup/hbase/snapshots/
The operation fails with:
2017-04-13 15:03:24,947 ERROR [main] snapshot.ExportSnapshot: Snapshot export failed java.io.FileNotFoundException: File does not exist: hdfs://clusterID/home/ubuntu/hbase-1.2.4/hbase-prefix-tree/target/hbase-prefix-tree-1.2.4.jar at org.apache.hadoop.hdfs.DistributedFileSystem$17.doCall(DistributedFileSystem.java:1072)
I assume it's looking for the "/home/ubuntu/hbase-1.2.4/hbase-prefix-tree/target/hbase-prefix-tree-1.2.4.jar" which does exist but obviously not under hdfs://. I don't know why this file is needed or why it's being looked for in the hdfs:// instead of the local filesystem, where it does exist. Any ideas?
Changed "fs.defaultFS" just to check if it was picking it up from there and indeed it somehow thinks that appending the filesystem to "fs.defaultFS" is the way to find the file. Is this a bug?