Todd Lipcon has submitted this change and it was merged.
Change subject: monotime: use a signed integer for the value
..
monotime: use a signed integer for the value
MonoTime previously used a uint64_t to store its value. This caused
problems in code patterns like:
MonoTime gc_point = now;
now.AddDelta(MonoTime::FromSeconds(-3600));
if (gc_point.ComesBefore(some_other_time)) {
...
}
In particular, the subtraction from 'gc_point' caused the unsigned
integer to wrap around such that _no_ time came before it.
One solution would have been to avoid the above pattern and only allow
adding positive deltas to a MonoTime. But, an easier one is to just use
a signed integer for the internal representation.
Change-Id: I68ce7b73a9a67becf91863161f0ae769153fe438
Reviewed-on: http://gerrit.cloudera.org:8080/3963
Tested-by: Kudu Jenkins
Reviewed-by: Mike Percy
---
M src/kudu/util/monotime.h
1 file changed, 1 insertion(+), 1 deletion(-)
Approvals:
Mike Percy: Looks good to me, approved
Kudu Jenkins: Verified
--
To view, visit http://gerrit.cloudera.org:8080/3963
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I68ce7b73a9a67becf91863161f0ae769153fe438
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Todd Lipcon
Gerrit-Reviewer: Adar Dembo
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy
Gerrit-Reviewer: Todd Lipcon