redis-roc 0.5.0 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/roc/store/transient_store.rb +29 -4
- data/lib/roc/version.rb +1 -1
- metadata +3 -3
@@ -579,6 +579,11 @@ module ROC
|
|
579
579
|
self.keyspace[key.to_s].delete_at(i - correction)
|
580
580
|
correction += 1
|
581
581
|
end
|
582
|
+
|
583
|
+
if 0 == self.llen(key)
|
584
|
+
self.del(key)
|
585
|
+
end
|
586
|
+
|
582
587
|
indexes_to_del.size
|
583
588
|
else
|
584
589
|
0
|
@@ -721,7 +726,11 @@ module ROC
|
|
721
726
|
if hsh.nil?
|
722
727
|
false
|
723
728
|
else
|
724
|
-
!!hsh.delete(val.to_s)
|
729
|
+
ret = !!hsh.delete(val.to_s)
|
730
|
+
if 0 == hsh.size
|
731
|
+
self.del(key)
|
732
|
+
end
|
733
|
+
ret
|
725
734
|
end
|
726
735
|
end
|
727
736
|
end
|
@@ -1009,6 +1018,9 @@ module ROC
|
|
1009
1018
|
else
|
1010
1019
|
if hsh[:map].delete(val.to_s)
|
1011
1020
|
self.resort(key)
|
1021
|
+
if 0 == hsh[:list].size
|
1022
|
+
self.del(key)
|
1023
|
+
end
|
1012
1024
|
true
|
1013
1025
|
else
|
1014
1026
|
false
|
@@ -1020,10 +1032,14 @@ module ROC
|
|
1020
1032
|
def zremrangebyscore(key, min, max)
|
1021
1033
|
vals = self.zrangebyscore(key, min, max)
|
1022
1034
|
if vals.size > 0
|
1035
|
+
hsh = self.keyspace[key.to_s]
|
1023
1036
|
vals.each do |val|
|
1024
|
-
|
1037
|
+
hsh[:map].delete(val)
|
1025
1038
|
end
|
1026
1039
|
self.resort(key)
|
1040
|
+
if 0 == hsh[:list].size
|
1041
|
+
self.del(key)
|
1042
|
+
end
|
1027
1043
|
vals.size
|
1028
1044
|
else
|
1029
1045
|
0
|
@@ -1033,10 +1049,14 @@ module ROC
|
|
1033
1049
|
def zremrangebyrank(key, start, stop)
|
1034
1050
|
vals = self.zrange(key, start, stop)
|
1035
1051
|
if vals.size > 0
|
1052
|
+
hsh = self.keyspace[key.to_s]
|
1036
1053
|
vals.each do |val|
|
1037
|
-
|
1054
|
+
hsh[:map].delete(val)
|
1038
1055
|
end
|
1039
1056
|
self.resort(key)
|
1057
|
+
if 0 == hsh[:list].size
|
1058
|
+
self.del(key)
|
1059
|
+
end
|
1040
1060
|
vals.size
|
1041
1061
|
else
|
1042
1062
|
0
|
@@ -1163,7 +1183,12 @@ module ROC
|
|
1163
1183
|
|
1164
1184
|
def hdel(key, field)
|
1165
1185
|
with_type(key, 'hash') do
|
1166
|
-
|
1186
|
+
hsh = self.keyspace[key.to_s]
|
1187
|
+
ret = self.exists(key) && !!hsh.delete(field.to_s)
|
1188
|
+
if 0 == hsh.size
|
1189
|
+
self.del(key)
|
1190
|
+
end
|
1191
|
+
ret
|
1167
1192
|
end
|
1168
1193
|
end
|
1169
1194
|
|
data/lib/roc/version.rb
CHANGED
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 5
|
8
|
-
-
|
9
|
-
version: 0.5.
|
8
|
+
- 1
|
9
|
+
version: 0.5.1
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Ben Lund
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2011-08-
|
17
|
+
date: 2011-08-15 00:00:00 +01:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|