Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork2.2k
Commitce5b0fa
authored
* Rework HMGET and implement HGETEXInstead of using a bespoke NULL terminated `zval**` array for thecontext array we can use a `HashTable`. This might be a tiny bit moreexpensive but Zend hashtables are quite efficient and this should alsobe less error prone.* Rework our `HashTable` context array to store keysInstead of sending an array of values we can instead add the fields askeys to our context array. That way when we combine the keys with theRedis provided values we can do it in-place and then just give theHashTable to the user to then do with what they want.* Implement HGETDEL command.* Fix edge cases to abide by legacy behavior.Previously we coerced integer strings into integer keys when zipping`HMGET` responses. This commit adds logic so we continue to do this anddo not change semantics.* Implement `HGETDEL` and `HGETEX` for `RedisCluster`.This commit implements the new commands and reworks the `HMGET` replyhandler to use the new context `HashTable`.* Fix an edge case where we get zero multiblk elements* Tests for `HGETEX` and `HGETDEL`* Minor logic improvementWe don't need to check if `c->reply_len > 0` in the last else blocksince we have already determined it must be.* Implement `HSETEX` for `Redis` and `RedisCluster`* Use `zval_get_tmp_string` ro populating non-long keys
1 parent8dada17 commitce5b0fa
14 files changed
+700
-137
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
87 | 87 | | |
88 | 88 | | |
89 | 89 | | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
90 | 106 | | |
91 | 107 | | |
92 | 108 | | |
| |||
2267 | 2283 | | |
2268 | 2284 | | |
2269 | 2285 | | |
2270 | | - | |
2271 | | - | |
| 2286 | + | |
| 2287 | + | |
| 2288 | + | |
2272 | 2289 | | |
2273 | 2290 | | |
2274 | 2291 | | |
| |||
2279 | 2296 | | |
2280 | 2297 | | |
2281 | 2298 | | |
2282 | | - | |
| 2299 | + | |
2283 | 2300 | | |
| 2301 | + | |
| 2302 | + | |
| 2303 | + | |
2284 | 2304 | | |
2285 | | - | |
2286 | | - | |
2287 | | - | |
2288 | | - | |
| 2305 | + | |
| 2306 | + | |
| 2307 | + | |
2289 | 2308 | | |
2290 | | - | |
2291 | | - | |
2292 | | - | |
2293 | | - | |
2294 | | - | |
| 2309 | + | |
| 2310 | + | |
| 2311 | + | |
| 2312 | + | |
2295 | 2313 | | |
2296 | 2314 | | |
2297 | 2315 | | |
| |||
2745 | 2763 | | |
2746 | 2764 | | |
2747 | 2765 | | |
2748 | | - | |
| 2766 | + | |
2749 | 2767 | | |
2750 | 2768 | | |
2751 | 2769 | | |
2752 | 2770 | | |
2753 | 2771 | | |
2754 | 2772 | | |
2755 | 2773 | | |
2756 | | - | |
| 2774 | + | |
2757 | 2775 | | |
2758 | 2776 | | |
2759 | 2777 | | |
| |||
2763 | 2781 | | |
2764 | 2782 | | |
2765 | 2783 | | |
2766 | | - | |
| 2784 | + | |
2767 | 2785 | | |
2768 | 2786 | | |
2769 | 2787 | | |
| |||
2772 | 2790 | | |
2773 | 2791 | | |
2774 | 2792 | | |
2775 | | - | |
| 2793 | + | |
2776 | 2794 | | |
2777 | 2795 | | |
2778 | 2796 | | |
2779 | 2797 | | |
2780 | 2798 | | |
2781 | 2799 | | |
2782 | 2800 | | |
2783 | | - | |
| 2801 | + | |
2784 | 2802 | | |
2785 | 2803 | | |
2786 | 2804 | | |
| |||
2789 | 2807 | | |
2790 | 2808 | | |
2791 | 2809 | | |
2792 | | - | |
| 2810 | + | |
2793 | 2811 | | |
2794 | 2812 | | |
2795 | 2813 | | |
2796 | 2814 | | |
2797 | 2815 | | |
2798 | 2816 | | |
2799 | | - | |
2800 | | - | |
| 2817 | + | |
| 2818 | + | |
2801 | 2819 | | |
2802 | 2820 | | |
2803 | 2821 | | |
| |||
2816 | 2834 | | |
2817 | 2835 | | |
2818 | 2836 | | |
2819 | | - | |
2820 | | - | |
| 2837 | + | |
| 2838 | + | |
2821 | 2839 | | |
2822 | 2840 | | |
2823 | 2841 | | |
| |||
2838 | 2856 | | |
2839 | 2857 | | |
2840 | 2858 | | |
2841 | | - | |
2842 | | - | |
| 2859 | + | |
| 2860 | + | |
2843 | 2861 | | |
2844 | 2862 | | |
2845 | 2863 | | |
| |||
2863 | 2881 | | |
2864 | 2882 | | |
2865 | 2883 | | |
2866 | | - | |
2867 | | - | |
| 2884 | + | |
| 2885 | + | |
2868 | 2886 | | |
2869 | 2887 | | |
2870 | 2888 | | |
| |||
2899 | 2917 | | |
2900 | 2918 | | |
2901 | 2919 | | |
2902 | | - | |
2903 | | - | |
| 2920 | + | |
| 2921 | + | |
2904 | 2922 | | |
2905 | 2923 | | |
2906 | 2924 | | |
| |||
2937 | 2955 | | |
2938 | 2956 | | |
2939 | 2957 | | |
2940 | | - | |
2941 | | - | |
| 2958 | + | |
| 2959 | + | |
2942 | 2960 | | |
| 2961 | + | |
| 2962 | + | |
| 2963 | + | |
2943 | 2964 | | |
2944 | | - | |
2945 | | - | |
2946 | 2965 | | |
2947 | | - | |
2948 | | - | |
2949 | | - | |
| 2966 | + | |
2950 | 2967 | | |
2951 | | - | |
2952 | 2968 | | |
2953 | | - | |
2954 | 2969 | | |
2955 | | - | |
2956 | 2970 | | |
2957 | 2971 | | |
2958 | | - | |
| 2972 | + | |
2959 | 2973 | | |
2960 | 2974 | | |
2961 | | - | |
2962 | | - | |
2963 | | - | |
2964 | | - | |
| 2975 | + | |
| 2976 | + | |
2965 | 2977 | | |
2966 | | - | |
2967 | | - | |
| 2978 | + | |
2968 | 2979 | | |
2969 | | - | |
2970 | 2980 | | |
2971 | 2981 | | |
2972 | 2982 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
462 | 462 | | |
463 | 463 | | |
464 | 464 | | |
465 | | - | |
466 | | - | |
467 | 465 | | |
468 | 466 | | |
469 | 467 | | |
| |||
520 | 518 | | |
521 | 519 | | |
522 | 520 | | |
523 | | - | |
524 | | - | |
525 | | - | |
526 | | - | |
527 | | - | |
528 | | - | |
529 | | - | |
530 | | - | |
531 | | - | |
532 | | - | |
533 | | - | |
534 | | - | |
535 | | - | |
536 | | - | |
537 | 521 | | |
538 | 522 | | |
539 | 523 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3476 | 3476 | | |
3477 | 3477 | | |
3478 | 3478 | | |
3479 | | - | |
| 3479 | + | |
| 3480 | + | |
| 3481 | + | |
3480 | 3482 | | |
3481 | | - | |
3482 | | - | |
3483 | | - | |
| 3483 | + | |
| 3484 | + | |
| 3485 | + | |
| 3486 | + | |
| 3487 | + | |
3484 | 3488 | | |
3485 | | - | |
| 3489 | + | |
3486 | 3490 | | |
3487 | | - | |
| 3491 | + | |
| 3492 | + | |
| 3493 | + | |
| 3494 | + | |
| 3495 | + | |
3488 | 3496 | | |
3489 | | - | |
3490 | | - | |
| 3497 | + | |
3491 | 3498 | | |
3492 | 3499 | | |
3493 | | - | |
3494 | | - | |
3495 | | - | |
3496 | | - | |
3497 | | - | |
3498 | | - | |
3499 | | - | |
3500 | | - | |
3501 | | - | |
3502 | | - | |
3503 | | - | |
| 3500 | + | |
| 3501 | + | |
| 3502 | + | |
| 3503 | + | |
| 3504 | + | |
| 3505 | + | |
| 3506 | + | |
| 3507 | + | |
3504 | 3508 | | |
3505 | | - | |
| 3509 | + | |
3506 | 3510 | | |
3507 | | - | |
3508 | | - | |
3509 | | - | |
3510 | 3511 | | |
3511 | | - | |
3512 | | - | |
3513 | | - | |
| 3512 | + | |
| 3513 | + | |
3514 | 3514 | | |
3515 | | - | |
3516 | | - | |
3517 | | - | |
3518 | | - | |
3519 | | - | |
3520 | | - | |
| 3515 | + | |
| 3516 | + | |
3521 | 3517 | | |
3522 | | - | |
| 3518 | + | |
3523 | 3519 | | |
3524 | 3520 | | |
3525 | 3521 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1872 | 1872 | | |
1873 | 1873 | | |
1874 | 1874 | | |
| 1875 | + | |
| 1876 | + | |
| 1877 | + | |
| 1878 | + | |
| 1879 | + | |
| 1880 | + | |
| 1881 | + | |
| 1882 | + | |
| 1883 | + | |
| 1884 | + | |
| 1885 | + | |
| 1886 | + | |
1875 | 1887 | | |
1876 | 1888 | | |
1877 | 1889 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1814 | 1814 | | |
1815 | 1815 | | |
1816 | 1816 | | |
| 1817 | + | |
| 1818 | + | |
| 1819 | + | |
| 1820 | + | |
| 1821 | + | |
| 1822 | + | |
| 1823 | + | |
| 1824 | + | |
| 1825 | + | |
| 1826 | + | |
| 1827 | + | |
| 1828 | + | |
| 1829 | + | |
| 1830 | + | |
| 1831 | + | |
| 1832 | + | |
| 1833 | + | |
| 1834 | + | |
| 1835 | + | |
| 1836 | + | |
| 1837 | + | |
| 1838 | + | |
| 1839 | + | |
| 1840 | + | |
| 1841 | + | |
| 1842 | + | |
| 1843 | + | |
| 1844 | + | |
| 1845 | + | |
| 1846 | + | |
| 1847 | + | |
| 1848 | + | |
| 1849 | + | |
1817 | 1850 | | |
1818 | 1851 | | |
1819 | 1852 | | |
| |||
0 commit comments
Comments
(0)