В современных JVM управление GC обычно доступно лишь в ограниченном объёме и зависит от настроек В большинстве платформ, включая Java и .NET, полностью отключить поколенческий GC нельзя При этом разрешается изменить…
Почему BulkInsert работает быстрее обычных вставок? добавляет большие объёмы данных с минимальными накладными расходами игнорирует либо откладывает проверку констрейнтов, включая внешние ключи и индексы сокращает…
Почему исключения сравнивают с оператором goto и чем это опасно Исключение прекращает стандартное выполнение программы и немедленно передаёт управление обработчику. В этом оно напоминает оператор goto, меняющий…
Откат транзакций в Postgres и MS SQL: версионность или физические операции? В PostgreSQL ROLLBACK основан на механизме MVCC (многоверсионной конкуренции) MVCC сохраняет предыдущие версии строк, чтобы обеспечить чтение…
Индексы B-Tree, Hash и BRIN в Postgres: различия и подходящие сценарии B-Tree — стандартный индекс Postgres для упорядоченных данных. Он обеспечивает быстрый поиск, сортировку и выполнение диапазонных запросов. Hash —…
Пессимистичные и оптимистичные блокировки Различие в стратегии обработки конфликтов: Пессимистичные: ресурс блокируется заранее, поскольку конфликт считается вероятным Оптимистичные: операции выполняются без…
Транзакция представляет собой единый логический набор операций, гарантирующий атомарность и согласованность данных. Batch-insert выполняет массовую вставку записей с помощью одного SQL-запроса, повышая…
Что будет, если читать из канала быстрее, чем в него записывают? Каналы Go обеспечивают блокирующую синхронизацию если данных нет, операция чтения заблокируется горутина будет ожидать отправки значения в канал пока…
Что означает relation в PostgreSQL? понятие из реляционной модели данных в базе данных соответствует таблице включает строки (кортежи) и столбцы (атрибуты) каждая строка представляет отдельный экземпляр данных…
Что произойдет при ошибке в задаче, выполняемой под GIL? GIL представляет собой глобальную блокировку интерпретатора Python, регулирующую работу потоков Сбой задачи или потока приводит к возникновению исключения в…
Поведение REST-вызова внутри Spring-транзакции Spring-транзакция охватывает только операции с БД и локальными ресурсами REST-вызов представляет собой внешний HTTP-запрос, который транзакция не контролирует при…
Блокировки сохраняются до завершения транзакции Транзакция может находиться в состоянии pending или in progress Остальные транзакции ждут освобождения ресурсов При откате транзакции блокировки снимаются После коммита…