Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите с блокировками!
|
|||
|---|---|---|---|
|
#18+
Запрос: Код: plaintext Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Код: plaintext Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. те запрос висит ~20 минут. Других запросов нет. Кого он ждет? В таблице ~150 тыс записей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 07:31 |
|
||
|
Помогите с блокировками!
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Код: plaintext 1. 2. 3. На текущий момент запрос висит уже 35 минут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 07:33 |
|
||
|
Помогите с блокировками!
|
|||
|---|---|---|---|
|
#18+
Заменил Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Все заработало гораздо веселее! В чем может быть проблема? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 11:09 |
|
||
|
Помогите с блокировками!
|
|||
|---|---|---|---|
|
#18+
с блокировками все ок, для всех granted==true кто такой queue_in_states? > Выполнил параллельно такой же запрос из консоли: > 500 record(s) affected > [Executed: 12.03.08 10:31:16 MSK ] [Execution: 819/ms] > На текущий момент запрос висит уже 35 минут. возможно, в программе и из консоли постгрес выбрал разные планы выполнения > На текущий момент запрос висит уже 35 минут. postmaster активно работает или спит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2008, 09:55 |
|
||
|
Помогите с блокировками!
|
|||
|---|---|---|---|
|
#18+
Спасибо что откликнулись :) авторкто такой queue_in_states это составной индекс по state,substate. авторвозможно, в программе и из консоли постгрес выбрал разные планы выполнения Ситуация легко воспроизводится. Однако что изменилось при работе через временную таблицу? Imho при любом плане можно 1000 раз просканировать эту талицу за 40 минут. авторpostmaster активно работает или спит? Не вспомню сейчас.. Но система не стояла колом - это точно. Настроен автовакум. За это время, я думаю, он несколько раз чистил таблицу. PS: 1) немного полегчало когда сделал fillfactor=10% 2) Очень сильно полегчало когда начал сначала читать во временную таблицу. Фактически сейчас таких провалов нет. PPS: весь этот гемор чтобы избежать транзакций, обновляющих десятки и сотни тысяч строк. По идее нужен UPDATE...LIMIT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2008, 12:29 |
|
||
|
Помогите с блокировками!
|
|||
|---|---|---|---|
|
#18+
ChameLe0n авторвозможно, в программе и из консоли постгрес выбрал разные планы выполненияСитуация легко воспроизводится.не понятно. что воспроизводится? можно ли например в программе заменить UPDATE на EXPLAIN ANALYZE UPDATE, чтобы увидеть план выбираемый в программе? ChameLe0nImho при любом плане можно 1000 раз просканировать эту талицу за 40 минут.а можно ли план запроса с IN вывернуть с ног на голову так, что IN будет вычисляться для каждой строки, и например из LIMIT 500 не будет подходить? тогда потребуется 200 тысяч (столько строк в вашей таблице) последовательных сканов, каждый из которых вернет не более 500 строк, но прочитает кроме искомых еще и строки не подходящие под условия, и удаленные строки. ChameLe0nвесь этот гемор чтобы избежать транзакций, обновляющих десятки и сотни тысяч строк. По идее нужен UPDATE...LIMITможно заменить "id_operation IN ..." на "id_operation < (SELECT id_operation FROM operations.queue WHERE state=20 AND substate=1 ORDER BY id_operation OFFSET 500 LIMIT 1)" при наличии индекса по (state,substate,id_operation) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2008, 13:17 |
|
||
|
Помогите с блокировками!
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2008, 15:08 |
|
||
|
|

start [/forum/topic.php?fid=53&tid=2004509]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
88ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 566ms |
| total: | 720ms |

| 0 / 0 |
