Skip to content

Commit

Permalink
List snapshots from SnapshotManager
Browse files Browse the repository at this point in the history
  • Loading branch information
pauloricardomg committed Nov 6, 2021
1 parent ec53e8a commit c614f88
Showing 1 changed file with 5 additions and 15 deletions.
20 changes: 5 additions & 15 deletions src/java/org/apache/cassandra/service/StorageService.java
Original file line number Diff line number Diff line change
Expand Up @@ -4024,23 +4024,13 @@ public void clearSnapshot(String tag, String... keyspaceNames) throws IOExceptio

public Map<String, TabularData> getSnapshotDetails(Map<String, String> options)
{
boolean skipExpiring = Boolean.parseBoolean(options.getOrDefault("no_ttl", "false"));

Map<String, TabularData> snapshotMap = new HashMap<>();
for (Keyspace keyspace : Keyspace.all())
for (TableSnapshot s : snapshotManager.getSnapshots(s -> !skipExpiring || !s.isExpiring()))
{
for (ColumnFamilyStore cfStore : keyspace.getColumnFamilyStores())
{
for (Map.Entry<String, TableSnapshot> snapshotDetail : TableSnapshot.filter(cfStore.listSnapshots(), options).entrySet())
{
TabularDataSupport data = (TabularDataSupport) snapshotMap.get(snapshotDetail.getKey());
if (data == null)
{
data = new TabularDataSupport(SnapshotDetailsTabularData.TABULAR_TYPE);
snapshotMap.put(snapshotDetail.getKey(), data);
}

SnapshotDetailsTabularData.from(snapshotDetail.getValue(), data);
}
}
TabularDataSupport data = (TabularDataSupport) snapshotMap.computeIfAbsent(s.getTag(), k -> new TabularDataSupport(SnapshotDetailsTabularData.TABULAR_TYPE));
SnapshotDetailsTabularData.from(s, data);
}
return snapshotMap;
}
Expand Down

0 comments on commit c614f88

Please sign in to comment.