Size: a a a

pgsql – PostgreSQL

2021 March 19

VA

Vektor AB in pgsql – PostgreSQL
Sergey Gr
Невозможно заблокировать то чего не существует
Скорее всего из-за этого проскакивает вставка, когда в таблице еще нет записей.
источник

V

Victor in pgsql – PostgreSQL
psql -h 10.10.10.10 -p 5433 -d old_db  -c "\COPY (SELECT * FROM conditions) TO old_db.csv DELIMITER ',' CSV"
Если выполнить такой запрос, то файл сохранится на 10.10.10.10 или на клиенте?
источник

AT

Andrey Tatarnikov in pgsql – PostgreSQL
Кто-нибудь пробовал вручную инвалидировать индекс?
То есть update pg_index set indisvalid = false?

Если прямо сейчас в базе есть запрос, который этот индекс использует - update будет ждать или эффект появится только при следующем запуске использующего запроса?
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Victor
psql -h 10.10.10.10 -p 5433 -d old_db  -c "\COPY (SELECT * FROM conditions) TO old_db.csv DELIMITER ',' CSV"
Если выполнить такой запрос, то файл сохранится на 10.10.10.10 или на клиенте?
"\copy" — "клиентская" метакоманда, COPY — серверная команда. Файлы сохраняются соответственно.
источник

𝕾

𝕾𝖔𝖚𝕷𝕭𝖆𝕯𝕲𝖚𝖄... in pgsql – PostgreSQL
Ребят, а можно как-то в if else выбрать оператор + или - для следующего выражения?
Его если как строку записать, работать же не будет, а как правильно тогда?
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Andrey Tatarnikov
Кто-нибудь пробовал вручную инвалидировать индекс?
То есть update pg_index set indisvalid = false?

Если прямо сейчас в базе есть запрос, который этот индекс использует - update будет ждать или эффект появится только при следующем запуске использующего запроса?
А как насчёт "не делать этого" (если это не эксперимент на тестовой базе, которую можно выкинуть, если что), а? ;)
А если эксперимент — TIAS.
источник

AT

Andrey Tatarnikov in pgsql – PostgreSQL
Yaroslav Schekin
А как насчёт "не делать этого" (если это не эксперимент на тестовой базе, которую можно выкинуть, если что), а? ;)
А если эксперимент — TIAS.
На стендах нет даже 30% нагрузки прода, хе-хе.
А очень хочется понять что случится, если убрать один конкретный индекс. Благо единственный запрос, который его использует, известен.
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Andrey Tatarnikov
На стендах нет даже 30% нагрузки прода, хе-хе.
А очень хочется понять что случится, если убрать один конкретный индекс. Благо единственный запрос, который его использует, известен.
Блокировки не зависят от нагрузки, совсем. Так что, опять-таки, TIAS (заодно научитесь их смотреть, может пригодиться и в других случаях).
источник

AT

Andrey Tatarnikov in pgsql – PostgreSQL
Ладно, фокус не удался - нужен суперпользователь. :(
источник

VK

Vazgen Kamshotovich in pgsql – PostgreSQL
Уважаемые знатоки, как использовать мета-команды вроде \set и \gexec внутри создаваемой функции?
При исполнении ругается на синтаксическую ошибку, использую EXECUTE 'Запрос \gexec', подозреваю, что дело в экзекуторе, но не знаю, как по другому исполнить динамический запрос, буду рад любым подсказкам и направлениям
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Vazgen Kamshotovich
Уважаемые знатоки, как использовать мета-команды вроде \set и \gexec внутри создаваемой функции?
При исполнении ругается на синтаксическую ошибку, использую EXECUTE 'Запрос \gexec', подозреваю, что дело в экзекуторе, но не знаю, как по другому исполнить динамический запрос, буду рад любым подсказкам и направлениям
Никак, разумеется. Потому-то они и называются метакомандами — сервер PostgreSQL (и вообще ничто, кроме psql) о них ничего не знает.
источник

AJ

Alexey Jericho in pgsql – PostgreSQL
добрый день, подскажите пожалуйста, как лучше организовать  FTS по базе с геометрией. в запрос будет передаваться текст запроса и bbox. результаты входящие в данный bbox должны иметь более высокий rank. пока вижу вариант строить tsvector по тексту, индексировать его. в запросе сначала искать по индексу, потом результат уже фильтровать по геометрии. может как то проще можно? что бы заранее ограничить поиск по bbox, и если в его границах ничего не найдено, то искать по всей базе. но как тогда индексы строить...
источник

b

batyrmastyr in pgsql – PostgreSQL
Alexey Jericho
добрый день, подскажите пожалуйста, как лучше организовать  FTS по базе с геометрией. в запрос будет передаваться текст запроса и bbox. результаты входящие в данный bbox должны иметь более высокий rank. пока вижу вариант строить tsvector по тексту, индексировать его. в запросе сначала искать по индексу, потом результат уже фильтровать по геометрии. может как то проще можно? что бы заранее ограничить поиск по bbox, и если в его границах ничего не найдено, то искать по всей базе. но как тогда индексы строить...
А насколько далеко от заданной точки готовы искать?
источник

AJ

Alexey Jericho in pgsql – PostgreSQL
batyrmastyr
А насколько далеко от заданной точки готовы искать?
везде
источник

AJ

Alexey Jericho in pgsql – PostgreSQL
короче свой велосипед изобретаем, геокодер
источник

b

batyrmastyr in pgsql – PostgreSQL
Может вам проще делать два запроса: в ограниченной области и, если всё плохо, по всей базе?
источник

AJ

Alexey Jericho in pgsql – PostgreSQL
нужно что бы сначала поиск происходил по области, которая в данный момент открыта в браузере
источник

AJ

Alexey Jericho in pgsql – PostgreSQL
batyrmastyr
Может вам проще делать два запроса: в ограниченной области и, если всё плохо, по всей базе?
а как индексы строить?
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Alexey Jericho
добрый день, подскажите пожалуйста, как лучше организовать  FTS по базе с геометрией. в запрос будет передаваться текст запроса и bbox. результаты входящие в данный bbox должны иметь более высокий rank. пока вижу вариант строить tsvector по тексту, индексировать его. в запросе сначала искать по индексу, потом результат уже фильтровать по геометрии. может как то проще можно? что бы заранее ограничить поиск по bbox, и если в его границах ничего не найдено, то искать по всей базе. но как тогда индексы строить...
А Вы в чате про postgis пробовали то же самое спросить (на всякий случай)?
источник

AJ

Alexey Jericho in pgsql – PostgreSQL
смешанных индексов же нет, так бы можно было все в один tsvector засунуть и проиндексировать)
источник