Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
According to definition of InsertEventRequestData in hive_metastore.thrift the filesAddedChecksum is a optional field. But the FileChksumIterator does not handle it correctly when a client fires a insert event which does not have file checksums. The issue is that InsertEvent class initializes fileChecksums list to a empty arrayList so the following check will never come into play
result = ReplChangeManager.encodeFileUri(files.get(i), chksums != null ? chksums.get(i) : null, subDirs != null ? subDirs.get(i) : null);
The chksums check above should include a !chksums.isEmpty() check as well in the above line.