Size: a a a

TypeORM - Русскоязычное сообщество

2019 September 30

КБ

Константин Брызгалин in TypeORM - Русскоязычное сообщество
постгрес
источник

K

Kolpakov in TypeORM - Русскоязычное сообщество
на pg работает, это mysql-специфичный баг
источник

КБ

Константин Брызгалин in TypeORM - Русскоязычное сообщество
а, у меня синк на createdAt поставил default value = now()
источник

КБ

Константин Брызгалин in TypeORM - Русскоязычное сообщество
ок, буду знать 🙂
источник

AC

Artyom Chaikú in TypeORM - Русскоязычное сообщество
А у меня на постгрес не работает
источник

AC

Artyom Chaikú in TypeORM - Русскоязычное сообщество
Константин Брызгалин
блин, а почему у меня работает?
В базе без default? Может, у тебя схема просто синкается при запуске?
источник

КБ

Константин Брызгалин in TypeORM - Русскоязычное сообщество
я собственно синхронизацией схемы и занимался пока разрабатывал. потом при разворачивании синкнул в прод один раз и отключил синхронизацию. default value туда видимо при синке прилетел, я потом не менял…
источник

AC

Artyom Chaikú in TypeORM - Русскоязычное сообщество
Ну вот, а я просто вручную создал его. Потому он и работает )
источник

IK

ILshat Khamitov in TypeORM - Русскоязычное сообщество
Миграцией создаю таблицы проблем нет
источник
2019 October 03

AN

Artem Nemtsev in TypeORM - Русскоязычное сообщество
Ребят, если я использую уровень изоляции SERIALIZABLE, то при чтении стоки у меня блокируется вся таблица или только та строка, которую я читаю?
источник

КБ

Константин Брызгалин in TypeORM - Русскоязычное сообщество
ничего не блокируется 🙂
источник

AN

Artem Nemtsev in TypeORM - Русскоязычное сообщество
Так уровни изоляции для этого и созданы, чтобы временно блокировать чтение/запись, пока предыдущая в очереди транзакция не отработает
источник

КБ

Константин Брызгалин in TypeORM - Русскоязычное сообщество
база обеспечивает транзакционность записи хранением нескольких версий для одних и тех же строк. когда стартует транзакция, она фиксирует версии для транзакции, но новые в базу продолжает писать… поэтому мы читаем согласованные данные, но чтение не блокирует запись…
источник

КБ

Константин Брызгалин in TypeORM - Русскоязычное сообщество
чтобы сделать блокировки строк, внутри транзакции на них надо сделать select … for update – тогда потоки, читающие те же строки в параллель будут тормозиться и ждать на паузе пока не завершится или отменится транзакция, которая их заблокировала…
источник

AN

Artem Nemtsev in TypeORM - Русскоязычное сообщество
О чем тогда говорит эта информация?
источник

AN

Artem Nemtsev in TypeORM - Русскоязычное сообщество
источник

КБ

Константин Брызгалин in TypeORM - Русскоязычное сообщество
именно это и означает…
источник

AN

Artem Nemtsev in TypeORM - Русскоязычное сообщество
источник

КБ

Константин Брызгалин in TypeORM - Русскоязычное сообщество
почитай https://ru.wikipedia.org/wiki/Уровень_изолированности_транзакций там вроде кратно и понятно расписано…
Wikipedia
Уровень изолированности транзакций
Уровень изолированности транзакций — условное значение, определяющее, в какой мере в результате выполнения логически параллельных транзакций в СУБД допускается получение несогласованных данных. Шкала уровней изолированности транзакций содержит ряд значений, проранжированных от наинизшего до наивысшего; более высокий уровень изолированности соответствует лучшей согласованности данных, но его использование может снижать количество физически параллельно выполняемых транзакций. И наоборот, более низкий уровень изолированности позволяет выполнять больше параллельных транзакций, но снижает точность данных. Таким образом, выбирая используемый уровень изолированности транзакций, разработчик информационной системы в определённой мере обеспечивает выбор между скоростью работы и обеспечением гарантированной согласованности получаемых из системы данных.
источник

AN

Artem Nemtsev in TypeORM - Русскоязычное сообщество
Ну об этом и речь, что не нужно явно указывать блокировку таблицы путем FOR UPDATE
источник