pg.ddx.io  pgsql-admin@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Silvio Brandani <silvio.brandani@tech.sdb.it>
To: Ruslan A. Bondar <fsat@list.ru>
Cc: pgsql-admin@postgresql.org
Subject: Re: database not using indexes
Date: Wed, 09 Nov 2011 18:06:11 +0100
Message-ID: <4EBAB303.2080307@tech.sdb.it> (raw)
In-Reply-To: <20111109195838.237a4470@list.ru>
References: <4EBA9AAC.9030900@tech.sdb.it>
	<20111109195838.237a4470@list.ru>

Ok,

the problem was  on a big table on query like this:

select outmessage0_.out_msg_id as out1_0_
from edi.out_messages outmessage0_, edi.transaction_set_partners 
transactio1_
where outmessage0_.transaction_set_partner=transactio1_.trn_set_prtn_id
and outmessage0_.status_id='TOSND'
and transactio1_.legacy_sender_id='ALL'
and transactio1_.legacy_receiver_id='00004542'
and outmessage0_.transaction_set_id='INTERNAL_USE'
order by outmessage0_.out_msg_id


the existing indexes on status_id
CREATE INDEX out_msg_status_idex
   ON edi.out_messages
   USING btree
   (status_id);

  and transaction_set_partners

CREATE INDEX edi_out_messages_trn_set_prtn_id_fk_idx
   ON edi.out_messages
   USING btree
   (transaction_set_partner);

where not used anyore.

I created the following one:

  CREATE INDEX out_msg_status_trn_set_prtn_idx
   ON edi.out_messages
   USING btree
   (status_id,transaction_set_partner);

and still the explain show a seq scan

then I inverted the fields and now it works:

   CREATE INDEX out_msg_status_trn_set_prtn_idx2
   ON edi.out_messages
   USING btree
   (transaction_set_partner,status_id);



I wonder why not use anymore the existing indexes.

regards


Il 09/11/2011 16.58, Ruslan A. Bondar ha scritto:
> Why have you decided it isn't using indexes?
> If index exists - postgres will use it.
> To write a script for this I need at least database version.
>
> On Wed, 09 Nov 2011 16:22:20 +0100
> Silvio Brandani<silvio.brandani@tech.sdb.it>  wrote:
>
>> Our database seems not using index anymore, please help with, is a
>> production database.
>>
>> is there a script to check missing index on foreign key ??
>>
>> thanks a lot
>>
>> ---
>>
>>
>>
>>
>>

---






Utilizziamo i dati personali che la riguardano esclusivamente per nostre finalità amministrative e contabili, anche quando li comunichiamo a terzi. Informazioni dettagliate, anche in ordine al Suo diritto di accesso e agli altri Suoi diritti, sono riportate alla pagina http://www.savinodelbene.com/privacy.html
Se avete ricevuto questo messaggio per errore Vi preghiamo di ritornarlo al mittente eliminandolo assieme agli eventuali allegati, ai sensi art. 616 codice penale http://www.savinodelbene.com/privacy/codice_penale_616.html
L'Azienda non si assume alcuna responsabilità giuridica qualora pervengano da questo indirizzo messaggi estranei all'attività lavorativa o contrari a norme.
--



view thread (6+ messages)  latest in thread

Message-ID: <4EBAB303.2080307@tech.sdb.it>
Permalink:  ../4EBAB303.2080307@tech.sdb.it/
Also on:    postgresql.org/message-id/4EBAB303.2080307@tech.sdb.it

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-admin@postgresql.org
  Cc: silvio.brandani@tech.sdb.it, fsat@list.ru
  Subject: Re: database not using indexes
  In-Reply-To: <4EBAB303.2080307@tech.sdb.it>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox