mirror of https://github.com/apache/cassandra
migrate 1.1 schema_columnfamilies.key_alias column to key_aliases
patch by Alex Liu; reviewed by Tyler Hobbs for CASSANDRA-5800
This commit is contained in:
parent
f5d632fa7a
commit
fd14512fd2
|
|
@ -1,4 +1,6 @@
|
|||
1.2.9
|
||||
* migrate 1.1 schema_columnfamilies.key_alias column to key_aliases
|
||||
(CASSANDRA-5800)
|
||||
* add --migrate option to sstableupgrade and sstablescrub (CASSANDRA-5831)
|
||||
* fix bulk-loading compressed sstables (CASSANDRA-5820)
|
||||
* (Hadoop) fix quoting in CqlPagingRecordReader and CqlRecordWriter
|
||||
|
|
|
|||
|
|
@ -180,6 +180,44 @@ public class SystemTable
|
|||
logger.info("Possible old-format hints found. Truncating");
|
||||
oldHintsCfs.truncate();
|
||||
}
|
||||
|
||||
migrateKeyAliases();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 1.1 used a key_alias column; 1.2 changed that to key_aliases as part of CQL3
|
||||
*/
|
||||
private static void migrateKeyAliases()
|
||||
{
|
||||
for (UntypedResultSet.Row row : processInternal("SELECT keyspace_name, columnfamily_name, key_aliases, key_alias FROM system.schema_columnfamilies"))
|
||||
{
|
||||
String key_alias = null;
|
||||
String key_aliases = null;
|
||||
try
|
||||
{
|
||||
key_alias = row.getString("key_alias");
|
||||
}
|
||||
catch (NullPointerException e)
|
||||
{
|
||||
// column value is null
|
||||
}
|
||||
try
|
||||
{
|
||||
key_aliases = row.getString("key_aliases");
|
||||
}
|
||||
catch (NullPointerException e)
|
||||
{
|
||||
// column value is null
|
||||
}
|
||||
if (key_alias != null && key_aliases == null)
|
||||
{
|
||||
String keyspace = row.getString("keyspace_name");
|
||||
String columnfamily = row.getString("columnfamily_name");
|
||||
processInternal(String.format("UPDATE system.schema_columnfamilies set key_aliases='[\"%s\"]' , key_alias = null where keyspace_name='%s' and columnfamily_name='%s'",
|
||||
key_alias, keyspace, columnfamily));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void saveTruncationRecord(ColumnFamilyStore cfs, long truncatedAt, ReplayPosition position)
|
||||
|
|
|
|||
Loading…
Reference in New Issue