b>j)΄!Pԫ&;"kB޶}pSVT(wę!j x;-m@JnQ+պכ7MajfJͱ4jѲ撆RxZMz7vIW/dٞТזcZM~ji ߒsQzԠDW3Den"M+/B:-uIJ7j委9p='mANޭ=/B:-n&nUfqxZM~c Ϲ+,&ᾺܢF[(1*" ϒ"Jԧ<;b" "jܢF[x ,!q қ*]/؝27SMcs"ޭDQ/应ܢF_! :s" 7`F+SVTn"IJnQ/应B 4 wD"IJ׭-`S9DrjiEJ߅gJ应矁[xZM~n"IB؃!'Тѕ+(mIKʭ/|ϐܢF[xZMzG %嬩/c[[ Про совместимость

Про совместимость

В последних сборках Firebird 3.0.4 (у меня сейчас стоит 3.0.4.32952) разрешили использование символа ‘\r’ в качестве переноса строки. Что привело к рассогласованию парсера запросов Firebird и IBProvider.

В целом, проблема ничтожная. Но она напомнила о старой мысли ужесточить ограничение на максимально поддерживаемые версии серверов (FB/IB). Во избежание.

С одной стороны идея плохая. Потому что возникают риски, которые не хочется озвучивать вслух.

А с другой стороны, провайдер не будет работать якобы «неправильно». Ну и, конечно, появится «напоминание» о том, что пора обновить провайдер.

Надо подумать.

3 комментария

hvlad  on 15 апреля, 2018

Просто интересно — о каком рассогласовании парсеров речь ? И какие проблемы это повлекло ?

Dmitry Kovalenko  on 15 апреля, 2018

У меня сломались тесты однострочных комментариев.

«WHERE COL=? —\r AND COL2=?»

Раньше у здесь было условие с один параметром, теперь с двумя.

Я бы не акцентировал на этой херне внимания, но у меня несколько лет висели обратные ошибки в тестах — провайдер обрабатывал ‘\r’ как перенос строки, а сервер не обрабатывал. И вот когда я это наконец исправил … 🙂

Dmitry Kovalenko  on 6 июля, 2018

Кстати, отличная идея для диверсии в стиле «я вам, суки, обновляю».

Leave a Comment