Commit 1399a1a
committed
issue #418 - add order by clause to searchByIds to ensure sorted results
1. Updated the SearchPerformanceTest so that the observations have
components with values...just to easily create many observations which
helps verify the search behavior. This change could be removed if we
want.
2. Deleted unused variants of searchForIds and searchByIds. I think
these came from the original "basic" schema that was removed for
#93 but they were no longer in use and
should be safe to delete.
3. Introduced ORDER BY CASE clause to ResourceDAOImpl.searchByIds.
I found that DERBY is always returning the results in the same order as
the resource ids provided in the "IN" clause, but in general we
shouldn't rely on that. I tested the CASE statements on derby with up
to 1000 results, but we need to run a similar test on Db2 to ensure it
works there as well.
Signed-off-by: Lee Surprenant <lmsurpre@us.ibm.com>1 parent e19202a commit 1399a1a
6 files changed
Lines changed: 70 additions & 140 deletions
File tree
- fhir-persistence-jdbc/src/main/java/com/ibm/fhir/persistence/jdbc
- dao
- api
- impl
- util
- fhir-server-test/src/test/java/com/ibm/fhir/server/test
Lines changed: 3 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
44 | 47 | | |
45 | 48 | | |
46 | 49 | | |
| |||
Lines changed: 4 additions & 26 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
118 | 118 | | |
119 | 119 | | |
120 | 120 | | |
121 | | - | |
122 | | - | |
| 121 | + | |
123 | 122 | | |
124 | 123 | | |
125 | 124 | | |
| 125 | + | |
126 | 126 | | |
127 | 127 | | |
128 | 128 | | |
129 | 129 | | |
130 | 130 | | |
131 | | - | |
132 | | - | |
133 | | - | |
| 131 | + | |
| 132 | + | |
134 | 133 | | |
135 | 134 | | |
136 | 135 | | |
| |||
173 | 172 | | |
174 | 173 | | |
175 | 174 | | |
176 | | - | |
177 | | - | |
178 | | - | |
179 | | - | |
180 | | - | |
181 | | - | |
182 | | - | |
183 | | - | |
184 | | - | |
185 | | - | |
186 | | - | |
187 | | - | |
188 | | - | |
189 | | - | |
190 | | - | |
191 | | - | |
192 | | - | |
193 | | - | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | 175 | | |
198 | 176 | | |
199 | 177 | | |
| |||
Lines changed: 32 additions & 104 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
| 10 | + | |
9 | 11 | | |
10 | 12 | | |
11 | 13 | | |
| |||
90 | 92 | | |
91 | 93 | | |
92 | 94 | | |
| 95 | + | |
| 96 | + | |
93 | 97 | | |
94 | 98 | | |
95 | 99 | | |
| |||
418 | 422 | | |
419 | 423 | | |
420 | 424 | | |
421 | | - | |
422 | | - | |
423 | | - | |
424 | | - | |
425 | | - | |
426 | | - | |
427 | | - | |
428 | | - | |
429 | | - | |
430 | | - | |
431 | | - | |
432 | | - | |
433 | | - | |
434 | | - | |
435 | | - | |
436 | | - | |
437 | | - | |
438 | | - | |
439 | | - | |
440 | | - | |
441 | | - | |
442 | | - | |
443 | | - | |
444 | | - | |
445 | | - | |
446 | | - | |
447 | | - | |
448 | | - | |
449 | | - | |
450 | | - | |
451 | | - | |
452 | | - | |
453 | | - | |
454 | | - | |
455 | | - | |
456 | | - | |
457 | | - | |
458 | | - | |
459 | | - | |
460 | | - | |
461 | | - | |
462 | | - | |
463 | | - | |
464 | | - | |
465 | | - | |
466 | | - | |
467 | | - | |
468 | | - | |
469 | | - | |
470 | | - | |
471 | | - | |
472 | | - | |
473 | | - | |
474 | | - | |
475 | | - | |
476 | | - | |
477 | | - | |
478 | | - | |
| 425 | + | |
479 | 426 | | |
480 | 427 | | |
481 | 428 | | |
| |||
734 | 681 | | |
735 | 682 | | |
736 | 683 | | |
737 | | - | |
738 | | - | |
739 | | - | |
740 | | - | |
741 | | - | |
742 | | - | |
743 | | - | |
744 | | - | |
745 | | - | |
746 | | - | |
747 | | - | |
748 | | - | |
749 | | - | |
750 | | - | |
751 | | - | |
752 | | - | |
753 | | - | |
754 | | - | |
755 | | - | |
756 | | - | |
757 | | - | |
758 | | - | |
759 | | - | |
760 | | - | |
761 | | - | |
762 | | - | |
763 | | - | |
764 | | - | |
765 | | - | |
766 | | - | |
767 | | - | |
768 | | - | |
769 | | - | |
| 684 | + | |
770 | 685 | | |
771 | 686 | | |
772 | 687 | | |
773 | 688 | | |
774 | 689 | | |
775 | 690 | | |
776 | | - | |
| 691 | + | |
777 | 692 | | |
778 | 693 | | |
779 | 694 | | |
780 | 695 | | |
781 | 696 | | |
782 | 697 | | |
783 | | - | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
784 | 702 | | |
785 | | - | |
| 703 | + | |
| 704 | + | |
786 | 705 | | |
| 706 | + | |
| 707 | + | |
787 | 708 | | |
788 | 709 | | |
789 | 710 | | |
790 | 711 | | |
791 | | - | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
792 | 716 | | |
793 | | - | |
794 | | - | |
| 717 | + | |
| 718 | + | |
795 | 719 | | |
796 | 720 | | |
797 | | - | |
798 | | - | |
799 | | - | |
800 | | - | |
| 721 | + | |
801 | 722 | | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
802 | 727 | | |
803 | 728 | | |
804 | 729 | | |
805 | 730 | | |
806 | | - | |
807 | | - | |
808 | | - | |
| 731 | + | |
| 732 | + | |
809 | 733 | | |
810 | 734 | | |
811 | 735 | | |
| |||
814 | 738 | | |
815 | 739 | | |
816 | 740 | | |
| 741 | + | |
| 742 | + | |
| 743 | + | |
| 744 | + | |
817 | 745 | | |
818 | 746 | | |
819 | 747 | | |
| |||
Lines changed: 8 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
69 | 68 | | |
70 | 69 | | |
71 | 70 | | |
| |||
Lines changed: 22 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| 18 | + | |
18 | 19 | | |
19 | 20 | | |
20 | 21 | | |
| |||
27 | 28 | | |
28 | 29 | | |
29 | 30 | | |
| 31 | + | |
30 | 32 | | |
31 | 33 | | |
| 34 | + | |
32 | 35 | | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
33 | 39 | | |
34 | 40 | | |
35 | 41 | | |
| |||
44 | 50 | | |
45 | 51 | | |
46 | 52 | | |
47 | | - | |
| 53 | + | |
48 | 54 | | |
49 | 55 | | |
50 | 56 | | |
| |||
87 | 93 | | |
88 | 94 | | |
89 | 95 | | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
90 | 111 | | |
91 | 112 | | |
92 | 113 | | |
| |||
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
674 | 674 | | |
675 | 675 | | |
676 | 676 | | |
| 677 | + | |
677 | 678 | | |
678 | 679 | | |
679 | 680 | | |
| |||
0 commit comments