You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Pankaj Kumar (Jira)" <ji...@apache.org> on 2019/08/27 08:09:00 UTC
[jira] [Created] (HBASE-22928) ScanMetrics counter update may not
happen in case of exception in TableRecordReaderImpl
Pankaj Kumar created HBASE-22928:
------------------------------------
Summary: ScanMetrics counter update may not happen in case of exception in TableRecordReaderImpl
Key: HBASE-22928
URL: https://issues.apache.org/jira/browse/HBASE-22928
Project: HBase
Issue Type: Bug
Components: mapreduce
Reporter: Pankaj Kumar
Assignee: Pankaj Kumar
ScanMetrics counter update may not happen in case of exception in TableRecordReaderImpl.nextKeyValue(),
There are multiple cases as below,
1. In case of DoNotRetryIOException
{code}
// do not retry if the exception tells us not to do so
if (e instanceof DoNotRetryIOException) {
throw e;
}
{code}
2. While creating a new scanner,
{code}
if (lastSuccessfulRow == null) {
restart(scan.getStartRow());
} else {
restart(lastSuccessfulRow);
scanner.next(); // skip presumed already mapped row
}
{code}
3. In case of IOException
{code}
catch (IOException ioe) {
if (logScannerActivity) {
long now = System.currentTimeMillis();
LOG.info("Mapper took " + (now-timestamp)
+ "ms to process " + rowcount + " rows");
LOG.info(ioe.toString(), ioe);
String lastRow = lastSuccessfulRow == null ?
"null" : Bytes.toStringBinary(lastSuccessfulRow);
LOG.info("lastSuccessfulRow=" + lastRow);
}
throw ioe;
}
{code}
--
This message was sent by Atlassian Jira
(v8.3.2#803003)