HBASE-23128 Restore Region interface compatibility

Restore and deprecate Region#bulkLoadHFiles(Collection<Pair<byte[],String>>, boolean,
  Region.BulkLoadListener).
Warn if invoked.
This commit is contained in:
Andrew Purtell 2019-10-07 12:21:10 -07:00
parent 3966d0fee6
commit 0e8e5a36db
No known key found for this signature in database
GPG Key ID: 8597754DD5365CCD
2 changed files with 27 additions and 0 deletions

View File

@ -684,6 +684,8 @@ public class HRegion implements HeapSize, PropagatingConfigurationObserver, Regi
private final Durability durability;
private final boolean regionStatsEnabled;
private static final List<String> EMPTY_CLUSTERID_LIST = new ArrayList<String>();
/**
* HRegion constructor. This constructor should only be used for testing and
* extensions. Instances of HRegion should be instantiated with the
@ -6037,6 +6039,15 @@ public class HRegion implements HeapSize, PropagatingConfigurationObserver, Regi
return isSuccessful;
}
@Override
@Deprecated
public boolean bulkLoadHFiles(Collection<Pair<byte[], String>> familyPaths, boolean assignSeqId,
BulkLoadListener bulkLoadListener) throws IOException {
LOG.warn("Deprecated bulkLoadHFiles invoked. This does not pass through source cluster ids." +
" This is probably not what you want. See HBASE-22380.");
return bulkLoadHFiles(familyPaths, assignSeqId, bulkLoadListener, EMPTY_CLUSTERID_LIST);
}
@Override
public boolean equals(Object o) {
return o instanceof HRegion && Bytes.equals(getRegionInfo().getRegionName(),

View File

@ -562,6 +562,22 @@ public interface Region extends ConfigurationObserver {
boolean bulkLoadHFiles(Collection<Pair<byte[], String>> familyPaths, boolean assignSeqId,
BulkLoadListener bulkLoadListener, List<String> clusterIds) throws IOException;
/**
* Attempts to atomically load a group of hfiles. This is critical for loading
* rows with multiple column families atomically. Deprecated - do not use.
*
* @param familyPaths List of Pair&lt;byte[] column family, String hfilePath&gt;
* @param assignSeqId
* @param bulkLoadListener Internal hooks enabling massaging/preparation of a
* file about to be bulk loaded
* @return true if successful, false if failed recoverably
* @throws IOException if failed unrecoverably.
* @deprecated Do not use, see HBASE-22380
*/
@Deprecated
boolean bulkLoadHFiles(Collection<Pair<byte[], String>> familyPaths, boolean assignSeqId,
BulkLoadListener bulkLoadListener) throws IOException;
///////////////////////////////////////////////////////////////////////////
// Coprocessors