balu: (Gene Kranz. Запарка.)
[personal profile] balu
Перевів один із моїх проектів з Firebird1.5 на Firebird2.5. Складність була у тому, що вони зламали зворотню сумісність SQL-запитів. Оскільки у проекті більше 500 запитів, то прийшлося писати анналізатор тексту, який, по-перше видирав SQL-запити із java, python, pascal і самописного DSL, а, по-друге, вже аналізував запит та давав рекомендаціі його пофіксити. Тож десь місяць тому, я перевів базу. Що можна сказати? Воно того було варте:
  • по-перше у мене не болить голова, що 1.5 перестане запускатись на якійсь із сучасних платформ.
  • по друге, стали непотрібними зовнішні користувацькі функції оскільки достатньо штатних засобів.
  • по-третє, стало краще з перфомансом
Хоча виявилося два неприємних сюрприза. Перший заключався у тому, що не вдалося відтестувати ідентичність результатів запитів, а були косяки з сортуванням null-значень. Синтаксис і тут сав більш строгим. ТІльки під Linux один із запитів став замість 3 хвилини відпрацьовувати 15. На вінді у віртуалці цього  нема. Можна буде, звісно, потестувати на чомусь відміному від Убунти, але маю сильні сумніви, що результат буде кращий.

Profile

balu: (Default)
от. Михайло

December 2025

S M T W T F S
 123 456
7 8910111213
14151617181920
21222324252627
28293031   

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 29th, 2026 02:22 pm
Powered by Dreamwidth Studios