Commit fbd986c
committed
feat(string): support IFEQ/IFNE/IFDEQ/IFDNE conditions for SET command
- Add conditional SET options: IFEQ, IFNE, IFDEQ, IFDNE
- Propagate WRONGTYPE error when key type mismatch for conditional operations
- Handle NX option with wrong type correctly (treat as key exists)
- Add test case for SET NX GET on wrong type
This commit only includes SET command changes, DelEX changes will be
in a separate PR as requested.1 parent 505108c commit fbd986c
4 files changed
Lines changed: 82 additions & 96 deletions
File tree
- src
- commands
- types
- tests/gocase/unit/type/strings
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
108 | 108 | | |
109 | 109 | | |
110 | 110 | | |
111 | | - | |
112 | | - | |
113 | | - | |
114 | | - | |
115 | | - | |
116 | | - | |
117 | | - | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
126 | | - | |
127 | | - | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
148 | | - | |
149 | | - | |
150 | | - | |
151 | | - | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | 111 | | |
157 | 112 | | |
158 | 113 | | |
| |||
344 | 299 | | |
345 | 300 | | |
346 | 301 | | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
347 | 314 | | |
348 | 315 | | |
349 | 316 | | |
| |||
358 | 325 | | |
359 | 326 | | |
360 | 327 | | |
361 | | - | |
| 328 | + | |
362 | 329 | | |
363 | 330 | | |
364 | 331 | | |
| |||
385 | 352 | | |
386 | 353 | | |
387 | 354 | | |
| 355 | + | |
388 | 356 | | |
389 | 357 | | |
390 | 358 | | |
| |||
857 | 825 | | |
858 | 826 | | |
859 | 827 | | |
860 | | - | |
861 | 828 | | |
862 | 829 | | |
863 | 830 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
186 | | - | |
187 | | - | |
188 | | - | |
189 | | - | |
190 | | - | |
191 | | - | |
192 | | - | |
193 | | - | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | | - | |
198 | | - | |
199 | | - | |
200 | | - | |
201 | | - | |
202 | | - | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | | - | |
208 | | - | |
209 | | - | |
210 | | - | |
211 | | - | |
212 | | - | |
213 | | - | |
214 | | - | |
215 | | - | |
216 | | - | |
217 | | - | |
218 | | - | |
219 | | - | |
220 | | - | |
221 | 186 | | |
222 | 187 | | |
223 | 188 | | |
| |||
239 | 204 | | |
240 | 205 | | |
241 | 206 | | |
242 | | - | |
| 207 | + | |
243 | 208 | | |
244 | 209 | | |
245 | 210 | | |
| |||
249 | 214 | | |
250 | 215 | | |
251 | 216 | | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
252 | 232 | | |
253 | 233 | | |
254 | 234 | | |
| |||
271 | 251 | | |
272 | 252 | | |
273 | 253 | | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
274 | 286 | | |
275 | 287 | | |
276 | 288 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
| 37 | + | |
47 | 38 | | |
48 | 39 | | |
49 | 40 | | |
50 | 41 | | |
51 | 42 | | |
52 | 43 | | |
53 | 44 | | |
| 45 | + | |
54 | 46 | | |
55 | 47 | | |
56 | 48 | | |
| |||
98 | 90 | | |
99 | 91 | | |
100 | 92 | | |
101 | | - | |
102 | 93 | | |
103 | 94 | | |
104 | 95 | | |
105 | 96 | | |
106 | | - | |
107 | | - | |
| 97 | + | |
| 98 | + | |
108 | 99 | | |
109 | 100 | | |
110 | 101 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1205 | 1205 | | |
1206 | 1206 | | |
1207 | 1207 | | |
| 1208 | + | |
| 1209 | + | |
| 1210 | + | |
| 1211 | + | |
| 1212 | + | |
| 1213 | + | |
| 1214 | + | |
| 1215 | + | |
| 1216 | + | |
| 1217 | + | |
| 1218 | + | |
| 1219 | + | |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
| 1223 | + | |
0 commit comments