[
https://issues.apache.org/jira/browse/HBASE-22781?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16899735#comment-16899735
]
Zheng Wang commented on HBASE-22781:
------------------------------------
Maybe I didn't make myself clear.
I think this case is to test the logic below:
{code:java}
ExplicitColumnTracker.java
public ScanQueryMatcher.MatchCode checkVersions(Cell cell, long timestamp, byte
type,
boolean ignoreCount){
...
// Check if it is a duplicate timestamp
if (sameAsPreviousTS(timestamp)) {
// If duplicate, skip this Key
return ScanQueryMatcher.MatchCode.SKIP;
}
...
}{code}
For more explain, if i set 'readVersions(2)':
it will return only one cell ,if both of cell's timestamp is 1.
it will return tow cells,if there timestamp is 1 and 2.
> Not suitable params of StoreScanner in the test case
> TestStoreScanner.testScanSameTimestamp
> -------------------------------------------------------------------------------------------
>
> Key: HBASE-22781
> URL: https://issues.apache.org/jira/browse/HBASE-22781
> Project: HBase
> Issue Type: Bug
> Components: test
> Affects Versions: 2.0.0
> Reporter: Zheng Wang
> Assignee: Zheng Wang
> Priority: Minor
>
> {code:java}
> public void testScanSameTimestamp() throws IOException {
> // returns only 1 of these 2 even though same timestamp
> KeyValue [] kvs = new KeyValue[] {
> create("R1", "cf", "a", 1, KeyValue.Type.Put, "dont-care"),
> create("R1", "cf", "a", 1, KeyValue.Type.Put, "dont-care"),
> };
> List<KeyValueScanner> scanners = Arrays.asList(
> new KeyValueScanner[] {
> new KeyValueScanFixture(CellComparator.getInstance(), kvs)
> });
> Scan scanSpec = new Scan().withStartRow(Bytes.toBytes("R1"));
> // this only uses maxVersions (default=1) and TimeRange (default=all)
> try (StoreScanner scan = new StoreScanner(scanSpec, scanInfo, getCols("a"),
> scanners)) {
> List<Cell> results = new ArrayList<>();
> assertEquals(true, scan.next(results));
> assertEquals(1, results.size());
> assertEquals(kvs[0], results.get(0));
> }
> }
> {code}
>
> It will not to compare the timestamp of the two cells,because of the
> 'getCols("a")' limit only one column and one version(default).
> For example,modify the timestamp of the first cell to 2 can also pass.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)