Thread

  1. Re: [HACKERS] Re: Let's talk up 6.3

    Vadim B. Mikheev <vadim@sable.krasnoyarsk.su> — 1998-04-02T01:16:58Z

    Paul Raines wrote:
    > 
    > Okay, I destroyed the database and recreated it. I then created
    > the following tables and indices;
    > 
    ...
    > 
    > I then filled the tables from my Perl DBI script copying Oracle
    > data to Postgres (same as before).  This time, it worked without
    > failing do the index FATAL.
    > 
    > I immediatetly tried my subselect.
    > 
    > bbrmdc=> select distinct runtype from mdc1_runs where
    > bbrmdc-> runnum in (select runnum from mdc1_simu where version = '3.1.0');
    > 
    > After a couple of minutes, I killed the postgres process. I quit my
    > psql and then reconnectd.  I tried a simple select and it hung too.
    > Killed it and reconnected. I dropped the three indices and tried a
    > vacuum.  It also hung forever.  I killed the postgres process,
    > restarted the postmaster, deleted the pg_vlock file, and retried the
    > vacuum. It worked.  A simple select then works too.
    
    First, I assume that you didn't run vacuum after filling tables and so
    indices were not used: to get index scans you have to either create
    indices _after_ (not before) filling tables or vacuum tables _after_
    filling.
    
    Second, after killing server process it's better to restart postmaster!
    Killing is abnormal thing - some locks/spinlocks were not released
    and so your next connection hung.
    
    > 
    > I recreated the indices exactly as above, and selects still
    > work.  The subselect also worked too and took about 12 seconds.
    
    What's Oracle time ?
    
    Vadim