Jun. 24th, 2014

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

Profile

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

April 2026

S M T W T F S
   1234
5678910 11
12131415161718
19202122232425
2627282930  

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 13th, 2026 01:11 am
Powered by Dreamwidth Studios