[
https://issues.apache.org/jira/browse/IGNITE-18882?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Semyon Danilov updated IGNITE-18882:
------------------------------------
Description:
This test in AbstractMvPartitionStorageGcTest should pass
{code:java}
void testTombstoneFirst() {
addAndCommit(null);
addAndCommit(TABLE_ROW);
addAndCommit(TABLE_ROW2);
BinaryRowAndRowId row = pollForVacuum(HybridTimestamp.MAX_VALUE);
assertRowMatches(row.binaryRow(), TABLE_ROW);
}
{code}
At this moment, storages will store the tombstone if it is the first committed
value which disrupts the GC flow.
addWrite with null argument as a first version of row is valid, for example:
{code:sql}
CREATE TABLE test (id INT);
DELETE from test where id = 0;
{code}
is ok. But tombstone should not be stored.
was:
This test in AbstractMvPartitionStorageGcTest should pass
{code:java}
void testTombstoneFirst() {
addAndCommit(null);
addAndCommit(TABLE_ROW);
addAndCommit(TABLE_ROW2);
BinaryRowAndRowId row = pollForVacuum(HybridTimestamp.MAX_VALUE);
assertRowMatches(row.binaryRow(), TABLE_ROW);
}
{code}
At this moment, storages will store the tombstone if it is the first committed
value which disrupts the GC flow
> Fix tombstone is stored if it is the first entry of version chain
> -----------------------------------------------------------------
>
> Key: IGNITE-18882
> URL: https://issues.apache.org/jira/browse/IGNITE-18882
> Project: Ignite
> Issue Type: Bug
> Reporter: Semyon Danilov
> Priority: Major
> Labels: ignite-3
>
> This test in AbstractMvPartitionStorageGcTest should pass
> {code:java}
> void testTombstoneFirst() {
> addAndCommit(null);
> addAndCommit(TABLE_ROW);
> addAndCommit(TABLE_ROW2);
> BinaryRowAndRowId row = pollForVacuum(HybridTimestamp.MAX_VALUE);
> assertRowMatches(row.binaryRow(), TABLE_ROW);
> }
> {code}
> At this moment, storages will store the tombstone if it is the first
> committed value which disrupts the GC flow.
> addWrite with null argument as a first version of row is valid, for example:
> {code:sql}
> CREATE TABLE test (id INT);
> DELETE from test where id = 0;
> {code}
> is ok. But tombstone should not be stored.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)