We used to check error_log empty with error_log.empty(), but
this may return false even when some of its member has empty
messages, thus crashes impala.
This commit:
1. Remove error_log from HdfsScanNode::ProcessSplit() since the
logs may contain irrelevant errors. This also prevents a
potential race condition when error_log is checked and enters
if clause, but later is changed by other threads. Also prevent
crashes when error_log has a cleared entry.
2. Hold locks and return a copy of the
RuntimeState::error_log_, fixing a race in the coordinator.
Change-Id: I3a7e3d22e26147ada780aae5aed1f2e25a515afc
Reviewed-on: http://gerrit.cloudera.org:8080/2829
Reviewed-by: Dan Hecht <dhecht@cloudera.com>
Reviewed-by: Huaisi Xu <hxu@cloudera.com>
Tested-by: Internal Jenkins