HBASE-18964 Deprecated RowProcessor and Region#processRowsWithLocks() methods that take RowProcessor as an argument

Signed-off-by: Michael Stack <stack@apache.org>
This commit is contained in:
Umesh Agashe 2017-11-14 14:22:49 -08:00 committed by Michael Stack
parent 853ab2f943
commit e9612e6c89
No known key found for this signature in database
GPG Key ID: 9816C7FC8ACC93D2
3 changed files with 16 additions and 3 deletions

View File

@ -3853,7 +3853,7 @@ public class HRegion implements HeapSize, PropagatingConfigurationObserver, Regi
nonceKey.getNonceGroup(), nonceKey.getNonce(), batchOp.getOrigLogSeqNum()); nonceKey.getNonceGroup(), nonceKey.getNonce(), batchOp.getOrigLogSeqNum());
} }
// STEP 6. Complete mvcc for all but last writeEntry (for replay case) // Complete mvcc for all but last writeEntry (for replay case)
if (it.hasNext() && writeEntry != null) { if (it.hasNext() && writeEntry != null) {
mvcc.complete(writeEntry); mvcc.complete(writeEntry);
writeEntry = null; writeEntry = null;

View File

@ -409,7 +409,10 @@ public interface Region extends ConfigurationObserver {
* Performs atomic multiple reads and writes on a given row. * Performs atomic multiple reads and writes on a given row.
* *
* @param processor The object defines the reads and writes to a row. * @param processor The object defines the reads and writes to a row.
* @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0. For customization, use
* Coprocessors instead.
*/ */
@Deprecated
void processRowsWithLocks(RowProcessor<?,?> processor) throws IOException; void processRowsWithLocks(RowProcessor<?,?> processor) throws IOException;
/** /**
@ -418,9 +421,12 @@ public interface Region extends ConfigurationObserver {
* @param processor The object defines the reads and writes to a row. * @param processor The object defines the reads and writes to a row.
* @param nonceGroup Optional nonce group of the operation (client Id) * @param nonceGroup Optional nonce group of the operation (client Id)
* @param nonce Optional nonce of the operation (unique random id to ensure "more idempotence") * @param nonce Optional nonce of the operation (unique random id to ensure "more idempotence")
* @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0. For customization, use
* Coprocessors instead.
*/ */
// TODO Should not be exposing with params nonceGroup, nonce. Change when doing the jira for // TODO Should not be exposing with params nonceGroup, nonce. Change when doing the jira for
// Changing processRowsWithLocks and RowProcessor // Changing processRowsWithLocks and RowProcessor
@Deprecated
void processRowsWithLocks(RowProcessor<?,?> processor, long nonceGroup, long nonce) void processRowsWithLocks(RowProcessor<?,?> processor, long nonceGroup, long nonce)
throws IOException; throws IOException;
@ -432,9 +438,12 @@ public interface Region extends ConfigurationObserver {
* Use a negative number to switch off the time bound * Use a negative number to switch off the time bound
* @param nonceGroup Optional nonce group of the operation (client Id) * @param nonceGroup Optional nonce group of the operation (client Id)
* @param nonce Optional nonce of the operation (unique random id to ensure "more idempotence") * @param nonce Optional nonce of the operation (unique random id to ensure "more idempotence")
* @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0. For customization, use
* Coprocessors instead.
*/ */
// TODO Should not be exposing with params nonceGroup, nonce. Change when doing the jira for // TODO Should not be exposing with params nonceGroup, nonce. Change when doing the jira for
// Changing processRowsWithLocks and RowProcessor // Changing processRowsWithLocks and RowProcessor
@Deprecated
void processRowsWithLocks(RowProcessor<?,?> processor, long timeout, long nonceGroup, long nonce) void processRowsWithLocks(RowProcessor<?,?> processor, long timeout, long nonceGroup, long nonce)
throws IOException; throws IOException;

View File

@ -39,11 +39,15 @@ import com.google.protobuf.Message;
* This class performs scans and generates mutations and WAL edits. * This class performs scans and generates mutations and WAL edits.
* The locks and MVCC will be handled by HRegion. * The locks and MVCC will be handled by HRegion.
* *
* The RowProcessor user code could have data that needs to be * The RowProcessor user code could have data that needs to be
* sent across for proper initialization at the server side. The generic type * sent across for proper initialization at the server side. The generic type
* parameter S is the type of the request data sent to the server. * parameter S is the type of the request data sent to the server.
* The generic type parameter T is the return type of RowProcessor.getResult(). * The generic type parameter T is the return type of RowProcessor.getResult().
*
* @deprecated As of release 2.0.0, this will be removed in HBase 3.0.0. For customization, use
* Coprocessors instead.
*/ */
@Deprecated
@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.COPROC) @InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.COPROC)
@InterfaceStability.Evolving @InterfaceStability.Evolving
public interface RowProcessor<S extends Message, T extends Message> { public interface RowProcessor<S extends Message, T extends Message> {