Perché PostgreSQL esegue una scansione sequenziale su una colonna indicizzata?

Esempio molto semplice: una tabella, un indice, una query:

CREATE TABLE book ( id bigserial NOT NULL, "year" integer, -- other columns... ); CREATE INDEX book_year_idx ON book (year) EXPLAIN SELECT * FROM book b WHERE b.year > 2009 

mi da:

 Seq Scan on book b (cost=0.00..25663.80 rows=105425 width=622) Filter: (year > 2009) 

Perché NON esegue la scansione indice invece? Cosa mi manca?