gotime-cassandra_object 4.10.2 → 4.10.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dc64be77dc2226fed23bcf8c42c485481c9ce89c
4
- data.tar.gz: 01fe5ae6645ce36caf4b5825b31ac985be16a55d
3
+ metadata.gz: 23bf74ddf71aa7a52c184a5b8f7196c3d701873f
4
+ data.tar.gz: 3271e9688e9b9a8aaf2e1f95afdf1e9a90f32dbd
5
5
  SHA512:
6
- metadata.gz: 115a5fb6f7a9286afcec5c80f6bca49c63c86ad6be6a879f4d06446d41bb8c66f251d6ad9400e7c3d5392ed5a2e6070e67450d690339d76e140468984b007516
7
- data.tar.gz: 9cab61d72f194b8a66fb4251b107cc3862e07cf580d54c9d5094b71dbe54d041a2a32d8719cc2dc5b38222284c96ab787e9a2449cce4c54f79a46577e9346fbd
6
+ metadata.gz: d98c2fe396fab3782ccc2aaceb0d04d862d43298036ed58776bbf8c2ee7a630860990d9dbbf42c76c95d6339f1ca33eeb90b65210011a500b91e5e71056423f0
7
+ data.tar.gz: 7f3a4d08478fabd769dbbc0ffbaf9514b0caba1ab094f8c900fe2b56455e21483431f5d6d1bbbce91a2babea6cd9b718b9cac2efd10adf4b34111e8e8fc9da8a
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'gotime-cassandra_object'
5
- s.version = '4.10.2'
5
+ s.version = '4.10.3'
6
6
  s.description = 'Cassandra ActiveModel'
7
7
  s.summary = 'Cassandra ActiveModel'
8
8
  s.authors = ["Michael Koziarski", "gotime"]
@@ -28,28 +28,26 @@ module CassandraObject
28
28
  stmt = "CREATE COLUMNFAMILY #{column_family} " +
29
29
  "(KEY varchar PRIMARY KEY)"
30
30
 
31
- execute statement_with_options(stmt, options)
31
+ keyspace_execute statement_with_options(stmt, options)
32
32
  end
33
33
 
34
34
  def alter_column_family(column_family, instruction, options = {})
35
35
  stmt = "ALTER TABLE #{column_family} #{instruction}"
36
- execute statement_with_options(stmt, options)
36
+ keyspace_execute statement_with_options(stmt, options)
37
37
  end
38
38
 
39
39
  def drop_column_family(column_family)
40
- stmt = "DROP TABLE #{column_family}"
41
- execute stmt
40
+ keyspace_execute "DROP TABLE #{column_family}"
42
41
  end
43
42
 
44
43
  def add_index(column_family, column, index_name = nil)
45
44
  stmt = "CREATE INDEX #{index_name.nil? ? '' : index_name} ON #{column_family} (#{column})"
46
- execute stmt
45
+ keyspace_execute stmt
47
46
  end
48
47
 
48
+ # If the index was not given a name during creation, the index name is <columnfamily_name>_<column_name>_idx.
49
49
  def drop_index(index_name)
50
- # If the index was not given a name during creation, the index name is <columnfamily_name>_<column_name>_idx.
51
- stmt = "DROP INDEX #{index_name}"
52
- execute stmt
50
+ keyspace_execute "DROP INDEX #{index_name}"
53
51
  end
54
52
 
55
53
  private
@@ -65,13 +63,18 @@ module CassandraObject
65
63
  stmt
66
64
  end
67
65
 
68
- def execute(cql)
69
- CassandraObject::Base.execute_cql cql
66
+ def db
67
+ @db ||= CassandraCQL::Database.new(CassandraObject::Base.config.servers, {keyspace: 'system'}, {connect_timeout: 30, timeout: 30})
68
+ end
69
+
70
+ def keyspace_execute(cql)
71
+ db.execute "USE #{CassandraObject::Base.config.keyspace}"
72
+ db.execute cql
70
73
  end
71
74
 
72
75
  def system_execute(cql)
73
- @system_cql ||= CassandraCQL::Database.new(CassandraObject::Base.config.servers, keyspace: 'system')
74
- @system_cql.execute cql
76
+ db.execute "USE system"
77
+ db.execute cql
75
78
  end
76
79
  end
77
80
  end
@@ -1,6 +1,21 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class CassandraObject::SchemaTest < CassandraObject::TestCase
4
+ test "create_keyspace" do
5
+ CassandraObject::Schema.create_keyspace 'Blah'
6
+
7
+ existing_keyspace = false
8
+ begin
9
+ CassandraObject::Schema.create_keyspace 'Blah'
10
+ rescue Exception => e
11
+ existing_keyspace = true
12
+ ensure
13
+ CassandraObject::Schema.drop_keyspace 'Blah'
14
+ end
15
+
16
+ assert existing_keyspace
17
+ end
18
+
4
19
  test "create_column_family" do
5
20
  CassandraObject::Schema.create_column_family 'TestRecords', 'compression_parameters:sstable_compression' => 'SnappyCompressor'
6
21
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gotime-cassandra_object
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.10.2
4
+ version: 4.10.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Koziarski
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-10-21 00:00:00.000000000 Z
12
+ date: 2013-10-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activemodel