Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Invalid
-
0.98.7
-
None
-
None
-
OS : Unix
Java Version : java version "1.8.0_25"
Hbase Version: Version 0.98.7.12.1509250618_h2
Description
Hi Anoop/Ted,
I need to delete bulk records in Hbase table based on certain criteria.
I copied one piece of code from similar thread and it throws "can not find symbol" error for most of the code.
Can you please provide me right code which would be used to delete bulk records
Here are the errors
DeleteRowsTest.java:75: error: cannot find symbol
HTable tableName = new HTable(conf, "salestoolsdata:account");
^
symbol: variable conf
location: class DeleteRowsTest
DeleteRowsTest.java:79: error: no suitable constructor found for SingleColumnValueFilter(char,String,CompareOp,byte[])
SingleColumnValueFilter scvf = new SingleColumnValueFilter('d',"ISDELETED",CompareOp.EQUAL, Bytes.toBytes("true"));
^
constructor SingleColumnValueFilter.SingleColumnValueFilter(byte[],byte[],CompareOp,byte[]) is not applicable
(argument mismatch; char cannot be converted to byte[])
constructor SingleColumnValueFilter.SingleColumnValueFilter(byte[],byte[],CompareOp,ByteArrayComparable) is not applicable
(argument mismatch; char cannot be converted to byte[])
DeleteRowsTest.java:85: error: cannot find symbol
long noOfRowsDeleted = invokeBulkDeleteProtocol(tableName, scan, 500, DeleteType.ROW, null);
^
symbol: variable DeleteType
location: class DeleteRowsTest
DeleteRowsTest.java:89: error: cannot find symbol
for (Result result : ht.getScanner(new Scan())) {
^
symbol: variable ht
location: class DeleteRowsTest
DeleteRowsTest.java:98: error: cannot find symbol
HTable ht = new HTable(conf, tableName);
^
symbol: variable conf
location: class DeleteRowsTest
DeleteRowsTest.java:100: error: cannot find symbol
Batch.Call<BulkDeleteProtocol, BulkDeleteResponse> callable =
^
symbol: class BulkDeleteProtocol
location: class DeleteRowsTest
DeleteRowsTest.java:100: error: cannot find symbol
Batch.Call<BulkDeleteProtocol, BulkDeleteResponse> callable =
^
symbol: class BulkDeleteResponse
location: class DeleteRowsTest
DeleteRowsTest.java:101: error: cannot find symbol
new Batch.Call<BulkDeleteProtocol, BulkDeleteResponse>() {
^
symbol: class BulkDeleteProtocol
location: class DeleteRowsTest
DeleteRowsTest.java:101: error: cannot find symbol
new Batch.Call<BulkDeleteProtocol, BulkDeleteResponse>() {
^
symbol: class BulkDeleteResponse
location: class DeleteRowsTest
DeleteRowsTest.java:102: error: cannot find symbol
public BulkDeleteResponse call(BulkDeleteProtocol instance) throws IOException {
^
symbol: class BulkDeleteProtocol
DeleteRowsTest.java:102: error: cannot find symbol
public BulkDeleteResponse call(BulkDeleteProtocol instance) throws IOException {
^
symbol: class BulkDeleteResponse
DeleteRowsTest.java:106: error: cannot find symbol
Map<byte[], BulkDeleteResponse> result = ht.coprocessorExec(BulkDeleteProtocol.class,
^
symbol: class BulkDeleteResponse
location: class DeleteRowsTest
DeleteRowsTest.java:106: error: cannot find symbol
Map<byte[], BulkDeleteResponse> result = ht.coprocessorExec(BulkDeleteProtocol.class,
^
symbol: class BulkDeleteProtocol
location: class DeleteRowsTest
DeleteRowsTest.java:108: error: cannot find symbol
for (BulkDeleteResponse response : result.values()) {
^
symbol: class BulkDeleteResponse
location: class DeleteRowsTest
Note: Some messages have been simplified; recompile with -Xdiags:verbose to get full output
18 errors
Thanks
Marimuthu