[ https://issues.apache.org/jira/browse/CASSANDRA-9582?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Philip Thompson updated CASSANDRA-9582: --------------------------------------- Description: I've upgraded a node from 2.0.10 to 2.1.6. Before taking down the node, I've run nodetool upgradesstables and nodetool scrub. When starting up the node with 2.1.6, I'm getting a MarshalException (stacktrace included below). For some reason, it seems that C* is trying to convert a text value from the column 'currencyCode' to a UUID, which it isn't. I've had similar errors for two other columns as well, which I could work around by dropping the table, since it wasn't used anymore. The only thing I could do was restoring a snapshot and starting up the old 2.0.10 again. The schema of the table (I've got only one table containing a column named 'currencyCode') is: {code} CREATE TABLE "InvoiceItem" ( key blob, column1 uuid, "currencyCode" text, description text, "priceGross" bigint, "priceNett" bigint, quantity varint, sku text, "unitPriceGross" bigint, "unitPriceNett" bigint, vat bigint, "vatRateBasisPoints" varint, PRIMARY KEY ((key), column1) ) WITH COMPACT STORAGE AND bloom_filter_fp_chance=0.010000 AND caching='KEYS_ONLY' AND comment='' AND dclocal_read_repair_chance=0.000000 AND gc_grace_seconds=864000 AND index_interval=128 AND read_repair_chance=1.000000 AND replicate_on_write='true' AND populate_io_cache_on_flush='false' AND default_time_to_live=0 AND speculative_retry='99.0PERCENTILE' AND memtable_flush_period_in_ms=0 AND compaction={'class': 'SizeTieredCompactionStrategy'} AND compression={};{code} The stack trace when starting up: {code} ERROR 13:51:57 Exception encountered during startup org.apache.cassandra.serializers.MarshalException: unable to make version 1 UUID from 'currencyCode' at org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:188) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.db.marshal.AbstractCompositeType.fromString(AbstractCompositeType.java:242) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.ColumnDefinition.fromSchema(ColumnDefinition.java:397) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.CFMetaData.fromSchemaNoTriggers(CFMetaData.java:1750) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.CFMetaData.fromSchema(CFMetaData.java:1860) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.KSMetaData.deserializeColumnFamilies(KSMetaData.java:321) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.KSMetaData.fromSchema(KSMetaData.java:302) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.db.DefsTables.loadFromKeyspace(DefsTables.java:133) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:696) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:672) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:293) [apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:536) [apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:625) [apache-cassandra-2.1.6.jar:2.1.6] Caused by: org.apache.cassandra.serializers.MarshalException: unable to coerce 'currencyCode' to a formatted date (long) at org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:111) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:184) ~[apache-cassandra-2.1.6.jar:2.1.6] ... 12 common frames omitted Caused by: java.text.ParseException: Unable to parse the date: currencyCode at org.apache.commons.lang3.time.DateUtils.parseDateWithLeniency(DateUtils.java:336) ~[commons-lang3-3.1.jar:3.1] at org.apache.commons.lang3.time.DateUtils.parseDateStrictly(DateUtils.java:286) ~[commons-lang3-3.1.jar:3.1] at org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:107) ~[apache-cassandra-2.1.6.jar:2.1.6] ... 13 common frames omitted org.apache.cassandra.serializers.MarshalException: unable to make version 1 UUID from 'currencyCode' at org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:188) at org.apache.cassandra.db.marshal.AbstractCompositeType.fromString(AbstractCompositeType.java:242) at org.apache.cassandra.config.ColumnDefinition.fromSchema(ColumnDefinition.java:397) at org.apache.cassandra.config.CFMetaData.fromSchemaNoTriggers(CFMetaData.java:1750) at org.apache.cassandra.config.CFMetaData.fromSchema(CFMetaData.java:1860) at org.apache.cassandra.config.KSMetaData.deserializeColumnFamilies(KSMetaData.java:321) at org.apache.cassandra.config.KSMetaData.fromSchema(KSMetaData.java:302) at org.apache.cassandra.db.DefsTables.loadFromKeyspace(DefsTables.java:133) at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:696) at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:672) at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:293) at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:536) at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:625) Caused by: org.apache.cassandra.serializers.MarshalException: unable to coerce 'currencyCode' to a formatted date (long) at org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:111) at org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:184) ... 12 more Caused by: java.text.ParseException: Unable to parse the date: currencyCode at org.apache.commons.lang3.time.DateUtils.parseDateWithLeniency(DateUtils.java:336) at org.apache.commons.lang3.time.DateUtils.parseDateStrictly(DateUtils.java:286) at org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:107) ... 13 more Exception encountered during startup: unable to make version 1 UUID from 'currencyCode'{code} was: I've upgraded a node from 2.0.10 to 2.1.6. Before taking down the node, I've run nodetool upgradesstables and nodetool scrub. When starting up the node with 2.1.6, I'm getting a MarshalException (stacktrace included below). For some reason, it seems that C* is trying to convert a text value from the column 'currencyCode' to a UUID, which it isn't. I've had similar errors for two other columns as well, which I could work around by dropping the table, since it wasn't used anymore. The only thing I could do was restoring a snapshot and starting up the old 2.0.10 again. The schema of the table (I've got only one table containing a column named 'currencyCode') is: CREATE TABLE "InvoiceItem" ( key blob, column1 uuid, "currencyCode" text, description text, "priceGross" bigint, "priceNett" bigint, quantity varint, sku text, "unitPriceGross" bigint, "unitPriceNett" bigint, vat bigint, "vatRateBasisPoints" varint, PRIMARY KEY ((key), column1) ) WITH COMPACT STORAGE AND bloom_filter_fp_chance=0.010000 AND caching='KEYS_ONLY' AND comment='' AND dclocal_read_repair_chance=0.000000 AND gc_grace_seconds=864000 AND index_interval=128 AND read_repair_chance=1.000000 AND replicate_on_write='true' AND populate_io_cache_on_flush='false' AND default_time_to_live=0 AND speculative_retry='99.0PERCENTILE' AND memtable_flush_period_in_ms=0 AND compaction={'class': 'SizeTieredCompactionStrategy'} AND compression={}; The stack trace when starting up: ERROR 13:51:57 Exception encountered during startup org.apache.cassandra.serializers.MarshalException: unable to make version 1 UUID from 'currencyCode' at org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:188) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.db.marshal.AbstractCompositeType.fromString(AbstractCompositeType.java:242) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.ColumnDefinition.fromSchema(ColumnDefinition.java:397) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.CFMetaData.fromSchemaNoTriggers(CFMetaData.java:1750) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.CFMetaData.fromSchema(CFMetaData.java:1860) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.KSMetaData.deserializeColumnFamilies(KSMetaData.java:321) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.KSMetaData.fromSchema(KSMetaData.java:302) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.db.DefsTables.loadFromKeyspace(DefsTables.java:133) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:696) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:672) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:293) [apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:536) [apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:625) [apache-cassandra-2.1.6.jar:2.1.6] Caused by: org.apache.cassandra.serializers.MarshalException: unable to coerce 'currencyCode' to a formatted date (long) at org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:111) ~[apache-cassandra-2.1.6.jar:2.1.6] at org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:184) ~[apache-cassandra-2.1.6.jar:2.1.6] ... 12 common frames omitted Caused by: java.text.ParseException: Unable to parse the date: currencyCode at org.apache.commons.lang3.time.DateUtils.parseDateWithLeniency(DateUtils.java:336) ~[commons-lang3-3.1.jar:3.1] at org.apache.commons.lang3.time.DateUtils.parseDateStrictly(DateUtils.java:286) ~[commons-lang3-3.1.jar:3.1] at org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:107) ~[apache-cassandra-2.1.6.jar:2.1.6] ... 13 common frames omitted org.apache.cassandra.serializers.MarshalException: unable to make version 1 UUID from 'currencyCode' at org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:188) at org.apache.cassandra.db.marshal.AbstractCompositeType.fromString(AbstractCompositeType.java:242) at org.apache.cassandra.config.ColumnDefinition.fromSchema(ColumnDefinition.java:397) at org.apache.cassandra.config.CFMetaData.fromSchemaNoTriggers(CFMetaData.java:1750) at org.apache.cassandra.config.CFMetaData.fromSchema(CFMetaData.java:1860) at org.apache.cassandra.config.KSMetaData.deserializeColumnFamilies(KSMetaData.java:321) at org.apache.cassandra.config.KSMetaData.fromSchema(KSMetaData.java:302) at org.apache.cassandra.db.DefsTables.loadFromKeyspace(DefsTables.java:133) at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:696) at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:672) at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:293) at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:536) at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:625) Caused by: org.apache.cassandra.serializers.MarshalException: unable to coerce 'currencyCode' to a formatted date (long) at org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:111) at org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:184) ... 12 more Caused by: java.text.ParseException: Unable to parse the date: currencyCode at org.apache.commons.lang3.time.DateUtils.parseDateWithLeniency(DateUtils.java:336) at org.apache.commons.lang3.time.DateUtils.parseDateStrictly(DateUtils.java:286) at org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:107) ... 13 more Exception encountered during startup: unable to make version 1 UUID from 'currencyCode' > MarshalException after upgrading to 2.1.6 > ----------------------------------------- > > Key: CASSANDRA-9582 > URL: https://issues.apache.org/jira/browse/CASSANDRA-9582 > Project: Cassandra > Issue Type: Bug > Reporter: Tom van den Berge > > I've upgraded a node from 2.0.10 to 2.1.6. Before taking down the node, I've > run nodetool upgradesstables and nodetool scrub. > When starting up the node with 2.1.6, I'm getting a MarshalException > (stacktrace included below). For some reason, it seems that C* is trying to > convert a text value from the column 'currencyCode' to a UUID, which it isn't. > I've had similar errors for two other columns as well, which I could work > around by dropping the table, since it wasn't used anymore. > The only thing I could do was restoring a snapshot and starting up the old > 2.0.10 again. > The schema of the table (I've got only one table containing a column named > 'currencyCode') is: > {code} > CREATE TABLE "InvoiceItem" ( > key blob, > column1 uuid, > "currencyCode" text, > description text, > "priceGross" bigint, > "priceNett" bigint, > quantity varint, > sku text, > "unitPriceGross" bigint, > "unitPriceNett" bigint, > vat bigint, > "vatRateBasisPoints" varint, > PRIMARY KEY ((key), column1) > ) WITH COMPACT STORAGE AND > bloom_filter_fp_chance=0.010000 AND > caching='KEYS_ONLY' AND > comment='' AND > dclocal_read_repair_chance=0.000000 AND > gc_grace_seconds=864000 AND > index_interval=128 AND > read_repair_chance=1.000000 AND > replicate_on_write='true' AND > populate_io_cache_on_flush='false' AND > default_time_to_live=0 AND > speculative_retry='99.0PERCENTILE' AND > memtable_flush_period_in_ms=0 AND > compaction={'class': 'SizeTieredCompactionStrategy'} AND > compression={};{code} > The stack trace when starting up: > {code} > ERROR 13:51:57 Exception encountered during startup > org.apache.cassandra.serializers.MarshalException: unable to make version 1 > UUID from 'currencyCode' > at > org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:188) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.db.marshal.AbstractCompositeType.fromString(AbstractCompositeType.java:242) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.config.ColumnDefinition.fromSchema(ColumnDefinition.java:397) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.config.CFMetaData.fromSchemaNoTriggers(CFMetaData.java:1750) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.config.CFMetaData.fromSchema(CFMetaData.java:1860) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.config.KSMetaData.deserializeColumnFamilies(KSMetaData.java:321) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.config.KSMetaData.fromSchema(KSMetaData.java:302) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.db.DefsTables.loadFromKeyspace(DefsTables.java:133) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:696) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:672) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:293) > [apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:536) > [apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:625) > [apache-cassandra-2.1.6.jar:2.1.6] > Caused by: org.apache.cassandra.serializers.MarshalException: unable to > coerce 'currencyCode' to a formatted date (long) > at > org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:111) > ~[apache-cassandra-2.1.6.jar:2.1.6] > at > org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:184) > ~[apache-cassandra-2.1.6.jar:2.1.6] > ... 12 common frames omitted > Caused by: java.text.ParseException: Unable to parse the date: currencyCode > at > org.apache.commons.lang3.time.DateUtils.parseDateWithLeniency(DateUtils.java:336) > ~[commons-lang3-3.1.jar:3.1] > at > org.apache.commons.lang3.time.DateUtils.parseDateStrictly(DateUtils.java:286) > ~[commons-lang3-3.1.jar:3.1] > at > org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:107) > ~[apache-cassandra-2.1.6.jar:2.1.6] > ... 13 common frames omitted > org.apache.cassandra.serializers.MarshalException: unable to make version 1 > UUID from 'currencyCode' > at > org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:188) > at > org.apache.cassandra.db.marshal.AbstractCompositeType.fromString(AbstractCompositeType.java:242) > at > org.apache.cassandra.config.ColumnDefinition.fromSchema(ColumnDefinition.java:397) > at > org.apache.cassandra.config.CFMetaData.fromSchemaNoTriggers(CFMetaData.java:1750) > at > org.apache.cassandra.config.CFMetaData.fromSchema(CFMetaData.java:1860) > at > org.apache.cassandra.config.KSMetaData.deserializeColumnFamilies(KSMetaData.java:321) > at > org.apache.cassandra.config.KSMetaData.fromSchema(KSMetaData.java:302) > at > org.apache.cassandra.db.DefsTables.loadFromKeyspace(DefsTables.java:133) > at > org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:696) > at > org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:672) > at > org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:293) > at > org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:536) > at > org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:625) > Caused by: org.apache.cassandra.serializers.MarshalException: unable to > coerce 'currencyCode' to a formatted date (long) > at > org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:111) > at > org.apache.cassandra.db.marshal.UUIDType.fromString(UUIDType.java:184) > ... 12 more > Caused by: java.text.ParseException: Unable to parse the date: currencyCode > at > org.apache.commons.lang3.time.DateUtils.parseDateWithLeniency(DateUtils.java:336) > at > org.apache.commons.lang3.time.DateUtils.parseDateStrictly(DateUtils.java:286) > at > org.apache.cassandra.serializers.TimestampSerializer.dateStringToTimestamp(TimestampSerializer.java:107) > ... 13 more > Exception encountered during startup: unable to make version 1 UUID from > 'currencyCode'{code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)