From 6148b9edbf0c77d4d77e75d6654033d356e2d6a8 Mon Sep 17 00:00:00 2001 From: Jon Haddad Date: Thu, 15 Aug 2013 16:44:31 -0700 Subject: [PATCH] working on alters --- cqlengine/management.py | 15 ++++++++++++++- cqlengine/tests/management/test_management.py | 5 +++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/cqlengine/management.py b/cqlengine/management.py index eae327a6..ddcbdaa2 100644 --- a/cqlengine/management.py +++ b/cqlengine/management.py @@ -75,7 +75,6 @@ def sync_table(model, create_missing_keyspace=True): tables = [x[0] for x in tables.results] #check for an existing column family - #TODO: check system tables instead of using cql thrifteries if raw_cf_name not in tables: qs = get_create_table(model) @@ -218,6 +217,20 @@ def get_fields(model): return [Field(x[0], x[1]) for x in tmp.results] # convert to Field named tuples +def get_compaction_settings(model): + # returns a dictionary of compaction settings in an existing table + ks_name = model._get_keyspace() + col_family = model.column_family_name(include_keyspace=False) + with connection_manager() as con: + query = "SELECT , validator FROM system.schema_columns \ + WHERE keyspace_name = :ks_name AND columnfamily_name = :col_family" + + logger.debug("get_fields %s %s", ks_name, col_family) + + tmp = con.execute(query, {'ks_name':ks_name, 'col_family':col_family}) + import ipdb; ipdb.set_trace() + + def delete_table(model): warnings.warn("delete_table has been deprecated in favor of drop_table()", DeprecationWarning) return drop_table(model) diff --git a/cqlengine/tests/management/test_management.py b/cqlengine/tests/management/test_management.py index a89c0b40..6f1a8337 100644 --- a/cqlengine/tests/management/test_management.py +++ b/cqlengine/tests/management/test_management.py @@ -229,4 +229,9 @@ class LeveledCompactionTest(BaseCompactionTest): drop_table(LeveledcompactionTestTable) sync_table(LeveledcompactionTestTable) + LeveledcompactionTestTable.__compaction__ = SizeTieredCompactionStrategy + LeveledcompactionTestTable.__compaction_sstable_size_in_mb__ = None + + sync_table(LeveledcompactionTestTable) +