This method should set the actual, runtime high
Watermark for this
WorkUnitState. A high
Watermark indicates that all data for the source has been pulled up to a specific point.
This method should be called inside the
gobblin.source.extractor.Extractor class, during the initialization
of the class, before any calls to
gobblin.source.extractor.Extractor#readRecord(Object) are executed. This
method keeps a local point to the given
Watermark and expects the following invariant to always be upheld.
The invariant for this
Watermark is that it should cover all records up to and including the most recent
record returned by
gobblin.source.extractor.Extractor#readRecord(Object).
The
Watermark set in this method may be polled by the framework multiple times, in order to track the
progress of how the
Watermark changes. This is important for reporting percent completion of a
gobblin.source.workunit.WorkUnit.
TODO - Once we are ready to make a backwards incompatible change to the
gobblin.source.extractor.Extractorinterface, this method should become part of the
gobblin.source.extractor.Extractor interface. For example,
a method such as getCurrentHighWatermark() should be added.