Size: a a a

pgsql – PostgreSQL

2020 December 25

VY

Victor Yegorov in pgsql – PostgreSQL
это было в 2001-м, сейчас системы отличаются кардинально и баланс счёта меняется сразу.
и человеческий фактор никто не отменял…
источник

Ð

Ð in pgsql – PostgreSQL
даже банально "лайки" часто можно накрутить просто послав пачку из тысячи параллельных запросов. Нет транзакции - нет проверки, пока первый запрос не пройдет до конца, выполняется разрешение на фронте для остальных
источник

D

Dmitriy in pgsql – PostgreSQL
Ð
даже банально "лайки" часто можно накрутить просто послав пачку из тысячи параллельных запросов. Нет транзакции - нет проверки, пока первый запрос не пройдет до конца, выполняется разрешение на фронте для остальных
Обычно не так просто, потому что лайк привязан к юзеру. А по смыслу один юзер не может поставить более 1 лайка одной сущности
источник

D

Dmitriy in pgsql – PostgreSQL
Да и у нормальных сервисов спереди CF стоит, который не даст сделать тысячу параллельных запросов. По крайней мере, с одного хоста
источник

Ð

Ð in pgsql – PostgreSQL
Dmitriy
Обычно не так просто, потому что лайк привязан к юзеру. А по смыслу один юзер не может поставить более 1 лайка одной сущности
я это видел и щупал. Пофиг на то что привязан. Проверка, чтобы один юзер ставил один лайк, если она не загнана в транзакцию или атомарный запрос - легко обходится гонкой.
источник

VY

Victor Yegorov in pgsql – PostgreSQL
eventually consistent системы, главное чтобы работало, потом как-нить синхронизируется…
источник

OD

ORACLE DBA in pgsql – PostgreSQL
Переслано от ORACLE DBA
Any one know code for Postgresql community version certification exam
Please let me know.
источник

VY

Victor Yegorov in pgsql – PostgreSQL
ORACLE DBA
Переслано от ORACLE DBA
Any one know code for Postgresql community version certification exam
Please let me know.
there is no community certification for PostgreSQL
источник

B

Biter in pgsql – PostgreSQL
Господа, а поясние мне пожалуйста как новичку, чем отличаются данные индексы?

INDEX ON … (field1, field2)
от
INDEX ON … (field1) INCLUDE (field2)

В обоих случаях при запросах по field1 и field2 будет "index only scan"?
источник

D

Dmitriy in pgsql – PostgreSQL
Biter
Господа, а поясние мне пожалуйста как новичку, чем отличаются данные индексы?

INDEX ON … (field1, field2)
от
INDEX ON … (field1) INCLUDE (field2)

В обоих случаях при запросах по field1 и field2 будет "index only scan"?
Использование индекса зависит далеко не только от того, какие поля ты туда включил
источник

B

Biter in pgsql – PostgreSQL
Dmitriy
Использование индекса зависит далеко не только от того, какие поля ты туда включил
Да фиг с ним с использованием :)
Поясните чем отличаются данные индексы.
Они же должны отличаться.
источник

D

Dmitriy in pgsql – PostgreSQL
Biter
Да фиг с ним с использованием :)
Поясните чем отличаются данные индексы.
Они же должны отличаться.
Во втором случае не нужно читать таблицу, если тебе нужны данные из поля field2, т.к. их можно считать сразу из индекса при его использовании. Но при этом если ты делаешь UNIQUE индекс, это поле при проверке уникальности участвовать не будет. Точнее не скажу, может ещё какие детали есть
источник

D

Dmitriy in pgsql – PostgreSQL
В первом случае если ты UNIQUE добавишь, то уникальность будет сразу по обоим столбцам проверяться. То есть второй вариант нужен тогда, когда тебе нужен и уникальный индекс по нескольким полям полям, но по некоторым не нужно ограничение уникальности, например, потому что в WHERE они присутствуют, грубо говоря. То есть это, на самом деле, не очень частая ситуация.
источник
2020 December 26

VY

Victor Yegorov in pgsql – PostgreSQL
Biter
Господа, а поясние мне пожалуйста как новичку, чем отличаются данные индексы?

INDEX ON … (field1, field2)
от
INDEX ON … (field1) INCLUDE (field2)

В обоих случаях при запросах по field1 и field2 будет "index only scan"?
в первом случае ключ поиска состоит из 2 колонок, комбинации значений находятся в дереве поиска (помним, что индекс это 2 структуры: дерево + двусвязный список)
во втором случае ключ только из field1. field2 в дереве нету, значения добавлены только в список (leaf pages)
источник

DK

Dmitrii <freehck&... in pgsql – PostgreSQL
Господа, сложный момент. Liquibase-ом накатывалась миграция, состоящая из двух команд: первая удаляла колонку, вторая создавала новую. Процесс миграции был случайно убит.

Теперь таблица, которую миграция затрагивала, вообще не шевелится. Не отвечает даже на \d table_name.
источник

DK

Dmitrii <freehck&... in pgsql – PostgreSQL
Я проверял, что может быть локи какие-то остались, но ничего exclusive не нашёл.
источник

DK

Dmitrii <freehck&... in pgsql – PostgreSQL
Может быть у вас будут какие-нибудь соображения? А то я уже много чего перепробовал, и не знаю, что ещё можно проверить.
источник

DK

Dmitrii <freehck&... in pgsql – PostgreSQL
А, блин.
источник

DK

Dmitrii <freehck&... in pgsql – PostgreSQL
Всё, она ожила. Видимо, транзакция долго откатывалась.
источник

VY

Victor Yegorov in pgsql – PostgreSQL
не откатывалась, а скорее всего ALTER TABLE должна была в базе доработать, она берёт AccessExclusiveLock, никакой доступ к таблице невозможен
источник