Set enable_seqscan doesn't take effect?

Started by jacktby jacktbyover 2 years ago9 messages
#1jacktby jacktby
jacktby@gmail.com

postgres=# SET enable_seqscan = off;
SET
postgres=# explain select * from t;
QUERY PLAN
-------------------------------------------------------------------------
Seq Scan on t (cost=10000000000.00..10000000023.60 rows=1360 width=32)
(1 row)

postgres=# select * from t;
a
-------
[1,2]
(1 row)

#2Andres Freund
andres@anarazel.de
In reply to: jacktby jacktby (#1)
Re: Set enable_seqscan doesn't take effect?

Hi,

On 2023-09-28 00:37:41 +0800, jacktby jacktby wrote:

postgres=# SET enable_seqscan = off;
SET
postgres=# explain select * from t;
QUERY PLAN
-------------------------------------------------------------------------
Seq Scan on t (cost=10000000000.00..10000000023.60 rows=1360 width=32)
(1 row)

postgres=# select * from t;
a
-------
[1,2]
(1 row)

Sorry to be the grump here:

You start several threads a week, often clearly not having done much, if any,
prior research. Often even sending the same question to multiple lists. It
should not be hard to find an explanation for the behaviour you see here.

pgsql-hackers isn't a "do my work for me service". We're hacking on
postgres. It's fine to occasionally ask for direction, but you're very clearly
exceeding that.

Greetings,

Andres Freund

#3David Rowley
dgrowleyml@gmail.com
In reply to: jacktby jacktby (#1)
Re: Set enable_seqscan doesn't take effect?

On Thu, 28 Sept 2023 at 13:47, jacktby jacktby <jacktby@gmail.com> wrote:

postgres=# SET enable_seqscan = off;
SET
postgres=# explain select * from t;
QUERY PLAN
-------------------------------------------------------------------------
Seq Scan on t (cost=10000000000.00..10000000023.60 rows=1360 width=32)
(1 row)

postgres=# select * from t;
a
-------
[1,2]
(1 row)>

It may be worth checking what the manual says about this. I guess if
you assume the meaning from the GUC name, then it might be surprising.
If you're still surprised after reading the manual then please report
back.

David

#4jacktby jacktby
jacktby@gmail.com
In reply to: Andres Freund (#2)
Re: Set enable_seqscan doesn't take effect?

2023年9月28日 01:07,Andres Freund <andres@anarazel.de> 写道:

Hi,

On 2023-09-28 00:37:41 +0800, jacktby jacktby wrote:

postgres=# SET enable_seqscan = off;
SET
postgres=# explain select * from t;
QUERY PLAN
-------------------------------------------------------------------------
Seq Scan on t (cost=10000000000.00..10000000023.60 rows=1360 width=32)
(1 row)

postgres=# select * from t;
a
-------
[1,2]
(1 row)

Sorry to be the grump here:

You start several threads a week, often clearly not having done much, if any,
prior research. Often even sending the same question to multiple lists. It
should not be hard to find an explanation for the behaviour you see here.

pgsql-hackers isn't a "do my work for me service". We're hacking on
postgres. It's fine to occasionally ask for direction, but you're very clearly
exceeding that.

Greetings,

Andres Freund

I’m so sorry for that. I think I’m not very familiar with pg, so I ask many naive questions. And I apologize for my behavior.

#5jacktby jacktby
jacktby@gmail.com
In reply to: Andres Freund (#2)
Re: Set enable_seqscan doesn't take effect?

2023年9月28日 01:07,Andres Freund <andres@anarazel.de> 写道:

Hi,

On 2023-09-28 00:37:41 +0800, jacktby jacktby wrote:

postgres=# SET enable_seqscan = off;
SET
postgres=# explain select * from t;
QUERY PLAN
-------------------------------------------------------------------------
Seq Scan on t (cost=10000000000.00..10000000023.60 rows=1360 width=32)
(1 row)

postgres=# select * from t;
a
-------
[1,2]
(1 row)

Sorry to be the grump here:

You start several threads a week, often clearly not having done much, if any,
prior research. Often even sending the same question to multiple lists. It
should not be hard to find an explanation for the behaviour you see here.

pgsql-hackers isn't a "do my work for me service". We're hacking on
postgres. It's fine to occasionally ask for direction, but you're very clearly
exceeding that.

Greetings,

Andres Freund

I’m so sorry for that. I think I’m not very familiar with pg, so I ask many naive questions. And I apologize for my behavior.

#6David G. Johnston
david.g.johnston@gmail.com
In reply to: jacktby jacktby (#1)
Re: Set enable_seqscan doesn't take effect?

On Wednesday, September 27, 2023, jacktby jacktby <jacktby@gmail.com> wrote:

postgres=# SET enable_seqscan = off;
SET
postgres=# explain select * from t;
QUERY PLAN
-------------------------------------------------------------------------
Seq Scan on t (cost=10000000000.00..10000000023.60 rows=1360 width=32)

It wouldn’t cost 10billion to return the first tuple if that setting wasn’t
working.

That is the “discouragement” the documentation is referring to.

I do agree the wording in the docs could be improved since it is a bit
self-contradictory and unspecific, but it is explicitly clear a plan with
sequential scan can still be chosen even with this set to off.

David J.

#7jacktby jacktby
jacktby@gmail.com
In reply to: Andres Freund (#2)
Re: Set enable_seqscan doesn't take effect?

2023年9月28日 01:07,Andres Freund <andres@anarazel.de> 写道:

Hi,

On 2023-09-28 00:37:41 +0800, jacktby jacktby wrote:

postgres=# SET enable_seqscan = off;
SET
postgres=# explain select * from t;
QUERY PLAN
-------------------------------------------------------------------------
Seq Scan on t (cost=10000000000.00..10000000023.60 rows=1360 width=32)
(1 row)

postgres=# select * from t;
a
-------
[1,2]
(1 row)

Sorry to be the grump here:

You start several threads a week, often clearly not having done much, if any,
prior research. Often even sending the same question to multiple lists. It
should not be hard to find an explanation for the behaviour you see here.

pgsql-hackers isn't a "do my work for me service". We're hacking on
postgres. It's fine to occasionally ask for direction, but you're very clearly
exceeding that.

Greetings,

Andres Freund

I’m so sorry for that. I think I’m not very familiar with pg, so I ask many naive questions. And I apologize for my behavior.

#8jacktby jacktby
jacktby@gmail.com
In reply to: David G. Johnston (#6)
Re: Set enable_seqscan doesn't take effect?

2023年9月28日 12:26,David G. Johnston <david.g.johnston@gmail.com> 写道:

On Wednesday, September 27, 2023, jacktby jacktby <jacktby@gmail.com <mailto:jacktby@gmail.com>> wrote:

postgres=# SET enable_seqscan = off;
SET
postgres=# explain select * from t;
QUERY PLAN
-------------------------------------------------------------------------
Seq Scan on t (cost=10000000000.00..10000000023.60 rows=1360 width=32)

It wouldn’t cost 10billion to return the first tuple if that setting wasn’t working.

That is the “discouragement” the documentation is referring to.

I do agree the wording in the docs could be improved since it is a bit self-contradictory and unspecific, but it is explicitly clear a plan with sequential scan can still be chosen even with this set to off.

David J.

Yes, I think that’s it.Thanks.

#9Bruce Momjian
bruce@momjian.us
In reply to: jacktby jacktby (#7)
Re: Set enable_seqscan doesn't take effect?

On Thu, Sep 28, 2023 at 03:38:28PM +0800, jacktby jacktby wrote:

You start several threads a week, often clearly not having done much, if any,
prior research. Often even sending the same question to multiple lists. It
should not be hard to find an explanation for the behaviour you see here.

pgsql-hackers isn't a "do my work for me service". We're hacking on
postgres. It's fine to occasionally ask for direction, but you're very clearly
exceeding that.

Greetings,

Andres Freund

I’m so sorry for that. I think I’m not very familiar with pg, so I ask many naive questions. And I apologize for my behavior.

I think you might find our IRC channel a more natural fit for getting
your questions answered:

https://www.postgresql.org/community/irc/

--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com

Only you can decide what is important to you.