Query Metrics
19
Database Queries
8
Different statements
1462.01 ms
Query time
0
Invalid entities
2
Managed entities
Grouped Statements
| Time▼ | Count | Info | ||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
1269.45 ms (86.83%) |
12 |
SELECT product.id AS product_id, product.event AS product_event, product_trans.name AS product_name, product_info.url AS product_url, product_info.sort AS product_sort, product_active.active as product_active, product_active.active_from as product_active_from, product_active.active_to as product_active_to, category_offer.card AS category_offer_card , category_offer.reference AS product_offer_reference, category_variation.card AS category_variation_card, category_variation.reference as product_variation_reference, category_modification.card AS category_modification_card , category_modification.reference as product_modification_reference, JSON_AGG( DISTINCT product_invariable.id) AS invariable, CASE WHEN product_modification_image.name IS NOT NULL THEN CONCAT ( '/upload/product_modification_images' , '/', product_modification_image.name) WHEN product_variation_image.name IS NOT NULL THEN CONCAT ( '/upload/product_variation_images' , '/', product_variation_image.name) WHEN product_offer_images.name IS NOT NULL THEN CONCAT ( '/upload/product_offer_images' , '/', product_offer_images.name) WHEN product_photo.name IS NOT NULL THEN CONCAT ( '/upload/product_photo' , '/', product_photo.name) ELSE NULL END AS product_image , COALESCE( product_modification_image.ext, product_variation_image.ext, product_offer_images.ext, product_photo.ext ) AS product_image_ext, COALESCE( product_modification_image.cdn, product_variation_image.cdn, product_offer_images.cdn, product_photo.cdn ) AS product_image_cdn, category_info.url AS category_url, category_trans.name AS category_name, COALESCE( NULLIF(MIN(product_modification_price.price), 0), NULLIF(MIN(product_variation_price.price), 0), NULLIF(MIN(product_offer_price.price), 0), NULLIF(MIN(product_price.price), 0), 0 ) AS product_price , CASE WHEN MIN(product_modification_price.price) IS NOT NULL THEN product_modification_price.currency WHEN MIN(product_variation_price.price) IS NOT NULL THEN product_variation_price.currency WHEN MIN(product_offer_price.price) IS NOT NULL THEN product_offer_price.currency WHEN MIN(product_price.price) IS NOT NULL THEN product_price.currency ELSE NULL END AS product_currency , project_profile_discount.value AS project_discount FROM product INNER JOIN product_categories_product product_event_category ON product_event_category.event = product.event AND product_event_category.category IN (?) LEFT JOIN product_trans product_trans ON product_trans.event = product.event AND product_trans.local = ? LEFT JOIN product_info product_info ON product_info.product = product.id LEFT JOIN product_active product_active ON product_active.event = product.event LEFT JOIN product_price product_price ON product_price.event = product.event AND product_price.price > 0 LEFT JOIN product_offer product_offer ON product_offer.event = product.event INNER JOIN users_profile project_profile ON project_profile.id = ? LEFT JOIN product_category category ON category.id = product_event_category.category LEFT JOIN product_category_info category_info ON category_info.event = category.event AND category_info.active IS TRUE LEFT JOIN product_category_trans category_trans ON category_trans.event = category.event AND category_trans.local = ? LEFT JOIN product_category_offers category_offer ON category_offer.id = product_offer.category_offer LEFT JOIN product_offer_price product_offer_price ON product_offer_price.offer = product_offer.id AND product_offer_price.price > 0 LEFT JOIN product_offer_quantity product_offer_quantity ON product_offer_quantity.offer = product_offer.id LEFT JOIN product_variation product_variation ON product_variation.offer = product_offer.id LEFT JOIN product_variation_images product_variation_image ON product_variation_image.variation = product_variation.id AND product_variation_image.root = true LEFT JOIN product_offer_images product_offer_images ON product_variation_image.name IS NULL AND product_offer_images.offer = product_offer.id AND product_offer_images.root = true LEFT JOIN product_photo product_photo ON product_offer_images.name IS NULL AND product_photo.event = product.event AND product_photo.root = true LEFT JOIN product_category_variation category_variation ON category_variation.id = product_variation.category_variation LEFT JOIN product_modification product_modification ON product_modification.variation = product_variation.id LEFT JOIN product_invariable product_invariable ON product_invariable.product = product.id AND CASE WHEN product_offer.const IS NOT NULL THEN product_invariable.offer = product_offer.const ELSE product_invariable.offer IS NULL END AND CASE WHEN product_variation.const IS NOT NULL THEN product_invariable.variation = product_variation.const ELSE product_invariable.variation IS NULL END AND CASE WHEN product_modification.const IS NOT NULL THEN product_invariable.modification = product_modification.const ELSE product_invariable.modification IS NULL END LEFT JOIN product_variation_price product_variation_price ON product_variation_price.variation = product_variation.id AND product_variation_price.price > 0 LEFT JOIN product_variation_quantity product_variation_quantity ON product_variation_quantity.variation = product_variation.id LEFT JOIN product_category_modification category_modification ON category_modification.id = product_modification.category_modification LEFT JOIN product_modification_price product_modification_price ON product_modification_price.modification = product_modification.id AND product_modification_price.price > 0 LEFT JOIN product_modification_quantity product_modification_quantity ON product_modification_quantity.modification = product_modification.id LEFT JOIN product_modification_images product_modification_image ON product_modification_image.modification = product_modification.id AND product_modification_image.root = true LEFT JOIN user_profile_discount project_profile_discount ON project_profile_discount.event = project_profile.event WHERE (COALESCE( NULLIF(product_modification_price.price, 0), NULLIF(product_variation_price.price, 0), NULLIF(product_offer_price.price, 0), NULLIF(product_price.price, 0), 0 ) > 0) AND ( CASE WHEN product_modification_quantity.quantity IS NOT NULL THEN (product_modification_quantity.quantity - product_modification_quantity.reserve) WHEN product_variation_quantity.quantity IS NOT NULL THEN (product_variation_quantity.quantity - product_variation_quantity.reserve) WHEN product_offer_quantity.quantity IS NOT NULL THEN (product_offer_quantity.quantity - product_offer_quantity.reserve) WHEN product_price.quantity IS NOT NULL THEN (product_price.quantity - product_price.reserve) ELSE 0 END > 0 ) GROUP BY product_price.currency, product_offer_price.currency, product_variation_price.currency, product_modification_price.currency, product.id, product.event, product_trans.name, product_info.url, product_info.sort, product_active.active, product_active.active_from, product_active.active_to, category_offer.card, category_offer.reference, category_variation.card, category_variation.reference, category_modification.card, category_modification.reference, product_modification_image.name, product_variation_image.name, product_offer_images.name, product_photo.name, product_modification_image.ext, product_variation_image.ext, product_offer_images.ext, product_photo.ext, product_modification_image.cdn, product_variation_image.cdn, product_offer_images.cdn, product_photo.cdn, category_info.url, category_trans.name, project_profile_discount.value ORDER BY product_info.sort DESC, SUM(product_modification_quantity.reserve) DESC, SUM(product_variation_quantity.reserve) DESC, SUM(product_offer_quantity.reserve) DESC, SUM(product_price.reserve) DESC, SUM(product_modification_quantity.quantity) DESC, SUM(product_variation_quantity.quantity) DESC, SUM(product_offer_quantity.quantity) DESC, SUM(product_price.quantity) DESC LIMIT 6
Parameters:
[ BaksDev\Products\Category\Type\Id\CategoryProductUid {#934 : "01876af0-ddfc-70c3-ab25-5f85f55a9907" } "ru" "01982ecf-0a6a-79e5-967b-4992d1b836bb" "ru" ] |
||||||||||||||||||||||||||||||
|
104.76 ms (7.17%) |
1 |
SELECT review.event AS review_event, review_modify.mod_date as update, review_product.value AS review_product, product_trans.name AS product_name, review_status.value AS review_status, review_text.value AS review_text, review_user.value AS review_user, review_rating.value AS review_rating_value, profile_personal.username as profile_username, review_name.value AS review_name FROM product_review review INNER JOIN product_review_event review_event ON review.event = review_event.id INNER JOIN product_review_modify review_modify ON review_modify.event = review_event.id INNER JOIN product_review_product review_product ON review_product.event = review_event.id INNER JOIN product_review_status review_status ON review_status.event = review_event.id INNER JOIN product_review_text review_text ON review_text.event = review_event.id INNER JOIN product_review_user review_user ON review_user.event = review_event.id LEFT JOIN product_review_rating review_rating ON review_rating.event = review_event.id LEFT JOIN product_review_name review_name ON review_name.event = review_event.id INNER JOIN product product ON product.id = review_product.value AND product.id = ? INNER JOIN product_event product_event ON product_event.id = product.event INNER JOIN product_trans product_trans ON product_trans.event = product_event.id INNER JOIN users_profile_info profile_info ON profile_info.usr = review_user.value AND profile_info.active = true LEFT JOIN users_profile profile ON profile.id = profile_info.profile LEFT JOIN users_profile_personal profile_personal ON profile_personal.event = profile.event WHERE review_status.value = ? GROUP BY review.event, review_modify.mod_date, review_product.value, product_trans.name, review_status.value, review_text.value, review_user.value, review_rating.value, profile_personal.username, review_name.value, review.id ORDER BY review.id DESC LIMIT 24
Parameters:
[ "0191c806-5685-7317-af20-94d13dc4e9dc" "active" ]
|
||||||||||||||||||||||||||||||
|
79.33 ms (5.43%) |
1 |
SELECT product.id, product.event, product_active.active, product_active.active_from, product_active.active_to, ? AS project_profile, JSON_AGG (DISTINCT product_profile.value) FILTER (WHERE product_profile.value IS NOT NULL) AS profiles, product_seo.title AS seo_title, product_seo.keywords AS seo_keywords, product_seo.description AS seo_description, product_trans.name AS product_name, product_desc.preview AS product_preview, product_desc.description AS product_description, product_info.url, category_offer.reference AS product_offer_reference, project_profile_discount.value AS project_discount, JSON_AGG ( DISTINCT JSONB_BUILD_OBJECT ( /* свойства для сортировки JSON */ '0', CONCAT(product_offer.value, product_variation.value, product_modification.value, product_modification_price.price), 'offer_uid', product_offer.id, 'offer_value', product_offer.value, /* значение торгового предложения */ 'offer_postfix', product_offer.postfix, /* постфикс торгового предложения */ 'offer_reference', category_offer.reference, /* тип (field) торгового предложения */ 'offer_name', category_offer_trans.name, /* Название свойства */ 'variation_uid', product_variation.id, 'variation_value', product_variation.value, /* значение множественного варианта */ 'variation_postfix', product_variation.postfix, /* постфикс множественного варианта */ 'variation_reference', category_variation.reference, /* тип (field) множественного варианта */ 'variation_name', category_variation_trans.name, /* Название свойства */ 'modification_uid', product_modification.id, 'modification_value', product_modification.value, /* значение модификации */ 'modification_postfix', product_modification.postfix, /* постфикс модификации */ 'modification_reference', category_modification.reference, /* тип (field) модификации */ 'modification_name', category_modification_trans.name, /* артикул модификации */ 'article', CASE WHEN product_modification.article IS NOT NULL THEN product_modification.article WHEN product_variation.article IS NOT NULL THEN product_variation.article WHEN product_offer.article IS NOT NULL THEN product_offer.article WHEN product_info.article IS NOT NULL THEN product_info.article ELSE NULL END, /* Product Invariable */ 'product_invariable_id', COALESCE( product_invariable.id ), /* Profile Discount */ 'profile_discount', NULL, /* Project Discount */ 'project_discount', project_profile_discount.value, /* Кастомная цена */ 'promotion_price', NULL, 'promotion_active', NULL, 'price', CASE WHEN product_modification_price.price IS NOT NULL AND product_modification_price.price > 0 THEN product_modification_price.price WHEN product_variation_price.price IS NOT NULL AND product_variation_price.price > 0 THEN product_variation_price.price WHEN product_offer_price.price IS NOT NULL AND product_offer_price.price > 0 THEN product_offer_price.price WHEN product_price.price IS NOT NULL AND product_price.price > 0 THEN product_price.price ELSE NULL END, 'old_price', COALESCE( NULLIF(product_modification_price.old, 0), NULLIF(product_variation_price.old, 0), NULLIF(product_offer_price.old, 0), NULLIF(product_price.old, 0), 0 ), 'currency', CASE WHEN product_modification_price.price IS NOT NULL AND product_modification_price.price > 0 THEN product_modification_price.currency WHEN product_variation_price.price IS NOT NULL AND product_variation_price.price > 0 THEN product_variation_price.currency WHEN product_offer_price.price IS NOT NULL AND product_offer_price.price > 0 THEN product_offer_price.currency WHEN product_price.price IS NOT NULL AND product_price.price > 0 THEN product_price.currency ELSE NULL END, 'quantity', CASE WHEN product_modification_quantity.quantity IS NOT NULL THEN (product_modification_quantity.quantity - product_modification_quantity.reserve) WHEN product_variation_quantity.quantity IS NOT NULL THEN (product_variation_quantity.quantity - product_variation_quantity.reserve) WHEN product_offer_quantity.quantity IS NOT NULL THEN (product_offer_quantity.quantity - product_offer_quantity.reserve) WHEN product_price.quantity IS NOT NULL THEN (product_price.quantity - product_price.reserve) ELSE NULL END ) ) /* Только с ценой */ FILTER (WHERE CASE WHEN product_modification_price.price IS NOT NULL AND product_modification_price.price > 0 THEN product_modification_price.price WHEN product_variation_price.price IS NOT NULL AND product_variation_price.price > 0 THEN product_variation_price.price WHEN product_offer_price.price IS NOT NULL AND product_offer_price.price > 0 THEN product_offer_price.price WHEN product_price.price IS NOT NULL AND product_price.price > 0 THEN product_price.price ELSE 0 END > 0) AS product_offers, JSON_AGG (DISTINCT CASE WHEN product_modification_image.ext IS NOT NULL THEN JSONB_BUILD_OBJECT ( 'product_img_root', product_modification_image.root, 'product_img', CONCAT ( '/upload/product_modification_images' , '/', product_modification_image.name), 'product_img_ext', product_modification_image.ext, 'product_img_cdn', product_modification_image.cdn ) WHEN product_variation_image.ext IS NOT NULL THEN JSONB_BUILD_OBJECT ( 'product_img_root', product_variation_image.root, 'product_img', CONCAT ( '/upload/product_variation_images' , '/', product_variation_image.name), 'product_img_ext', product_variation_image.ext, 'product_img_cdn', product_variation_image.cdn ) WHEN product_offer_images.ext IS NOT NULL THEN JSONB_BUILD_OBJECT ( 'product_img_root', product_offer_images.root, 'product_img', CONCAT ( '/upload/product_offer_images' , '/', product_offer_images.name), 'product_img_ext', product_offer_images.ext, 'product_img_cdn', product_offer_images.cdn ) WHEN product_photo.ext IS NOT NULL THEN JSONB_BUILD_OBJECT ( 'product_img_root', product_photo.root, 'product_img', CONCAT ( '/upload/product_photo' , '/', product_photo.name), 'product_img_ext', product_photo.ext, 'product_img_cdn', product_photo.cdn ) ELSE NULL END) AS product_images, category.id as category_id, category_trans.name AS category_name, category_info.url AS category_url, category_info.threshold AS category_threshold, category_cover.ext AS category_cover_ext, category_cover.cdn AS category_cover_cdn, CASE WHEN category_cover.name IS NOT NULL THEN CONCAT ( '/upload/product_category_cover' , '/', category_cover.name) ELSE NULL END AS category_cover_dir, JSON_AGG ( DISTINCT JSONB_BUILD_OBJECT ( '0', category_section_field.sort, 'field_name', category_section_field.name, 'field_public', category_section_field.public, 'field_card', category_section_field.card, 'field_type', category_section_field.type, 'field_trans', category_section_field_trans.name, 'field_value', product_property.value ) ) AS category_section_field FROM product INNER JOIN product_active product_active ON product_active.event = product.event LEFT JOIN product_profile product_profile ON product_profile.event = product.event LEFT JOIN product_seo product_seo ON product_seo.event = product.event AND product_seo.local = ? LEFT JOIN product_trans product_trans ON product_trans.event = product.event AND product_trans.local = ? LEFT JOIN product_description product_desc ON product_desc.event = product.event AND product_desc.device = ? LEFT JOIN product_price product_price ON product_price.event = product.event LEFT JOIN product_info product_info ON product_info.product = product.id LEFT JOIN product_offer product_offer ON product_offer.event = product.event INNER JOIN users_profile project_profile ON project_profile.id = ? INNER JOIN product_categories_product product_event_category ON product_event_category.event = product.event AND product_event_category.root = true LEFT JOIN product_category_offers category_offer ON category_offer.id = product_offer.category_offer LEFT JOIN product_offer_price product_offer_price ON product_offer_price.offer = (SELECT tmp_product_offer_price.offer FROM product_offer_price tmp_product_offer_price WHERE tmp_product_offer_price.offer = product_offer.id ORDER BY tmp_product_offer_price.offer DESC LIMIT 1) LEFT JOIN product_offer_quantity product_offer_quantity ON product_offer_quantity.offer = product_offer.id LEFT JOIN product_variation product_variation ON product_variation.offer = product_offer.id LEFT JOIN product_photo product_photo ON product_photo.event = product.event LEFT JOIN product_offer_images product_offer_images ON product_offer_images.offer = product_offer.id LEFT JOIN product_variation_images product_variation_image ON product_variation_image.variation = product_variation.id LEFT JOIN product_category_offers_trans category_offer_trans ON category_offer_trans.offer = category_offer.id AND category_offer_trans.local = ? LEFT JOIN product_category_variation category_variation ON category_variation.id = product_variation.category_variation LEFT JOIN product_variation_price product_variation_price ON product_variation_price.variation = (SELECT tmp_product_variation_price.variation FROM product_variation_price tmp_product_variation_price WHERE tmp_product_variation_price.variation = product_variation.id ORDER BY tmp_product_variation_price.variation DESC LIMIT 1) LEFT JOIN product_modification product_modification ON product_modification.variation = product_variation.id LEFT JOIN product_category_variation_trans category_variation_trans ON category_variation_trans.variation = category_variation.id AND category_variation_trans.local = ? LEFT JOIN product_variation_quantity product_variation_quantity ON product_variation_quantity.variation = product_variation.id LEFT JOIN product_category_modification category_modification ON category_modification.id = product_modification.category_modification LEFT JOIN product_modification_price product_modification_price ON product_modification_price.modification = (SELECT tmp_product_modification_price.modification FROM product_modification_price tmp_product_modification_price WHERE tmp_product_modification_price.modification = product_modification.id ORDER BY tmp_product_modification_price.modification DESC LIMIT 1) LEFT JOIN product_invariable product_invariable ON product_invariable.product = product.id AND ( (product_offer.const IS NOT NULL AND product_invariable.offer = product_offer.const) OR (product_offer.const IS NULL AND product_invariable.offer IS NULL) ) AND ( (product_variation.const IS NOT NULL AND product_invariable.variation = product_variation.const) OR (product_variation.const IS NULL AND product_invariable.variation IS NULL) ) AND ( (product_modification.const IS NOT NULL AND product_invariable.modification = product_modification.const) OR (product_modification.const IS NULL AND product_invariable.modification IS NULL) ) LEFT JOIN product_modification_images product_modification_image ON product_modification_image.modification = product_modification.id LEFT JOIN product_category_modification_trans category_modification_trans ON category_modification_trans.modification = category_modification.id AND category_modification_trans.local = ? LEFT JOIN product_modification_quantity product_modification_quantity ON product_modification_quantity.modification = product_modification.id LEFT JOIN user_profile_discount project_profile_discount ON project_profile_discount.event = project_profile.event INNER JOIN product_category category ON category.id = product_event_category.category LEFT JOIN product_category_trans category_trans ON category_trans.event = category.event AND category_trans.local = ? LEFT JOIN product_category_info category_info ON category_info.event = category.event LEFT JOIN product_category_section category_section ON category_section.event = category.event LEFT JOIN product_category_cover category_cover ON category_cover.event = category.event LEFT JOIN product_category_section_field category_section_field ON category_section_field.section = category_section.id LEFT JOIN product_category_section_field_trans category_section_field_trans ON category_section_field_trans.field = category_section_field.id AND category_section_field_trans.local = ? LEFT JOIN product_property product_property ON product_property.event = product.event AND product_property.field = category_section_field.const WHERE product.id = ? GROUP BY category.id, product.id, product.event, product_active.active, product_active.active_from, product_active.active_to, product_seo.title, product_seo.keywords, product_seo.description, product_trans.name, product_desc.preview, product_desc.description, product_info.url, category_offer.reference, project_profile_discount.value, category.id, category_trans.name, category_info.url, category_info.threshold, category_cover.ext, category_cover.cdn, category_cover.name
Parameters:
[ "01982ecf-0a6a-79e5-967b-4992d1b836bb" "ru" "ru" "pc" "01982ecf-0a6a-79e5-967b-4992d1b836bb" "ru" "ru" "ru" "ru" "ru" "0191c806-5685-7317-af20-94d13dc4e9dc" ]
|
||||||||||||||||||||||||||||||
|
5.57 ms (0.38%) |
1 |
"COMMIT"
Parameters:
[] |
||||||||||||||||||||||||||||||
|
1.41 ms (0.10%) |
1 |
INSERT INTO messenger_core (body, headers, queue_name, created_at, available_at) VALUES(?, ?, ?, ?, ?) RETURNING id
Parameters:
[ "O:36:\"Symfony\\Component\\Messenger\\Envelope\":2:{s:44:\"\0Symfony\\Component\\Messenger\\Envelope\0stamps\";a:2:{s:53:\"Symfony\\Component\\Messenger\\Stamp\\TransportNamesStamp\";a:1:{i:0;O:53:\"Symfony\\Component\\Messenger\\Stamp\\TransportNamesStamp\":1:{s:69:\"\0Symfony\\Component\\Messenger\\Stamp\\TransportNamesStamp\0transportNames\";a:1:{i:0;s:9:\"async-low\";}}}s:46:\"Symfony\\Component\\Messenger\\Stamp\\BusNameStamp\";a:1:{i:0;O:46:\"Symfony\\Component\\Messenger\\Stamp\\BusNameStamp\":1:{s:55:\"\0Symfony\\Component\\Messenger\\Stamp\\BusNameStamp\0busName\";s:21:\"messenger.bus.default\";}}}s:45:\"\0Symfony\\Component\\Messenger\\Envelope\0message\";O:54:\"BaksDev\\Core\\Doctrine\\DBAL\\Cache\\DBALCacheResetMessage\":2:{s:65:\"\0BaksDev\\Core\\Doctrine\\DBAL\\Cache\\DBALCacheResetMessage\0namespace\";s:16:\"products-product\";s:59:\"\0BaksDev\\Core\\Doctrine\\DBAL\\Cache\\DBALCacheResetMessage\0key\";s:40:\"4b9c3bf62d1044504a9347c1fb8e8baf3cbf0f07\";}}" "[]" "low" "2026-02-21 14:25:12" "2026-02-21 14:25:12" ] |
||||||||||||||||||||||||||||||
|
0.87 ms (0.06%) |
1 |
SELECT t0.product AS product_1, t0.url AS url_2, t0.article AS article_3, t0.barcode AS barcode_4, t0.sort AS sort_5, t0.profile AS profile_6, t0.event AS event_7 FROM product_info t0 WHERE t0.url = ? LIMIT 1
Parameters:
[
"westlake_z507_zupersnow"
]
|
||||||||||||||||||||||||||||||
|
0.31 ms (0.02%) |
1 |
"START TRANSACTION"
Parameters:
[] |
||||||||||||||||||||||||||||||
|
0.30 ms (0.02%) |
1 |
SELECT pg_notify(?, ?)
Parameters:
[ "messenger_core" "low" ] |
Database Connections
| Name | Service |
|---|---|
| default | doctrine.dbal.default_connection |
Entity Managers
| Name | Service |
|---|---|
| default | doctrine.orm.default_entity_manager |
Second Level Cache
Second Level Cache is not enabled.
Managed Entities
default entity manager
| Class | Amount of managed objects |
|---|---|
| BaksDev\Products\Product\Entity\Info\ProductInfo | 1 |
| BaksDev\Products\Product\Entity\Event\ProductEvent | 1 |
Entities Mapping
| Class | Mapping errors |
|---|---|
| BaksDev\Products\Product\Entity\Info\ProductInfo | No errors. |
| BaksDev\Products\Product\Entity\Event\ProductEvent | No errors. |