Summary:
FastDecodeSignedVarInt uses speculative read to perform decoding variable length big endian number.
Sometimes this read could go out of allocated memory that will result it crash.
Fixed by replacing single speculative read with multiple smaller reads.
This issue could happen only with short physical component of doc hybrid time.
So real systems should not be affected.
Jira: DB-13637
Test Plan:
./yb_build.sh fastdebug --gcc11 --cxx-test randomized_docdb-test --gtest_filter bool/RandomizedDocDBTest.Snapshots/0 -n 1000 -- -p 40
FastVarintTest.DecodeAtTheStartOfPage
Reviewers: hsunder, kannan
Reviewed By: hsunder
Subscribers: kannan, rthallam, ybase
Tags: #jenkins-ready
Differential Revision: https://phorge.dev.yugabyte.com/D39398