Adding secondary index with and do not overwrite existing ones --------------------------------------------------------------
Key: CASSANDRA-2676 URL: https://issues.apache.org/jira/browse/CASSANDRA-2676 Project: Cassandra Issue Type: New Feature Components: API Reporter: Markus Wiesenbacher Priority: Minor Hi, I am hard working on a web client for Cassandra (about 80% reached by now), and have a problem. I am using following function to create a new secondary index: public boolean insertSecondaryIndex (String keyspace, String column_family, int columnfamilyid, String columnfamily_comparator, String column_validation_class, String column_index_name, String column_index_field) throws Exception { if (!isClosed()) { client.set_keyspace(keyspace); CfDef cfDef = new CfDef(keyspace, column_family); cfDef.setId(columnfamilyid); cfDef.setComparator_type(columnfamily_comparator); // secondary index definition ColumnDef column_metadata = new ColumnDef(); column_metadata.setIndex_name(column_index_name); column_metadata.setName(ByteBuffer.wrap(column_index_field.getBytes())); column_metadata.setValidation_class(lastPart(column_validation_class, ".")); column_metadata.setIndex_type(IndexType.KEYS); cfDef.addToColumn_metadata(column_metadata); client.system_update_column_family(cfDef); return true; } return false; } This seems to overwrite the already existing indices. I use this to select the indexed field names: public HashMap<String, String> getIndexColumns (String keyspaceName, String columnFamilyName) throws Exception { HashMap<String, String> toret = new HashMap<String,String>(); if (!isClosed()) { KsDef keyspace = client.describe_keyspace(keyspaceName); List<CfDef> columnFamilies = keyspace.getCf_defs(); for (CfDef columnFamily : columnFamilies) { if (columnFamily.getName().equalsIgnoreCase(columnFamilyName)) { Iterator<ColumnDef> iter = columnFamily.getColumn_metadataIterator(); while (iter.hasNext()) { ColumnDef cd = iter.next(); toret.put (new String(cd.getName(), encoding), ""); } break; } } } return toret; } Is this by design or a bug? Many thanks and best regards Wiesi ;) -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira