fix propagating SuperColumn tombstones from Memtable to caller.

patch by jbellis; reviewed by Eric Evans for #101

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@769628 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Jonathan Ellis 2009-04-29 02:01:49 +00:00
parent f836610fe0
commit e181fdc4e0
2 changed files with 8 additions and 2 deletions

View File

@ -329,7 +329,10 @@ public class Memtable implements Comparable<Memtable>
if (subColumn != null)
{
columnFamily = cFamily.cloneMeShallow();
columnFamily.addColumn(values[1] + ":" + values[2], subColumn.value(), subColumn.timestamp(), subColumn.isMarkedForDelete());
SuperColumn container = new SuperColumn(superColumn.name());
container.markForDeleteAt(superColumn.getLocalDeletionTime(), superColumn.getMarkedForDeleteAt());
container.addColumn(subColumn.name(), subColumn);
columnFamily.addColumn(container);
}
}
}

View File

@ -213,7 +213,10 @@ public final class SuperColumn implements IColumn, Serializable
{
addColumn(subColumn.name(), subColumn);
}
markedForDeleteAt = Math.max(markedForDeleteAt, column.getMarkedForDeleteAt());
if (column.getMarkedForDeleteAt() > markedForDeleteAt)
{
markForDeleteAt(column.getLocalDeletionTime(), column.getMarkedForDeleteAt());
}
}
public int getObjectCount()