pdopage как ускорить выборку

В каталоге порядка 20тыс товаров, при выборе всего каталога, выборка занимает больше 1 секунды, в районе 1.3 сек. Возможно ли это как-то ускорить? Пробовали отключить TV, показатели 0.9 — 1.1сек.
Лимит стоит 20 товаров.
{'!pdopage' | snippet: [ 
        'element' => 'msProducts',
        'where' => '{"tvprice_old:="0}',
	        'parents' => $_modx->resource.id, 
	        'limit' => 20, 
	        'pageLimit' => 7,
	        'sortby' => '{"tvqty_msk":"DESC", "tvnal":"DESC"}',
	        'tpl' => 'tableview',
	        'tplPageWrapper' => '@INLINE {$prev}{$pages}{$next}', 
	        'tplPageActive' => '@INLINE <li class="active"><span>{$pageNo}</span></li>',  
        'tplPageNext' => '@INLINE <li><a href="{$href}" aria-label="Next"><span aria-hidden="true">»</span></a></li>',
        'tplPagePrev' => '@INLINE <li><a href="{$href}" aria-label="Previous"><span aria-hidden="true">«</span></a></li>',  
        'includeTVs' => 'price_old,image,art,sku,qty_msk,nal,categ',
        'tvPrefix' => 'tv'
]}
Роман
17 декабря 2020, 11:36
modx.pro
322
0
Поблагодарить автора Отправить деньги

Комментарии: 8

Наумов Алексей
17 декабря 2020, 12:01
0
Если при отключении TV (и сортировки по нему) ситуация не улучшается — смотрите, что у вас в чанке tableview).
Уменьшите limit до 2х штук, быстрее станет?
    Роман
    17 декабря 2020, 12:07
    0
    До 2 штук, ситуация не изменилась. Буду смотреть, тогда что в чанке творится.
      Роман
      17 декабря 2020, 12:11
      0
      Сделал вообще пустой чанк, ситуация не поменялось, да там выборка из база долгая.
      Наумов Алексей
      17 декабря 2020, 12:15
      0
      Запрос посмотрите… showLog…
      может параметр depth имеет смысл задать, не формируется ли у вас огромный список IN в запросе?
        Роман
        17 декабря 2020, 12:21
        0
        огромный список IN в запросе формирует, так как мы хотим выбрать показать весь каталог.
        1.2494400: Created inline «modChunk» with name
        1.1021919: SQL executed
        0.0001709: Total rows: 20762

        Может имеет смысл, как-то отключить msProduct.parent:IN() если это тормозит, пусть ищет все
          Наумов Алексей
          17 декабря 2020, 14:24
          0
          Ну найдите решение, как убрать формирование огромного IN.
          В него ж поди попадают id товаров, а не категорий.

          Например параметр depth ил может вообще убрать ограничение по родителям? Оставить только ограничение по шаблону.
            Павел Голубев
            17 декабря 2020, 16:49
            0
            Нужно смотреть explain запроса. Большой IN — не должен тормозить, даже если там тысячи товаров т.к. выбираются значения по первичному ключу.
              Роман
              17 декабря 2020, 17:03
              0
              Да, я тоже так думаю, что не должно, тем более там стоит лимит 20 товаров.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          8