Skip to content

Error при запросе к pg_stat_statements #187

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
sgrinko opened this issue Jul 29, 2022 · 4 comments
Closed

Error при запросе к pg_stat_statements #187

sgrinko opened this issue Jul 29, 2022 · 4 comments
Assignees
Labels
Milestone

Comments

@sgrinko
Copy link
Contributor

sgrinko commented Jul 29, 2022

Версия 3.5.1
Собрано из исходников.
bootstrap режим включен.

выполняется запрос ошибочного вида:

2022-07-29 12:25:02.656 MSK [13944()-1] app=[mamonsu],client=[::1(39500)] [mamonsu@mamonsu], [vxid:7/136037 txid:0] [SELECT] ERROR:  target lists can have at most 1664 entries
2022-07-29 12:25:02.656 MSK [13944()-2] app=[mamonsu],client=[::1(39500)] [mamonsu@mamonsu], [vxid:7/136037 txid:0] [SELECT] STATEMENT:
                SELECT sum(shared_blks_read+local_blks_read+temp_blks_read)*8*1024, sum(shared_blks_written+local_blks_written+temp_blks_written)*8*1024, sum(shared_blks_dirtied+local_blks_dirtied)*8
*1024, sum(blk_read_time)/float4(100), sum(blk_write_time)/float4(100), sum(total_exec_time+total_plan_time-blk_read_time-blk_write_time)/float4(100), sum(wal_bytes), sum(wal_records), sum(wal_fpi),
sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal
_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes)
, sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(w
al_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_reco
rds), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), s
um(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_
fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), s
um(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_
bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes),
 sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wa
l_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_recor
ds), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), su
m(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records),

...

sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal
_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes)
, sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(w
al_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_reco
rds), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), s
um(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_
fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), s
um(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_
bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes),
 sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wa
l_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi)
                FROM public.pg_stat_statements;

2022-07-29 12:25:12.673 MSK [13961()-1] app=[mamonsu],client=[::1(39506)] [mamonsu@mamonsu], [vxid:7/136042 txid:0] [SELECT] ERROR:  target lists can have at most 1664 entries
@sgrinko
Copy link
Contributor Author

sgrinko commented Jul 29, 2022

Включил режим DEBUG и вот что там происходит:

[DEBUG] 2022-07-29 19:10:41,969 - PGSQL-(host=localhost db=mamonsu user=mamonsu port=5432)  -   Run: 
"SELECT sum(shared_blks_read+local_blks_read+temp_blks_read)*8*1024, sum(shared_blks_written+local_blks_written+temp_blks_written)*8*1024,sum(shared_blks_dirtied+local_blks_dirtied)*8*1024, sum(blk_read_time)/float4(100), sum(blk_write_time)/float4(100), sum(total_exec_time+total_plan_time-blk_read_time-blk_write_time)/float4(100), 
sum(wal_bytes), sum(wal_records), sum(wal_fpi) FROM public.pg_stat_statements;"

[DEBUG] 2022-07-29 19:11:42,045 - PGSQL-(host=localhost db=mamonsu user=mamonsu port=5432)  -  Run: 
"SELECT sum(shared_blks_read+local_blks_read+temp_blks_read)*8*1024, sum(shared_blks_written+local_blks_written+temp_blks_written)*8*1024, sum(shared_blks_dirtied+local_blks_dirtied)*8*1024, sum(blk_read_time)/float4(100), sum(blk_write_time)/float4(100), sum(total_exec_time+total_plan_time-blk_read_time-blk_write_time)/float4(100), 
sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi) FROM public.pg_stat_statements;"

[DEBUG] 2022-07-29 19:12:42,129 - PGSQL-(host=localhost db=mamonsu user=mamonsu port=5432)  -   Run: 
"SELECT sum(shared_blks_read+local_blks_read+temp_blks_read)*8*1024, sum(shared_blks_written+local_blks_written+temp_blks_written)*8*1024, sum(shared_blks_dirtied+local_blks_dirtied)*8*1024, sum(blk_read_time)/float4(100), sum(blk_write_time)/float4(100), sum(total_exec_time+total_plan_time-blk_read_time-blk_write_time)/float4(100), 
sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi) FROM public.pg_stat_statements;"

[DEBUG] 2022-07-29 19:13:42,180 - PGSQL-(host=localhost db=mamonsu user=mamonsu port=5432)  -   Run: 
"SELECT sum(shared_blks_read+local_blks_read+temp_blks_read)*8*1024, sum(shared_blks_written+local_blks_written+temp_blks_written)*8*1024, sum(shared_blks_dirtied+local_blks_dirtied)*8*1024, sum(blk_read_time)/float4(100), sum(blk_write_time)/float4(100), sum(total_exec_time+total_plan_time-blk_read_time-blk_write_time)/float4(100), 
sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi), sum(wal_bytes), sum(wal_records), sum(wal_fpi) FROM public.pg_stat_statements;"

таким образом каждую минуту во фразе SELECT добавляется 3 последних поля:

sum(wal_bytes), sum(wal_records), sum(wal_fpi)

и когда число всех полей достигает предела в 1664 entries мы получаем ошибку:

[SELECT] ERROR:  target lists can have at most 1664 entries

Скорее всего нет очистки какой-то переменной.

@cuprumtan cuprumtan self-assigned this Aug 1, 2022
@cuprumtan cuprumtan added the bug label Aug 1, 2022
@cuprumtan cuprumtan added this to the 3.5.2 milestone Aug 1, 2022
@cuprumtan
Copy link
Contributor

Добрый день! Добавили фикс в версию 3.5.2.

@sgrinko
Copy link
Contributor Author

sgrinko commented Sep 12, 2022

Благодарю. Буду смотреть.

@sgrinko
Copy link
Contributor Author

sgrinko commented Sep 13, 2022

Всё хорошо, Спасибо

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants