Commit 2d12ab0
authored
Avoid read docs twice when filtered
* Add more tests for couch_changes and fabric changes
Add more tests to ensure the response is the same before and after
the code change.
Code coverage improvements
- chttpd_changes_test.erl: 99% -> 100%
- couch_changes.erl: 80% -> 82%
- fabric_rpc.erl: 56% -> 61%
* Verify the number of calls to `open_doc/3` when requesting `_changes`
* Avoid read docs twice when filtered _changes is triggered
- When filered `_changes` is triggered, `open_revs()` will
read docs. If request parameter has `include_docs=true`,
then `doc_member()` will also read docs.
To avoid the above behavior, changed `filter/3` to `filter/5`.
- When using filtered `_changes` with `style=all_docs`,
`conflicts=true` and `include_docs=true`, the response should
contain the `_conflicts` field.
Add `open_all_revs_include_doc/2` to include `_conflicts` field.
- If conflicted docs contain a deleted doc, the deleted `rev` value
should not appear in the `doc` field.
Add `Doc#doc.deleted =:= false` filter to avoid this behaviour.
* Update tests to verify the number of calls to `open_doc/3`_changes is triggered (#4862)1 parent 5c6aeab commit 2d12ab0
5 files changed
Lines changed: 1542 additions & 175 deletions
File tree
- src
- chttpd/test/eunit
- couch
- src
- test/eunit
- fabric
- src
- test/eunit
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
153 | 153 | | |
154 | 154 | | |
155 | 155 | | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
156 | 168 | | |
157 | 169 | | |
158 | 170 | | |
| |||
853 | 865 | | |
854 | 866 | | |
855 | 867 | | |
856 | | - | |
| 868 | + | |
| 869 | + | |
| 870 | + | |
| 871 | + | |
| 872 | + | |
| 873 | + | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
| 878 | + | |
| 879 | + | |
| 880 | + | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
| 884 | + | |
| 885 | + | |
| 886 | + | |
| 887 | + | |
857 | 888 | | |
| 889 | + | |
| 890 | + | |
| 891 | + | |
| 892 | + | |
| 893 | + | |
| 894 | + | |
| 895 | + | |
| 896 | + | |
| 897 | + | |
| 898 | + | |
| 899 | + | |
| 900 | + | |
858 | 901 | | |
859 | 902 | | |
860 | 903 | | |
| |||
883 | 926 | | |
884 | 927 | | |
885 | 928 | | |
| 929 | + | |
886 | 930 | | |
887 | 931 | | |
888 | 932 | | |
| |||
891 | 935 | | |
892 | 936 | | |
893 | 937 | | |
894 | | - | |
895 | | - | |
896 | | - | |
897 | | - | |
898 | | - | |
899 | | - | |
| 938 | + | |
| 939 | + | |
900 | 940 | | |
901 | 941 | | |
902 | | - | |
903 | | - | |
904 | | - | |
905 | | - | |
906 | | - | |
907 | | - | |
| 942 | + | |
908 | 943 | | |
909 | 944 | | |
910 | 945 | | |
| |||
1033 | 1068 | | |
1034 | 1069 | | |
1035 | 1070 | | |
| 1071 | + | |
| 1072 | + | |
| 1073 | + | |
| 1074 | + | |
| 1075 | + | |
| 1076 | + | |
| 1077 | + | |
| 1078 | + | |
| 1079 | + | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
| 1087 | + | |
| 1088 | + | |
| 1089 | + | |
| 1090 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | | - | |
| 22 | + | |
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| |||
225 | 225 | | |
226 | 226 | | |
227 | 227 | | |
228 | | - | |
229 | | - | |
230 | | - | |
231 | | - | |
232 | | - | |
233 | | - | |
234 | | - | |
235 | | - | |
236 | | - | |
237 | | - | |
238 | | - | |
239 | | - | |
240 | | - | |
241 | | - | |
242 | | - | |
243 | | - | |
244 | | - | |
245 | | - | |
246 | | - | |
247 | | - | |
248 | | - | |
249 | | - | |
250 | | - | |
251 | | - | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
252 | 260 | | |
253 | | - | |
254 | | - | |
| 261 | + | |
| 262 | + | |
255 | 263 | | |
256 | | - | |
257 | | - | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
258 | 282 | | |
259 | 283 | | |
260 | 284 | | |
261 | 285 | | |
262 | 286 | | |
263 | | - | |
| 287 | + | |
264 | 288 | | |
265 | | - | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
266 | 293 | | |
267 | 294 | | |
268 | 295 | | |
| |||
357 | 384 | | |
358 | 385 | | |
359 | 386 | | |
360 | | - | |
| 387 | + | |
361 | 388 | | |
362 | 389 | | |
363 | 390 | | |
364 | 391 | | |
365 | 392 | | |
366 | | - | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
367 | 398 | | |
368 | 399 | | |
369 | 400 | | |
370 | 401 | | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
371 | 413 | | |
372 | 414 | | |
373 | 415 | | |
| |||
611 | 653 | | |
612 | 654 | | |
613 | 655 | | |
| 656 | + | |
| 657 | + | |
614 | 658 | | |
615 | 659 | | |
616 | 660 | | |
617 | 661 | | |
618 | 662 | | |
619 | | - | |
| 663 | + | |
620 | 664 | | |
621 | 665 | | |
622 | 666 | | |
| |||
0 commit comments