-- an IN list of 100 ids through the access method: the point directory looks each key up (up to 64 keys it did; a longer list was answered by the units) -- label: `SELECT id, amount, title WHERE id IN (<100 ids>)`, no btree on `id`, `point_tid_columns = 'id'` -- ordered: yes -- set: sift.enable_col_scan = on --@ setup ALTER TABLE orders DROP CONSTRAINT orders_pkey; DROP INDEX orders_col; CREATE INDEX orders_col ON orders USING sift_col (id sift.col_int4_ops, customer_id sift.col_int4_ops, amount sift.col_numeric_ops) WITH (point_tid_columns = 'id') --@ pg SELECT id, customer_id, amount, title FROM orders WHERE id IN (7933,15852,23771,31690,39609,47528,55447,63366,71285,79204,87123,95042,102961,110880,118799,126718,134637,142556,150475,158394,166313,174232,182151,190070,197989,205908,213827,221746,229665,237584,245503,253422,261341,269260,277179,285098,293017,300936,308855,316774,324693,332612,340531,348450,356369,364288,372207,380126,388045,395964,403883,411802,419721,427640,435559,443478,451397,459316,467235,475154,483073,490992,498911,506830,514749,522668,530587,538506,546425,554344,562263,570182,578101,586020,593939,601858,609777,617696,625615,633534,641453,649372,657291,665210,673129,681048,688967,696886,704805,712724,720643,728562,736481,744400,752319,760238,768157,776076,783995,791914) ORDER BY id