Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Not A Problem
-
0.98.6
-
None
-
None
-
None
-
Cloudera CDH 5.3.3
Description
Some rows is missing when put them into a table using mutateRow method and each row has thousands of columns. The code excerpt:
try (HConnection hc = HConnectionManager.createConnection(conf)) { try (HTableInterface table = hc.getTable(tableName)) { final LocalDate startDate = LocalDate.of(1980, 01, 01); for (int i = 0; i < 15000; i++) { byte[] row = Bytes.toBytes(Integer.toString(i)); long ts = System.currentTimeMillis(); Put put = new Put(row, ts + 1); LocalDate date = startDate; for (int j = 0; j < 5000; j++) { put.add( family, Bytes.toBytes(DateTimeFormatter.BASIC_ISO_DATE.format(date)), Bytes.toBytes(Integer.toString(j)) ); date = date.plusDays(1); } RowMutations rm = new RowMutations(row); rm.add(put); table.mutateRow(rm); } } }
Resulting number of rows varies - sometimes it 200, sometimes it 8000. But never expected 15000.
The full code of test application is attached.