You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Stefan Miklosovic (Jira)" <ji...@apache.org> on 2021/08/26 10:23:00 UTC
[jira] [Comment Edited] (CASSANDRA-15134) SASI index files not
included in snapshots
[ https://issues.apache.org/jira/browse/CASSANDRA-15134?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17405119#comment-17405119 ]
Stefan Miklosovic edited comment on CASSANDRA-15134 at 8/26/21, 10:22 AM:
--------------------------------------------------------------------------
After taking a deeper look, this change is not compatible with the other parts for the code base, for example, when this will be introduced in snaphots, if we ask what size that snapshot is of (on the disk), currently that logic parses "Component"s but these 2i component files do not follow the naming convention the other components of an sstable do which would throw some exceptions (even I have not tried that empirically, it is quite obvious from the code). We would have to figure out how to parse these and include them in the size computation.
This work is somehow related to CASSANDRA-16451 where we are refactoring snapshotting logic a lot. More to it, there is a size of a snapshot computed every single time one queries it which is absolutely not necessary and it become a performance issue when there is hundreds of snapshots and somebody lists them frequently via listsnapshots nodetool command. We plan to somehow cache this information and I think that after we do that, this will be the logical extension of that effort.
EDIT: it will not throw but the sizes of these components will be the most probably not included in the size computation which is clearly wrong.
was (Author: stefan.miklosovic):
After taking a deeper look, this change is not compatible with the other parts for the code base, for example, when this will be introduced in snaphots, if we ask what size that snapshot is of (on the disk), currently that logic parses "Component"s but these 2i component files do not follow the naming convention the other components of an sstable do which would throw some exceptions (even I have not tried that empirically, it is quite obvious from the code). We would have to figure out how to parse these and include them in the size computation.
This work is somehow related to CASSANDRA-16451 where we are refactoring snapshotting logic a lot. More to it, there is a size of a snapshot computed every single time one queries it which is absolutely not necessary and it become a performance issue when there is hundreds of snapshots and somebody lists them frequently via listsnapshots nodetool command. We plan to somehow cache this information and I think that after we do that, this will be the logical extension of that effort.
> SASI index files not included in snapshots
> ------------------------------------------
>
> Key: CASSANDRA-15134
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15134
> Project: Cassandra
> Issue Type: Bug
> Components: Feature/SASI
> Reporter: Vincent White
> Assignee: Stefan Miklosovic
> Priority: Normal
> Fix For: 3.11.x, 4.0.x, 4.x
>
>
> Newly written SASI index files are not being included in snapshots. This is because the SASI index files are not added to the components ({{org.apache.cassandra.io.sstable.SSTable#components}}) list of newly written sstables.
> Although I don't believe anything except snapshots ever tries to reference the SASI index files from this location, on startup Cassandra does add the SASI index files (if they are found on disk) of existing sstables in their components list. In that case sstables that existed on startup with SASI index files will have their SASI index files included in any snapshots.
>
> This patch updates the components list of newly written sstable once the index is built.
> ||3.11||4.0||Trunk||
> |[https://github.com/apache/cassandra/pull/1150]|[TBD]|[TBD]|
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org