Re: How to use index in simple select

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: Andrus <kobruleht2(at)hot(dot)ee>, pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: How to use index in simple select
Date: 2025-11-29 17:27:43
Message-ID: 3093741e-6a84-43e8-a009-fccff8abe998@aklaver.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 11/28/25 14:57, Andrus wrote:
> Hi!
>
> Table has index on name column:
>
>         CREATE TABLE firma2.klient
>         (
>             kood character(12) primary key,
>              nimi character(100),
>            ...
>         );
>
>        CREATE INDEX IF NOT EXISTS klient_nimi_idx
>         ON firma2.klient USING btree
>         (nimi COLLATE pg_catalog."default" ASC NULLS LAST)
>         TABLESPACE pg_default;
>
> Database settings have default values:
>
>     enable_indexonlyscan       on
>     enable_indexscan           on
>     enable_indexonlyscan       on
>     enable_indexscan           on
>
> Query
>
>     SELECT * FROM firma2.klient WHERE nimi='John';
>
> Runs slowly.
>
>     analyze firma2.klient;
>     explain analyze select * from firma2.klient where nimi='John'
>
> Shows that index is not used:
>
>     "Seq Scan on klient  (cost=0.00..2287976.20 rows=1 width=4002)
> (actual time=12769.987..12769.988 rows=0 loops=1)"
>     "  Filter: (nimi = 'John'::bpchar)"
>     "  Rows Removed by Filter: 849971"
>     "Planning Time: 4.751 ms"
>     "Execution Time: 12770.029 ms"
>
> How to force Postgres to use index? It probably worked long time but
> suddenly stopped working today.
> Re-started whole windows server but problem persists.
>
> Using
>
> PostgreSQL 17.5 on x86_64-windows, compiled by msvc-19.43.34808, 64-bit
>
> in Windows Server 2022 vers 21H2
>
> Andrus.
>
>
> Posted also in
>
> https://stackoverflow.com/questions/79832965/how-to-use-index-in-simple-
> select
>
>

Seems to be already answered:

"It looks like reindex table firma2.klient restored index scan. create
index concurrently was used when lot of transactions using this table
where running"

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Andrus 2025-11-29 17:47:23 Re: How to use index in simple select
Previous Message jian he 2025-11-29 02:46:35 Re: Emitting JSON to file using COPY TO