Open penberg opened 8 years ago
Perhaps, instead of ad-hoc pattern matching, the sstable code should register patterns and handlers for those patterns. It could then register empty handlers for these patterns.
@penberg is it a migration from Cassandra issue, or can it happen with just with Scylla?
C* only.
@raphaelsc any update?
@tzach Not yet. I will take a look at it soon.
@raphaelsc I think we have merged a fix to diregard unknown components - does it cover this as well ?
On Wed, Nov 9, 2016 at 9:47 AM, Shlomi Livne notifications@github.com wrote:
@raphaelsc https://github.com/raphaelsc I think we have merged a fix to diregard unknown components - does it cover this as well ?
No. This problem is that scylla is unable to recognize a temporary file generated by Cassandra. Cassandra puts 'tmp' right before version, and Scylla thinks 'tmp' is a version.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/scylladb/scylla/issues/1148#issuecomment-259396523, or mute the thread https://github.com/notifications/unsubscribe-auth/ABWAcxvRzhwmJbrhntlhHN-uRhAl2_OTks5q8bK9gaJpZM4H7xK4 .
On Wed, Nov 9, 2016 at 6:48 PM, Raphael Carvalho raphaelsc@scylladb.com wrote:
On Wed, Nov 9, 2016 at 9:47 AM, Shlomi Livne notifications@github.com wrote:
@raphaelsc https://github.com/raphaelsc I think we have merged a fix to diregard unknown components - does it cover this as well ?
No. This problem is that scylla is unable to recognize a temporary file generated by Cassandra. Cassandra puts 'tmp' right before version, and Scylla thinks 'tmp' is a version.
Just checked that scylla will actually be unable to boot if it finds any file that doesn't match the component pattern. I think we should only ignore those files. There's no need to specially handle useless temporary files coming from C*.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/scylladb/scylla/issues/1148#issuecomment-259396523, or mute the thread https://github.com/notifications/unsubscribe-auth/ABWAcxvRzhwmJbrhntlhHN-uRhAl2_OTks5q8bK9gaJpZM4H7xK4 .
But, if there is a .tmp file from C*, won't there also be other component files that we should ignore?
If we ignore the .tmp file, we won't ignore these components.
@raphaelsc is this bug still valid?
I ran
cassandra-stress
against Cassandra 2.1.8, issuednodetool flush
, stopped Cassandra, and copied over the sstables (including system schema) to Scylla:Scylla, however, refuses to boot because it trips over temporary sstables:
@avikivity says that we should just ignore them but I did not verify that it's what Cassandra does.