Buffers option

Started by hmidi slimover 8 years ago3 messagesgeneral
Jump to latest
#1hmidi slim
hmidi.slim2@gmail.com

I'm trying to anlayze a query in postgresql v9.6.4:

explain (ANALYZE,BUFFERS) SELECT p.*
FROM place as p INNER JOIN user as u ON p.id = u.place_id
where to_tsvector('simple', p.name) @@ to_tsquery('simple', 'a:*') and
u.status = true;

The QueryPlan was :

Hash Join (cost=20.28..31.72 rows=1 width=1561) (actual
time=0.001..0.001 rows=0 loops=1)'
Hash Cond: (u.place_id = p.id)'
-> Seq Scan on user u (cost=0.00..11.20 rows=60 width=4) (actual
time=0.001..0.001 rows=0 loops=1)'
Filter: status'
-> Hash (cost=20.27..20.27 rows=1 width=1561) (never executed)'
-> Bitmap Heap Scan on place p (cost=16.01..20.27 rows=1
width=1561) (never executed)'
Recheck Cond: (to_tsvector('simple'::regconfig,
(name)::text) @@ '''a'':*'::tsquery)'
-> Bitmap Index Scan on place_name_index
(cost=0.00..16.01 rows=1 width=0) (never executed)'
Index Cond: (to_tsvector('simple'::regconfig,
(name)::text) @@ '''a'':*'::tsquery)'
Planning time: 0.118 ms
Execution time: 0.023 ms

I didn't get the number of read and hit buffers when I rexecute the query
many times.How can I Fix that? and I tried the options costs, timing and I
got the same plan query however when trying the option format json it
works.

#2Luca Ferrari
fluca1978@infinito.it
In reply to: hmidi slim (#1)
Re: Buffers option

On Fri, Nov 24, 2017 at 12:30 PM, hmidi slim <hmidi.slim2@gmail.com> wrote:

I didn't get the number of read and hit buffers when I rexecute the query
many times.How can I Fix that? and I tried the options costs, timing and I
got the same plan query however when trying the option format json it works.

Not sure but I see a lot of nodes 'never executed' and 'rows=0' on the
first loop. Could it be the optimzer did not execute nothing at all?

Luca

#3hmidi slim
hmidi.slim2@gmail.com
In reply to: Luca Ferrari (#2)
Re: Buffers option

with this query:

explain (ANALYZE,BUFFERS) SELECT p.*FROM place as p, user as u where
p.id = u.place_id

and to_tsvector('simple', p.name) @@ to_tsquery('simple', 'a:*') and
u.status = true;

I got the buffers.I think that is not working with JOIN INNER.

2017-11-24 13:46 GMT+01:00 Luca Ferrari <fluca1978@infinito.it>:

Show quoted text

On Fri, Nov 24, 2017 at 12:30 PM, hmidi slim <hmidi.slim2@gmail.com>
wrote:

I didn't get the number of read and hit buffers when I rexecute the query
many times.How can I Fix that? and I tried the options costs, timing and

I

got the same plan query however when trying the option format json it

works.

Not sure but I see a lot of nodes 'never executed' and 'rows=0' on the
first loop. Could it be the optimzer did not execute nothing at all?

Luca