powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / OldSetClauseSemantics & FB3
25 сообщений из 26, страница 1 из 2
OldSetClauseSemantics & FB3
    #39169535
Viktor_bs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В связи с исключением в 3-ке параметра OldSetClauseSemantics есть ли о кого идеи как такие update выловить не перечитывая глазами "тоны" процедур?

Речь о
Код: sql
1.
UPDATE T SET A = B, B = A
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169543
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имхо, без привлечения сторонних средств и программирования задачу не решить.

теоретически мысля такая:
взять свой SQL-парсер (или готовый) и скармливать ему тексты процедур содержащие UPDATE.
ну а дальше дело техники.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169667
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> В связи с исключением в 3-ке параметра OldSetClauseSemantics

Не перестаю узнавать много нового для себя про тройку.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169702
Viktor_bs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам> В связи с исключением в 3-ке параметра OldSetClauseSemantics

Не перестаю узнавать много нового для себя про тройку.

Вы хотите сказать что параметр поддерживается ? :)
Как тогда его включить?
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169736
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Viktor_bs,

нет там такого параметра, так что никак не включить. Опция была добавлена в 2.5, 2.5 вышел в 2010 году, за пять лет можно же было исправить прогу и БД.
Тем более что старое поведение было действительно неправильным, а новое поведение - правильное.

А вот как выловить... не представляю. это все-таки нужен парсер, наверное. Может, вы на воду дуете?
Я припоминаю только одного человека, который матерился на "новую фичу", потому что он умышленно использовал этот баг.
Обычно, когда используют такие конструкции, ожидают все-таки нормального (нового) поведения. А если это 1.5-2.1, то человек быстро обнаруживает "ой, мля...".
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169761
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvожидают все-таки нормального (нового) поведения.Это поля должны поменяться местами?
По крайней мере у меня на 2.5 поменялись, специально проверил.

Написать такое в продакшн как-то в голову не приходило.
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169778
Viktor_bs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvViktor_bs,

нет там такого параметра, так что никак не включить. Опция была добавлена в 2.5, 2.5 вышел в 2010 году, за пять лет можно же было исправить прогу и БД.
Тем более что старое поведение было действительно неправильным, а новое поведение - правильное.

А вот как выловить... не представляю. это все-таки нужен парсер, наверное. Может, вы на воду дуете?
Я припоминаю только одного человека, который матерился на "новую фичу", потому что он умышленно использовал этот баг.
Обычно, когда используют такие конструкции, ожидают все-таки нормального (нового) поведения. А если это 1.5-2.1, то человек быстро обнаруживает "ой, мля...".
Эти процедуры еще со времен IB 4.x сохранились... и использовалось в те времена как должное, от том что это багофича узнали значительно позже.
Переписать то можно, знать бы где, я как-то приводил скриншет с количеством объектов в БД :(
Для того чтобы перейти на 2.5 я включил эту опцию, другого выбора на тот момент не было, т.е. либо переходим на 2.5 либо нет.

Вот такие конструкции встречаются в ряде процедур и это можно интерпретировать как "умышленное", т.к. такая конструкция работает быстрее (отсутствие еще одного select-а)
Код: sql
1.
2.
3.
4.
5.
      .........
      UPDATE .... C
      SET C.VOLUME = :V_VOLUME,
          C.QUANTITY = C.NATIVE_QUANTITY * (C.VOLUME / C.NATIVE_VOLUME)
      WHERE ....
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169792
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Viktor_bsт.е. либо переходим на 2.5 либо нет.
Ну значит на вопрос "либо переходим на 3.0 либо нет" ответом будет "нет". Так случается с
любым калом мамонта рано или поздно: оно окаменевает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169798
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам> В связи с исключением в 3-ке параметра OldSetClauseSemantics

Не перестаю узнавать много нового для себя про тройку.


тебя не поймёшь. Такое ощущение что ты хочешь перетянуть в тройку кучу условных веток, чтобы различными переключателями эмулировать поведение вплоть до FB1. Нафига оно нужно?
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169804
Viktor_bs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисГаджимурадов Рустам> В связи с исключением в 3-ке параметра OldSetClauseSemantics

Не перестаю узнавать много нового для себя про тройку.


тебя не поймёшь. Такое ощущение что ты хочешь перетянуть в тройку кучу условных веток, чтобы различными переключателями эмулировать поведение вплоть до FB1. Нафига оно нужно?
Если каммент в мою сторону, то я ничего подобного не хочу. Я читал комментарии в конфигурационном файле 2.5 и подозревал что в 3-ке это прикроют. Сейчас до релиза есть время подумать над всем этим.
А вопрос задавался как найти такие процедуры. Парсер крутился в голове как запасной вариант давно, думал что коллективный разум подскажет более простой вариант.
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169807
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Viktor_bs,

нет. Это ГР. Он что-то скептически ко всем нововведениям относится. И наверное хочет чтобы всё осталось как было.
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169829
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис> кучу условных веток, чтобы различными
Симонов Денис> переключателями эмулировать поведение вплоть до FB1

Во-первых, они лично тебе мешают?
Ладно бы ещё ДЕ/Влад возмущались
"надоело спагетти-код поддерживать".
Во-вторых, таки есть такое понятие -
обратная совместимость называется.

Симонов Денис> Он что-то скептически ко всем нововведениям относится.

Во-первых, не ко всем, а только к тем,
которую нарушают совместимость.
Во-вторых, это не нововведение, а
убирание старого.

Но путёй идёте "верной", удачев.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169884
Viktor_bs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисViktor_bs,

нет. Это ГР. Он что-то скептически ко всем нововведениям относится. И наверное хочет чтобы всё осталось как было.
Да да... я хочу чтобы в будущем релизе 3-ки ошибку в функции hash исправили, обратная совместимость по ней меня не парит :)
Или это другой случай? :)
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169905
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамВо-вторых, таки есть такое понятие - обратная совместимость называется.
с нашими ресурсами - либо совместимость, либо прогресс. Все Old* ключи конфига документированы как временные, для быстрой миграции на новые версии и спокойного вылизывания кода потом. Держать их пожизненно не можем себе позволить.
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169920
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr> с нашими ресурсами

Да понятное дело, только вот как бы не перестарались.
Со старой семантикой-то черт с ней, всё равно грабли
выискивать надо, а вот кто автор идеи с обязательным
дефолтом - было бы интересно узнать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169931
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамВо-вторых, таки есть такое понятие -
обратная совместимость называется.
мне кажется, что разрабы уже давно приучили программистов, что у ФБ в каждой следующей версии обязательно есть несовместимости с предыдущей (и которые не лечатся с конфигом). Возможно, я ошибаюсь, не приучили еще.
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169934
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv> мне кажется, что разрабы уже давно приучили
kdv> программистов, что у ФБ в каждой следующей
kdv> версии обязательно есть несовместимости с
kdv> предыдущей (и которые не лечатся с конфигом).

А потом вы удивляетесь, когда сюда Мыколы, Симарглы
и фб-юзеры всякие прибегают. Потому и прибегают. (с)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169937
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустамкто автор идеи с обязательным дефолтом
Я. Еще вопросы? :-)
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39169996
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr> Я. Еще вопросы? :-)

Ты просто замечательный красавчик!!!
Вопросов больше не имею.

P.S. А ведь врёшь, поди.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39170208
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

блин в оракле так было. Нельзя выполнить DDL который переводит базу в кривое состояние. Чем плохо то?
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39170213
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисблин в оракле так было
я бы дальше пошел и поинтересовался, где не так...
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39170243
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr> где не так...

В прошлых версиях FB/IB ?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39170251
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,
да, и это было багом
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39170256
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис> да, и это было багом

Что было багом, опция в конфиге?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
OldSetClauseSemantics & FB3
    #39170272
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

нет я про это

>а вот кто автор идеи с обязательным
дефолтом - было бы интересно узнать

добавление NOT NULL поля в таблицу с данными без указания дефолта это баг, потому что приводило базу в неконсистентное состояние.

А параметр в конфиге это для тех у кого кривая логика приложения. 5 лет было чтобы исправить.
...
Рейтинг: 0 / 0
25 сообщений из 26, страница 1 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / OldSetClauseSemantics & FB3
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]