Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Появились медленные запросы


Recommended Posts

# Time: 230515 10:39:58
# User@Host: сайт.com.ua[сайт.com.ua] @ localhost []
# Thread_id: 507466  Schema: сайт.com.ua  QC_hit: No
# Query_time: 9.271988  Lock_time: 0.000160  Rows_sent: 0  Rows_examined: 1222361
# Rows_affected: 10  Bytes_sent: 11
SET timestamp=1684136398;
DELETE
                                    `oc_order`,
                                    oc_order_product,
                                    oc_order_history,
                                    oc_order_option,
                                    
                                    
                                    oc_order_total,oc_order_voucher FROM
                                `oc_order`
                            LEFT JOIN
                                oc_order_product
                            ON
                                oc_order_product.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_history
                            ON
                                oc_order_history.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_option
                            ON
                                oc_order_option.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_total
                            ON
                                oc_order_total.order_id = `oc_order`.order_id 
                            LEFT JOIN
                                oc_order_voucher
                            ON
                                oc_order_voucher.order_id = `oc_order`.order_id WHERE
                                `oc_order`.order_id = '69159'
                            AND
                                `oc_order`.order_status_id = 0;
# Time: 230515 10:42:39
# User@Host: сайт.com.ua[сайт.com.ua] @ localhost []
# Thread_id: 507926  Schema: сайт.com.ua  QC_hit: No
# Query_time: 9.459083  Lock_time: 0.000221  Rows_sent: 0  Rows_examined: 1222377
# Rows_affected: 10  Bytes_sent: 11
SET timestamp=1684136559;
DELETE
                                    `oc_order`,
                                    oc_order_product,
                                    oc_order_history,
                                    oc_order_option,
                                    
                                    
                                    oc_order_total,oc_order_voucher FROM
                                `oc_order`
                            LEFT JOIN
                                oc_order_product
                            ON
                                oc_order_product.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_history
                            ON
                                oc_order_history.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_option
                            ON
                                oc_order_option.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_total
                            ON
                                oc_order_total.order_id = `oc_order`.order_id 
                            LEFT JOIN
                                oc_order_voucher
                            ON
                                oc_order_voucher.order_id = `oc_order`.order_id WHERE
                                `oc_order`.order_id = '69159'
                            AND
                                `oc_order`.order_status_id = 0;

Всем привет! Начал замечать, что при заказе иногда долго обрабатывается запрос (именно в корзине Подтвердить заказ). Поиски привели к медленным запросам БД и логу вот такого содержания (выше). 

Не могу понять, что оно удаляет? 

Надіслати
Поділитися на інших сайтах


Это дичь какая-то. Ищите в кеше модификаций или по коду самих модификаций, кто такое формирует.
В стандартном коде OC3 и ocs3037 ничего похожего не нашёл.

Надіслати
Поділитися на інших сайтах


15.05.2023 в 13:00, rb2 сказал:

Это дичь какая-то. Ищите в кеше модификаций или по коду самих модификаций, кто такое формирует.
В стандартном коде OC3 и ocs3037 ничего похожего не нашёл.

Почему дичь? Это работа Simplecheckout который до 22 года ставился почти на всех магазинах вместе с новой почтой и осфильтром.

1965492360_Screenshot2023-05-15at14_20_04.thumb.png.342a690cf8d30605231920001c497270.png

 

 

Так убедительнее, если у вас стоит Симпл можете проверить, у вас есть такое же.

 

Надіслати
Поділитися на інших сайтах


15.05.2023 в 10:53, Evgenius сказал:
# Time: 230515 10:39:58
# User@Host: сайт.com.ua[сайт.com.ua] @ localhost []
# Thread_id: 507466  Schema: сайт.com.ua  QC_hit: No
# Query_time: 9.271988  Lock_time: 0.000160  Rows_sent: 0  Rows_examined: 1222361
# Rows_affected: 10  Bytes_sent: 11
SET timestamp=1684136398;
DELETE
                                    `oc_order`,
                                    oc_order_product,
                                    oc_order_history,
                                    oc_order_option,
                                    
                                    
                                    oc_order_total,oc_order_voucher FROM
                                `oc_order`
                            LEFT JOIN
                                oc_order_product
                            ON
                                oc_order_product.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_history
                            ON
                                oc_order_history.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_option
                            ON
                                oc_order_option.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_total
                            ON
                                oc_order_total.order_id = `oc_order`.order_id 
                            LEFT JOIN
                                oc_order_voucher
                            ON
                                oc_order_voucher.order_id = `oc_order`.order_id WHERE
                                `oc_order`.order_id = '69159'
                            AND
                                `oc_order`.order_status_id = 0;
# Time: 230515 10:42:39
# User@Host: сайт.com.ua[сайт.com.ua] @ localhost []
# Thread_id: 507926  Schema: сайт.com.ua  QC_hit: No
# Query_time: 9.459083  Lock_time: 0.000221  Rows_sent: 0  Rows_examined: 1222377
# Rows_affected: 10  Bytes_sent: 11
SET timestamp=1684136559;
DELETE
                                    `oc_order`,
                                    oc_order_product,
                                    oc_order_history,
                                    oc_order_option,
                                    
                                    
                                    oc_order_total,oc_order_voucher FROM
                                `oc_order`
                            LEFT JOIN
                                oc_order_product
                            ON
                                oc_order_product.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_history
                            ON
                                oc_order_history.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_option
                            ON
                                oc_order_option.order_id = `oc_order`.order_id
                            LEFT JOIN
                                oc_order_total
                            ON
                                oc_order_total.order_id = `oc_order`.order_id 
                            LEFT JOIN
                                oc_order_voucher
                            ON
                                oc_order_voucher.order_id = `oc_order`.order_id WHERE
                                `oc_order`.order_id = '69159'
                            AND
                                `oc_order`.order_status_id = 0;

Всем привет! Начал замечать, что при заказе иногда долго обрабатывается запрос (именно в корзине Подтвердить заказ). Поиски привели к медленным запросам БД и логу вот такого содержания (выше). 

Не могу понять, что оно удаляет? 

Симпл собирает Брошенные корзины. И вот он его создает со статусом 0, и если вы подтверждаете заказ, он удаляет брошенный. 

 

Может индексов и ключей у вас в базе не хватает и от того так долго происходит все это дело. 

Надіслати
Поділитися на інших сайтах


"Появились"... если раньше не было, то можно как минимум по тем же логам найти момент когда именно они появились.

Может вспомните, может менялось что-то тогда.

 

И это мы же предполагаем, что вы как минимум контроллируете состояние сервера. Может там CPU под 100% все время и никто не замечает... конечно будут запросы по 10сек :)

 

Хотя судя по Rows_examined больше миллиона может и нормально все с нагрузкой, а просто очень много строк нужно было в этом запросе обработать.

 

1) пройтись по всем тем oc_order таблицам, нормально ли что в них так много записей? зачистить лишний хлам.

2) проверить что там с индексами у используемых в запросе полях.

Надіслати
Поділитися на інших сайтах


В общем, там минимум у 3 таблиц не хватает нужных индексов (или 4). При беглом осмотре.


Так что много шансов, что 9 секунд на запрос превратятся в 0.
Это лечится.
 

  • +1 1
Надіслати
Поділитися на інших сайтах


  • 2 weeks later...
15.05.2023 в 20:54, rb2 сказал:

В общем, там минимум у 3 таблиц не хватает нужных индексов (или 4). При беглом осмотре.


Так что много шансов, что 9 секунд на запрос превратятся в 0.
Это лечится.
 

Вы правы, пересмотрели БД, добавили индексы - запрос с 9 превратился в 1.27

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.