Подвисший запрос

Поиск
Список
Период
Сортировка
От isk
Тема Подвисший запрос
Дата
Msg-id 1436166665.20070321150925@rdw.ru
обсуждение исходный текст
Ответы Чудо дивное планировщик явил !!!  (silly_sad <sad@bankir.ru>)
Список pgsql-ru-general
Добрый день
Есть такая проблема: иногда возникает "подвисший запрос". Запрос,
который обычно выполняется порядка 100мс, может выполняться часами.
Что приводит к заметному снижению производительности. Процесс
приходится убивать. За месяц столкнулись 6 раз.
Вопрос: с чем это может быть связано, какие параметры нужно замерить в
след раз, чтобы локализовать проблему.

Сам запрос:
SELECT "v3_vacancy"."id" FROM "v3_vacancy" WHERE (("v3_vacancy"."fti_title" @@ to_tsquery('default_russian',
'официант'))AND ("v3_vacancy"."is_spam" IS FALSE ) AND ("v3_vacancy"."published_date" >= '2007-02-23 00:00:00') AND
("v3_vacancy"."is_searchable"IS TRUE ) ) AND (("v3_vacancy"."city_id" = '1') )  ORDER BY
"v3_vacancy"."is_paid_top_search"DESC, "v3_vacancy"."modified_date" DESC LIMIT 30 OFFSET 120 
(строка поиска каждый раз разная)
Характерно использование TSearch для данной таблицы



CREATE TABLE v3_vacancy
(
  id serial NOT NULL,
  ...
  fti_all tsvector, -- TSearch2 index для всей вакансии.
  fti_title tsvector, -- TSearch2 index для названия вакансии.
)
WITH OIDS;

CREATE INDEX v3_vacancy_fti_all_idx
  ON v3_vacancy
  USING gist
  (fti_all);

CREATE INDEX v3_vacancy_fti_title_idx
  ON v3_vacancy
  USING gist
  (fti_title);


 SELECT * from pg_ts_cfg;
     ts_name     | prs_name |    locale
-----------------+----------+--------------
 default         | default  | C
 default_russian | default  | ru_RU.KOI8-R
 simple          | default  |



SELECT * from pg_ts_cfgmap ;
     ts_name     |  tok_alias   | dict_name
-----------------+--------------+-----------
 default         | lword        | {en_stem}
 default         | nlword       | {simple}
 default         | word         | {simple}
 default         | email        | {simple}
 default         | url          | {simple}
 default         | host         | {simple}
 default         | sfloat       | {simple}
 default         | version      | {simple}
 default         | part_hword   | {simple}
 default         | nlpart_hword | {simple}
 default         | lpart_hword  | {en_stem}
 default         | hword        | {simple}
 default         | lhword       | {en_stem}
 default         | nlhword      | {simple}
 default         | uri          | {simple}
 default         | file         | {simple}
 default         | float        | {simple}
 default         | int          | {simple}
 default         | uint         | {simple}
 default_russian | lword        | {en_stem}
 default_russian | nlword       | {ru_stem}
 default_russian | word         | {ru_stem}
 default_russian | email        | {simple}
 default_russian | url          | {simple}
 default_russian | host         | {simple}
 default_russian | sfloat       | {simple}
 default_russian | version      | {simple}
 default_russian | part_hword   | {simple}
 default_russian | nlpart_hword | {ru_stem}
 default_russian | lpart_hword  | {en_stem}
 default_russian | hword        | {ru_stem}
 default_russian | lhword       | {en_stem}
 default_russian | nlhword      | {ru_stem}
 default_russian | uri          | {simple}
 default_russian | file         | {simple}
 default_russian | float        | {simple}
 default_russian | int          | {simple}
 default_russian | uint         | {simple}
 simple          | lword        | {simple}
 simple          | nlword       | {simple}
 simple          | word         | {simple}
 simple          | email        | {simple}
 simple          | url          | {simple}
 simple          | host         | {simple}
 simple          | sfloat       | {simple}
 simple          | version      | {simple}
 simple          | part_hword   | {simple}
 simple          | nlpart_hword | {simple}
 simple          | lpart_hword  | {simple}
 simple          | hword        | {simple}
 simple          | lhword       | {simple}
 simple          | nlhword      | {simple}
 simple          | uri          | {simple}
 simple          | file         | {simple}
 simple          | float        | {simple}
 simple          | int          | {simple}
 simple          | uint         | {simple}

 SELECT dict_name, dict_init, dict_lexize, dict_comment from pg_ts_dict ;
    dict_name    |       dict_init       |               dict_lexize               |                   dict_comment
      

-----------------+-----------------------+-----------------------------------------+--------------------------------------------------
 simple          | dex_init(internal)    | dex_lexize(internal,internal,integer)   | Simple example of dictionary.
 en_stem         | snb_en_init(internal) | snb_lexize(internal,internal,integer)   | English Stemmer. Snowball.
 ru_stem         | snb_ru_init(internal) | snb_lexize(internal,internal,integer)   | Russian Stemmer. Snowball.
 ispell_template | spell_init(internal)  | spell_lexize(internal,internal,integer) | ISpell interface. Must have .dict
and.aff files 
 synonym         | syn_init(internal)    | syn_lexize(internal,internal,integer)   | Example of synonym dictionary



SELECT * from pg_ts_parser;
 prs_name |          prs_start           |               prs_nexttoken                |      prs_end       |
  prs_headline                |      prs_lextype       |        prs_comment 

----------+------------------------------+--------------------------------------------+--------------------+-------------------------------------------+------------------------+---------------------------
 default  | prsd_start(internal,integer) | prsd_getlexeme(internal,internal,internal) | prsd_end(internal) |
prsd_headline(internal,internal,internal)| prsd_lextype(internal) | Parser from OpenFTS v0.34 



PostgreSQL 8.1.8
OS Linux version 2.6.16-gentoo-r9 (gcc version 3.4.4 (Gentoo 3.4.4-r1, ssp-3.4.4-1.0, pie-8.7.8))


--
С уважением,
 isk                          mailto:isk@rdw.ru


В списке pgsql-ru-general по дате отправления:

Предыдущее
От: silly_sad
Дата:
Сообщение: Re: Tsearch strange error
Следующее
От: silly_sad
Дата:
Сообщение: Чудо дивное планировщик явил !!!