-
Notifications
You must be signed in to change notification settings - Fork 433
Closed
Labels
🚨This issue needs some love.This issue needs some love.api: bigtableIssues related to the Bigtable API.Issues related to the Bigtable API.triage meI really want to be triaged.I really want to be triaged.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.Error or flaw in code with unintended results or allowing sub-optimal usage patterns.
Milestone
Description
The CBT server reads the empty string on the right side of an open interval as the special value "infinity".
In particular, our current implementation of RowRange::Empty() is in fact turned into "all row keys except the empty string", because we send ("", "") and this is translated to ["\0", infinity) internally.
There is an easy fix to Empty(), using ("", "\0"):
result.row_range_.set_end_key_open(std::string("\0", 1));
but this reveals further bugs in the code, such as that RowRange::IsEmpty() does not recognize this as the empty range that it is.
Metadata
Metadata
Assignees
Labels
🚨This issue needs some love.This issue needs some love.api: bigtableIssues related to the Bigtable API.Issues related to the Bigtable API.triage meI really want to be triaged.I really want to be triaged.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.Error or flaw in code with unintended results or allowing sub-optimal usage patterns.