| 912 | } |
| 913 | |
| 914 | PGDLLEXPORT Datum deeplake_index_handler(PG_FUNCTION_ARGS) |
| 915 | { |
| 916 | pg::init_deeplake(); |
| 917 | IndexAmRoutine* amroutine = makeNode(IndexAmRoutine); |
| 918 | ASSERT(amroutine != nullptr); |
| 919 | |
| 920 | amroutine->amstrategies = 0; |
| 921 | amroutine->amsupport = 2; |
| 922 | amroutine->amoptsprocnum = 0; |
| 923 | amroutine->amcanorder = true; |
| 924 | amroutine->amcanorderbyop = true; |
| 925 | amroutine->amcanbackward = true; |
| 926 | amroutine->amcanunique = false; |
| 927 | amroutine->amcanmulticol = true; |
| 928 | amroutine->amoptionalkey = true; |
| 929 | amroutine->amsearcharray = false; |
| 930 | amroutine->amsearchnulls = false; |
| 931 | amroutine->amstorage = false; |
| 932 | amroutine->amclusterable = false; |
| 933 | amroutine->ampredlocks = false; |
| 934 | amroutine->amcanparallel = false; |
| 935 | amroutine->amusemaintenanceworkmem = false; |
| 936 | amroutine->amcaninclude = true; |
| 937 | amroutine->amsummarizing = false; |
| 938 | amroutine->amkeytype = InvalidOid; |
| 939 | amroutine->amparallelvacuumoptions = VACUUM_OPTION_PARALLEL_BULKDEL; |
| 940 | |
| 941 | amroutine->ambuild = pg_build; |
| 942 | amroutine->ambuildempty = pg_buildempty; |
| 943 | amroutine->aminsert = pg_insert; |
| 944 | amroutine->ambulkdelete = pg_bulkdelete; |
| 945 | amroutine->amvacuumcleanup = pg_vacuumcleanup; |
| 946 | amroutine->amcostestimate = pg_costestimate; |
| 947 | amroutine->amoptions = pg_options; |
| 948 | amroutine->ambuildphasename = pg_buildphasename; |
| 949 | amroutine->amvalidate = pg_validate; |
| 950 | amroutine->ambeginscan = pg_beginscan; |
| 951 | amroutine->amrescan = pg_rescan; |
| 952 | amroutine->amgettuple = pg_gettuple; |
| 953 | amroutine->amendscan = pg_endscan; |
| 954 | |
| 955 | amroutine->amcanreturn = pg_canreturn; |
| 956 | amroutine->amproperty = nullptr; |
| 957 | amroutine->amadjustmembers = nullptr; |
| 958 | amroutine->amgetbitmap = pg_getbitmap; |
| 959 | amroutine->ammarkpos = nullptr; |
| 960 | amroutine->amrestrpos = nullptr; |
| 961 | |
| 962 | // Disable parallel index scan |
| 963 | amroutine->amestimateparallelscan = nullptr; |
| 964 | amroutine->aminitparallelscan = nullptr; |
| 965 | amroutine->amparallelrescan = nullptr; |
| 966 | |
| 967 | PG_RETURN_POINTER(amroutine); |
| 968 | } |
| 969 | |
| 970 | /// @} |
| 971 |
nothing calls this directly
no test coverage detected