Re: PostgreSQL 9.6 Temporary files - Mailing list pgsql-general

From Melvin Davidson
Subject Re: PostgreSQL 9.6 Temporary files
Date
Msg-id CANu8FizM7RcTJLGTOsxMzG_tMmCj_27=kKChNq_M6LqLpJTUQA@mail.gmail.com
Whole thread Raw
In response to Re: PostgreSQL 9.6 Temporary files  (Adrian Klaver <adrian.klaver@aklaver.com>)
Responses Re: PostgreSQL 9.6 Temporary files  (Jimmy Augustine <jimmy.augustine@enyx.fr>)
List pgsql-general


On Mon, Mar 19, 2018 at 12:45 PM, Adrian Klaver <adrian.klaver@aklaver.com> wrote:
On 03/19/2018 09:31 AM, Jimmy Augustine wrote:
Dear Friends,

I am newbie to postgresql.
I have 162 GB on my database but when I check size of all tables, I approximately obtain 80 GB.
I also see that I have 68GB of temporary files however I only found 2.4MB at postgres/data/base/pgsql_tmp.

Exactly how did you determine this?


Could you tell me what are those temporary files and where are they at? Can I delete some of them?

All values come from pgAdmin 4 and checked by my own SQL queries(postgresql-9.6).

Can you show actual queries used?

I already run vacuum full and there is few dead tuples.

Best regards,
Jimmy AUGUSTINE


--
Adrian Klaver
adrian.klaver@aklaver.com

> I have 162 GB on my database but when I check size of all tables, I approximately obtain 80 GB.
>I also see that I have 68GB of temporary files however I only found 2.4MB at postgres/data/base/pgsql_tmp.

I am not sure what your query was that deteremined table and index sizes, but try using the query instead.
Note that total_size is the size of the table and all it's indexes.


SELECT n.nspname as schema,
       c.relname as table,
       a.rolname as owner,
       c.relfilenode as filename,
       c.reltuples::bigint,
       pg_size_pretty(pg_relation_size(quote_ident(n.nspname) || '.' || quote_ident(c.relname) )) as size,
       pg_size_pretty(pg_total_relation_size(quote_ident(n.nspname) || '.' || quote_ident(c.relname) )) as total_size,
       pg_relation_size(quote_ident(n.nspname) || '.' || quote_ident(c.relname) ) as size_bytes,
       pg_total_relation_size(quote_ident(n.nspname) || '.' || quote_ident(c.relname) ) as total_size_bytes,
       CASE WHEN c.reltablespace = 0
            THEN 'pg_default'
            ELSE (SELECT t.spcname
                    FROM pg_tablespace t WHERE (t.oid = c.reltablespace) )                   
        END as tablespace
FROM pg_class c
  JOIN pg_namespace n ON (n.oid = c.relnamespace)
  JOIN pg_authid a ON ( a.oid = c.relowner )
  WHERE quote_ident(nspname) NOT LIKE 'pg_%'
    AND quote_ident(relname) NOT LIKE 'pg_%'
    AND quote_ident(relname) NOT LIKE 'information%'
    AND quote_ident(relname) NOT LIKE 'sql_%'
    AND quote_ident(relkind) IN ('r')
ORDER BY total_size_bytes DESC, 1, 2;


--
Melvin Davidson
Maj. Database & Exploration Specialist

Universe Exploration Command – UXC
Employment by invitation only!

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: PostgreSQL 9.6 Temporary files
Next
From: Jimmy Augustine
Date:
Subject: Re: PostgreSQL 9.6 Temporary files