You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Aleksandr Sorokoumov (Jira)" <ji...@apache.org> on 2021/09/23 09:25:00 UTC

[jira] [Created] (CASSANDRA-16986) DROP Table should not recycle active CommitLog segments

Aleksandr Sorokoumov created CASSANDRA-16986:
------------------------------------------------

             Summary: DROP Table should not recycle active CommitLog segments
                 Key: CASSANDRA-16986
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-16986
             Project: Cassandra
          Issue Type: Improvement
          Components: Local/Commit Log
            Reporter: Aleksandr Sorokoumov
            Assignee: Aleksandr Sorokoumov


Right now, DROP TABLE recycles all active CL segments and explicitly marks intervals as clean for all dropping tables. I believe that this is not necessary.

Recycling of CL segments was introduced in CASSANDRA-3578. Back then, it was necessary to recycle all active segments because:
1. CommitLog reused old segments after they were clean. This is no longer the case, I believe, since CASSANDRA-6809.
2. CommitLog segments must have been closed and recycled on {{DROP TABLE}} to avoid resurrecting data if a table with the same name is created. This was an issue because tables didn't have unique ids yet (CASSANDRA-5202).

Given that {{DROP TABLE}} triggers flush, which in turn cleans CL intervals in Keyspace#unloadCF, I think that we can avoid the call to {{forceRecycleAll}} there.



--
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