powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / tsearch2 - непонятка при создании индекса -2 ХЭЛП!
14 сообщений из 14, страница 1 из 1
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34762445
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ошибка: NOTICE: A word you are indexing is too long. It will be ignored.

Я нашел в частности одну запись, на которой это происходит, но не могу понять причину и как изменить строку, чтобы не происходило. Т.е что длинное?
Исходя из текста - ошибка из-за длинной лексемы, т.е. больше 2Кб, но нету здесь таких.

if (type > 0 && lenlemm >= MAXSTRLEN)
{
#ifdef IGNORE_LONGLEXEME
ereport(NOTICE,
(errcode(ERRCODE_SYNTAX_ERROR),
errmsg("A word you are indexing is too long. It will be ignored.")));
continue;
#else
ereport(ERROR,
(errcode(ERRCODE_SYNTAX_ERROR),
errmsg("A word you are indexing is too long")));
#endif
}

--------------------------------НАЧАЛО-----------------------------------------------------
ReadyForNearline DTC E1 Entire Sakarya karaca 00:00:00:00 %0@ ilknurd 17EE6FD3 Haber:Mesut IŞIK-Kamera:Hakan TURHAN/ADAPAZARI sakarya karaca yavru ceylan Çevre Orman Bölge Müdürlüğü Bülent Hasçelik Ormanköy Ormanda bulundu, baharda salınacak

4)KARACA YAVRUSUNA KORUYUCU AİLE



Sakarya Çevre ve Orman Bölge Müdürlüğüne bağlı ekipler bir yıl kadar önce Karasu İlçesi yakınlarındaki ormanlık alandada bulunan Karaca yavrusunu personel sıkıntısı nedeniyle bakımında güçlük çekince koruyucu aile olarak Akyazı ilçesinde bulunan bir çiftliğe verdi. Burada bir ceylan yavrusuyla kalan karayca yavrusu biraz büyüdükten sonra doğal yaşama bırakılacak.

Akyazı İlçesi'nin Ormanköy Köyü'nde bulunan bir çiftlikte Mustafa Yıldız tarafından bakımı yapılan bir yaşındaki Karaca etrafı tel örgülerle çevrili yaklaşık l dönümlük bahçede ceylan yavrusuyla birlikte kalıyor. Bakıcı Mustafa Yıldız Karaca'yı özenle besledigini söyleyerek, "Bir sıkıntımız yok" derken sık sık çiftliğe gelerek Karaca'yı kontrol eden Çevre ve Orman Bölge Müdürlüğü'nde görevli Çevre Mühendisi Bülent Hasçelik ise Karacanın doğada yaşayabilecek duruma geldiği zaman doğaya salacaklarını söyledi.

Bülent Hasçelik, karacanın birkaç ay sonra baharla birlikte doğaya salınabileceğini de belirtirken, hayvanın insanlara alışık olmadığını, bu nedrenle salındığında doğal ortamına daha kolay uyum sağlayacağını belirtti.



GÖRÜNTÜ DÖKÜMÜ

---------------

1.dosya:Karaca yavrusunun ceylan yavrusu ile çekilen görüntüleri

2.dosya.Bakıcısı karaca ile ilgilenirken çekilen görüntüsü

3.dosya:Çevre ve Orman Bölge Müdürlüğünde görevli Çevre Mühendisi Bülent Hasçelik ile yapılan rop.



KJ:Haber:Mesut IŞIK-Kamera:Hakan TURHAN/ADAPAZARI DHA)

--------------------------------КОНЕЦ----------------------------

хелп! разработчики не отвечают
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34762777
iz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iz
Гость
Ну давайте разбираться. При выполнении какой команды это происходит, какая tsearch2-конфигурация... Где вы спрашивали разработчиков, чтобы они не ответили? Попробуйте написать в pg-general, его Олег и Федя точно читают и там по-любому ответят.
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34762813
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
izНу давайте разбираться. При выполнении какой команды это происходит, какая tsearch2-конфигурация... Где вы спрашивали разработчиков, чтобы они не ответили? Попробуйте написать в pg-general, его Олег и Федя точно читают и там по-любому ответят.


Никаких претензий к разработчикам! :-)

Я уже локализовал и минимизировал пример.Сделал таблицу из двух записей.

CREATE TABLE "public"."x_s" (
"id_s" INTEGER,
"xstring" VARCHAR,
"xstring_vector" "public"."tsvector",
"node_id" "public"."uuid" NOT NULL
) WITH OIDS;

CREATE INDEX "x_s_idx" ON "public"."x_s" USING gist ("xstring_vector");

это происходит при выполнении такой команды

update x_s set xstring_vector= to_tsvector('default', xstring)

Собственно, я исследую такую команду
со строкой в поле, которую првел в первом сообщении:

select node_id,length(xstring),to_tsvector('default',xstring) from x_s
------------
1 rows fetched (15 ms)

NOTICE: A word you are indexing is too long. It will be ignored.
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34762836
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я кажется понял, в чем проблема....

Строка
"ффффффф аааааа ввв ббб"

Так вот, если кусок с пробелами (?) больше 2К наступает кырдык, типа лексема больше, чем надо. Может авторы обрежут лексему сразу и не надо будет выдавать ошибку?

Я начал делать частями, брать субстринги, дошел до подстроки на которой повторилось

Так не повторилось select to_tsvector('default',SUBSTRING(xstring,2300,2000)) from x_s

Так повторилось
select to_tsvector('default',SUBSTRING(xstring,2300,2100)) from x_s

И тогда сделал так и не повторилась ошибка:
select to_tsvector('default',ltrim(SUBSTRING(xstring,2300,2100))) from x_s

Но если я внутри буду пытаться удалять пробелы, то мне надо будет намного больше времени на индексацию.
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34762837
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
обрезалась строка,

Строка
"ффффффф аааааа <здесь до фига пробелов, скажем 2100> ввв ббб"
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34762873
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот как быстро воспроизводится

insert into x_s(node_id,xstring)
select '40e2381a-e115-4a26-a2a3-5a7712340e0f',
rpad(rpad('hi', 3000,' '),3200,'hu')

from x_s limit 1;

select node_id,length(xstring),to_tsvector('default',xstring) from x_s
where node_id='40e2381a-e115-4a26-a2a3-5a7712340e0f';
-------------
NOTICE: A word you are indexing is too long. It will be ignored.
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34762992
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как обойти эту проблему?
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34763970
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто-нибдуь может помочь рекомендацией?
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34767410
iz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iz
Гость
Я не очень понимаю: пробелы выбрасываются, да, но остальные лексемы-то остаются. Чего вы хотите добиться? Чтобы не было нотиса?

test=# select to_tsvector('default', rpad(rpad('hi', 3000,' '),3200,'hu'));
NOTICE: A word you are indexing is too long. It will be ignored.
to_tsvector
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'hi':1 'huhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhu':2
(1 row)
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34767454
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
izЯ не очень понимаю: пробелы выбрасываются, да, но остальные лексемы-то остаются. Чего вы хотите добиться? Чтобы не было нотиса?

test=# select to_tsvector('default', rpad(rpad('hi', 3000,' '),3200,'hu'));
NOTICE: A word you are indexing is too long. It will be ignored.
to_tsvector
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'hi':1 'huhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhuhu':2
(1 row)

Т.е. вы хотите сказать, что выбрасывается только лексема, состоящая из одних пробелов?
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34767471
iz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iz
Гость
да
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34767505
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
izда

ок, теперь отпустило :)
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34767514
iz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iz
Гость
:) на то он и нотис, а не ошибка, т.к. ничего страшного не происходит по сути
...
Рейтинг: 0 / 0
tsearch2 - непонятка при создании индекса -2 ХЭЛП!
    #34767923
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iz:) на то он и нотис, а не ошибка, т.к. ничего страшного не происходит по сути

меня сбил с толку тот continue, которйы выполятеся при обнаружении длинного слова. ;-)

Хотя мне непонятно, зачем давать предупреждение, если по сути это не лексема, а повторяющиеся разделители, такие же, как и тот, который отделил эту лексему от предыдущей..
На игнорировать их , ведь разницы нет один пробел или 21.

И кстати на такиех текстах память можно экономить зачем же килобайты пробелов брать и обрабатывать...
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / tsearch2 - непонятка при создании индекса -2 ХЭЛП!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]