rocksdb-ruby 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 877a71b0f471b4a5c045c73357baba3aa15f60d0
4
- data.tar.gz: 2bd8f14ce238885afa810d742fc70eb3cd8ea608
3
+ metadata.gz: 508079e41f7fdac06ebdb734ef57f74af0ea97cc
4
+ data.tar.gz: 0887f5b646875890f6fd08707c404e9ae9724ac4
5
5
  SHA512:
6
- metadata.gz: d2c9e587b5ffe39364ee6bd2ccf89214a5d1f1f618e9dd5e9b1a6f400ffbdec21e2b43200f042640ae75888fac551fc39cedb58484ff97bf246f1d0dd3d1859f
7
- data.tar.gz: 97f1ad5e431da4953ba5850d425f51cccf9d817e56a787e6266f96b845e5bdfb9fa20f58f01cea7fcc48ad8d2524ffd9fa48cb55076f44f77733c3546142d603
6
+ metadata.gz: 019a972398e9c9a331eed14e1a24dc17521c66e036c4dbad999e4c6fe4500f0c36305164384140dbcc91455882352ff7106b5a274400d6780fc19d5789b7c54f
7
+ data.tar.gz: 9e6f2e227742dc9f7f205fbbc9cf353f17c444ead0e0d5a5756520dd64742dd0316c53dbb9f245c4d75c06708c60483a0069a8723e269c0a0c56226d68b36a10
@@ -64,9 +64,10 @@ extern "C" {
64
64
 
65
65
  std::string key = std::string((char*)RSTRING_PTR(v_key));
66
66
  std::string value;
67
- db_pointer->db->Get(rocksdb::ReadOptions(), key, &value);
68
-
69
- return rb_enc_str_new(value.data(), value.size(), rb_utf8_encoding());
67
+ rocksdb::Status status = db_pointer->db->Get(rocksdb::ReadOptions(), key, &value);
68
+
69
+ return (status.IsNotFound()) ? Qnil : rb_enc_str_new(value.data(), value.size(), rb_utf8_encoding());
70
+
70
71
  }
71
72
 
72
73
 
@@ -186,5 +187,6 @@ extern "C" {
186
187
  }
187
188
 
188
189
  VALUE rocksdb_db_debug(VALUE self){
190
+ return Qnil;
189
191
  }
190
192
  }
@@ -1,5 +1,5 @@
1
1
  module Rocksdb
2
2
  module Ruby
3
- VERSION = "0.0.7"
3
+ VERSION = "0.0.8"
4
4
  end
5
5
  end
data/spec/db_spec.rb CHANGED
@@ -22,7 +22,7 @@ describe RocksDB do
22
22
  expect(@rocksdb.get("test:delete")).to eq "3"
23
23
 
24
24
  expect(@rocksdb.delete("test:delete")).to be_true
25
- expect(@rocksdb.get("test:delete")).to be_empty
25
+ expect(@rocksdb.get("test:delete")).to be_nil
26
26
  end
27
27
 
28
28
  it 'should get multi data' do
@@ -38,14 +38,14 @@ describe RocksDB do
38
38
  @rocksdb.delete("test:batch2")
39
39
 
40
40
  expect(@rocksdb.get("test:batch1")).to eq "a"
41
- expect(@rocksdb.get("test:batch")).to eq ""
41
+ expect(@rocksdb.get("test:batch")).to be_nil
42
42
 
43
43
  batch = RocksDB::Batch.new
44
44
  batch.delete("test:batch1")
45
45
  batch.put("test:batch2", "b")
46
46
  @rocksdb.write(batch)
47
47
 
48
- expect(@rocksdb.get("test:batch1")).to eq ""
48
+ expect(@rocksdb.get("test:batch1")).to be_nil
49
49
  expect(@rocksdb.get("test:batch2")).to eq "b"
50
50
  end
51
51
 
@@ -92,6 +92,14 @@ describe RocksDB do
92
92
  expect(@rocksdb.includes?("test:noexists?")).to be_false
93
93
 
94
94
  end
95
+
96
+ it 'hash' do
97
+ @rocksdb.delete("test:hash")
98
+ expect(@rocksdb["test:hash"]).to be_nil
99
+ @rocksdb["test:hash"] = "a"
100
+ expect(@rocksdb["test:hash"]).to eq "a"
101
+
102
+ end
95
103
 
96
104
  after do
97
105
  @rocksdb.close
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rocksdb-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Isamu Arimoto