Комментарии 18
Актуальность разработки и качество её исполнения — две большие разницы. Когда комитеры указывают на недоработки или даже неоднозначности решений в предложенном патче — надо либо доказывать, либо принять их точку зрения и изменить решение. Именно поэтому новый функционал, даже самый актуальный, так тяжело входит. Нахожу это полезным для проекта.
Выскажу своё личное мнение, что INCLUDE-индексы получали хорошие разборы от того же Питера Гейгана и именно поэтому потребовали много времени — не самый простой патч. (Со стороны мне показалось, что были моменты когда Postgres Pro не уделяли патчу достаточно времени.)
Меня, как админа, расстраивает другое — не принимаются патчи, которые упрощают мониторинг базы (отслеживание event-ов, например) с аргументацией о падении производительности на пару процентов.
По поводу «другое» — у меня впечатление, что сейчас обсуждений, по крайней мере, этих тем в сообществе всё больше и больше.
Это неверно. Никаких подобных ограничений merge в Oracle нет.
Как раз столкнулся с ее отсутствием при миграции с Firebird.
Часть запросов действительно можно переписать через
INSERT ON CONFLICT DO UPDATE
Правда все запросы так не переписать. Переписать вторую часть запросов помогла специфическая для Postgres конструкция UPDATE FROM
Надеюсь что после длительных дебатов эта возможность все-такие появится в Postgres 12.
Почему-то ни в одном обсуждении в сообществе не видел упоминания Firebird в контексте MERGE.
А какие запросы удалось втиснуть в ON CONFLICT, а какие отправились в UPDATE FROM? По какому критерию?
а open source проект Firebird в рассмотрении отсутствует.
он вообще не так уж часто упоминается, хотя вроде бы весьма зрелый проект
при миграции с Firebird
если не секрет, почему мигрировали, какие у firebird сильные и какие слабые стороны?
- Простота установки и распространения
- Бесплатный для exUSSR IBExpert — пожалуй лучший инструмент для работы с СУБД, который я видел
- Хорошая поддержка стандарта
- Отличная поддержка в Delphi
- Механизм транзакций, где в рамках подключения можно иметь длинную читающую и короткие пишущие транзакции
Слабые стороны для нас:
- Медленное развитие. Версию 3 после выхода 2.5 ждали годы.
- Маленькое сообщество, в связи с чем поддержка версии 3 в PHP задержалась на месяцы после выхода, а в NodeJS, кажется, до сих пор нормально не реализована.
- Нет многих вещей, стандартных для крупных СУБД в настоящее время, в том числе репликации, партиционирования.
- Какой-то свой подход к блокировкам записей, приводящий к периодически возникающим ошибкам с блокировкой записей соседними транзакциями
чем закончилась история?
Битва при MERGE. Хроника с выводами и моралью