Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Firebird, InterBase Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 [4]      все
 Re: Запрос иерархических структур в FB 2.5  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 47264

superspy2019
"если параллельная транзакция не была отменена по истечению таймаута" эквивалентна фразе
"параллельная транзакция закоммитила изменения".

Уверен? Сам я никогда не использовал такую экзотику как read_committed no_rec_version, но
когда с ним экспериментировал Таблоид, ему удавалось получить бесконфликтное обновление
одной записи при двух параллельных транзакциях. Вот при трёх уже действительно получался
облом.

superspy2019
У вас будет альтернатива в виде использования snapshot или более строгого уровня изоляции,
либо более оптимального способа read_committed + rec_version

Второй способ никоим образом не является "более оптимальным". Как уже сказали, я всегда
советую забыть о read committed как о страшном сне, который в Борланде кривовато прилепили
к Interbase чтобы их BDE мог с ним сносно работать.

Posted via ActualForum NNTP Server 1.5

30 мар 19, 19:39    [21847955]     Ответить | Цитировать Сообщить модератору
 Re: Запрос иерархических структур в FB 2.5  [new]
kdv
Member

Откуда: iBase.ru
Сообщений: 27910
superspy2019
NO RECORD_VERSION (значение по умолчанию) является в некотором роде механизмом двухфазной блокировки.

Если честно, то я не очень понимаю, что имел в виду Денис Симонов, когда писал про эту самую "двухфазную блокировку", причем "в некотором роде".
Про no_rec_version у меня на сайте написано в описании транзакций
http://www.ibase.ru/ibtrans/
и человек достаточно подробно расписал в
http://www.ibase.ru/norecver

кроме того, насчет "по дефолту", я вам сообщу, что "по дефолту" этот дурацкий режим использовался до BDE 4.1, пока я не указал на это Borland, и в ODBC до версии 1.52 пока я не указал на это разработчикам ODBC, и вроде бы до сих пор используется в .Net, хотя я с Иржи даже поругался на эту тему в 2012 году. Но это его личные проблемы.

В компонентах прямого доступа no_rec_ver практически никогда не использовался по дефолту для read committed, потому что тогда уже все всё понимали.
superspy2019
либо более оптимального способа read_committed + rec_version - но он станет грубейшей ошибкой при чтении более 1 таблицы в одной транзакции

это станет "грубейшей ошибкой" только если вы не понимаете, что такое read committed. Оно ПО ОПРЕДЕЛЕНИЮ предполагает нестабильное чтение даже из ОДНОЙ таблицы.
superspy2019
Если вы пришли сказать что-то конструктивное

я вам пришел сказать, что вы не понимаете того, что пытаетесь обсуждать. И хамить мне не надо по поводу конструктива. Я с InterBase работаю с 1994 года, и в версионности понимаю уж побольше чем вы. Перечитайте еще раз статьи на ibase.ru.
Когда мне было непонятно про версионность и транзакции, я имеющийся на тот момент материал перечитывал по 4-5 раз, нисколько этого не стыдясь. Чего и вам советую.
superspy2019
Уважаемый, фраза "если параллельная транзакция не была отменена по истечению таймаута" эквивалентна фразе "параллельная транзакция закоммитила изменения".

а по-моему ваша фраза - сивый бред. Если транзакция не завершена, то она никак не могла ни закоммиттить изменения, ни быть отмененной по роллбэку. Вы тут что-то путаете с MS SQL, видимо.
superspy2019
У меня стойкое ощущение, что вы не воспринимаете параллельную работу многих потоков в БД как необходимость.

у меня стойкое ощущение, что вы воспринимаете параллельную работу многих потоков в БД как нечто отличное от параллельной работы с БД нескольких отдельных пользователей. При том, что в такой работе нет никакой разницы, совершенно.
30 мар 19, 21:32    [21847995]     Ответить | Цитировать Сообщить модератору
 Re: Запрос иерархических структур в FB 2.5  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 9388
kdv
Если честно, то я не очень понимаю, что имел в виду Денис Симонов, когда писал про эту самую "двухфазную блокировку", причем "в некотором роде".


ну это придумала Хелен. У меня вряд ли бы хватило фантазии писать про какие-то двухфазные блокировки. Но оно там явно в переносном смысле написано. Может не совсем корректный перевод.
30 мар 19, 21:40    [21848002]     Ответить | Цитировать Сообщить модератору
 Re: Запрос иерархических структур в FB 2.5  [new]
superspy2019
Member

Откуда:
Сообщений: 31
vvvait
Симонов Денис, json хуже, там запятые ставить нужно, хотя в новых версиях можно и в конце перечисления запятую ставить.
XML лучше тем, что потом можно шаблоном крутить как угодно и агрегаты посчитать и группировки с сортировками на клиенте, чтобы сервер разгрузить.


На самом деле не лучше и не хуже в плане удобства работы, если json корректный. Зато объем текста куда меньше. Конечно, xsl преобразования и всевозможные способы валидации на стороне XML, но на практике настолько редко это все нужно на самом деле. Красивый отчет можно построить на чем угодно. Но все зависит от задач, конечно
31 мар 19, 01:00    [21848112]     Ответить | Цитировать Сообщить модератору
 Re: Запрос иерархических структур в FB 2.5  [new]
superspy2019
Member

Откуда:
Сообщений: 31
kdv
честное слово, большей ахинеи про версионность в ФБ я нигде не читал.

kdv
Вы не просто бредите, вы в другой вселенной находитесь.

kdv
гражданин, я вас уверяю - вы несёте ахинею, и при этом считаете её истиной. Это ВЫ читать не умеете, о чем и заявляете с непомерным пафосом.

kdv
И если вы собираетесь на эту тему что-то еще брякнуть, то рекомендую ПЕРЕЧИТАТЬ эти самые статьи.



superspy2019
Если вы пришли сказать что-то конструктивное, интересно будет услышать комментарий в контексте ваших сообщений - в чем конкретно я ошибся.

kdv
я вам пришел сказать, что вы не понимаете того, что пытаетесь обсуждать. И хамить мне не надо по поводу конструктива


Сначала я подумал, что у вас дичайшая жгучая звездная болезнь. Потом понял, что просто отсутствуют зачатки воспитания и вежливости. Теперь стал абсолютно уверен в том, что у вас весеннее обострение и запущенный психоз. Думаю, вам стоит обратиться за квалифицированной помощью, пока не все потеряно... Наверное, столько желчи и злости на этом ресурсе из-за того, что его адепты ничем не хуже
31 мар 19, 01:11    [21848116]     Ответить | Цитировать Сообщить модератору
 Re: Запрос иерархических структур в FB 2.5  [new]
m7m
Member

Откуда: Украина, Мариуполь
Сообщений: 1316
superspy2019,

Мда, с таким восприятием критики ты долго не задержишься здесь :(
31 мар 19, 09:02    [21848141]     Ответить | Цитировать Сообщить модератору
 Re: Запрос иерархических структур в FB 2.5  [new]
Ivan_Pisarevsky
Member

Откуда: НН
Сообщений: 8239
Модератор: Господа, предлагаю сбавить обороты. У нас не медицинский форум, раздача диагнозов может привести только к зачистке подобных раздач. Благодарю за понимание.
31 мар 19, 12:37    [21848206]     Ответить | Цитировать Сообщить модератору
 Re: Запрос иерархических структур в FB 2.5  [new]
kdv
Member

Откуда: iBase.ru
Сообщений: 27910
superspy2019,

вы свои сообщения перечитайте. Потом перечитайте статьи про версионность. Если что непонятно, я объясню. Но пока ваши выводы от прочитанного почти во всём неверны.
31 мар 19, 12:55    [21848216]     Ответить | Цитировать Сообщить модератору
 Re: Запрос иерархических структур в FB 2.5  [new]
superspy2019
Member

Откуда:
Сообщений: 31
kdv
superspy2019,

вы свои сообщения перечитайте. Потом перечитайте статьи про версионность. Если что непонятно, я объясню. Но пока ваши выводы от прочитанного почти во всём неверны.


Спасибо! Я сохранил ссылки - обязательно прочитаю.
31 мар 19, 16:00    [21848295]     Ответить | Цитировать Сообщить модератору
 Re: Запрос иерархических структур в FB 2.5  [new]
WildSery
Member

Откуда: да, оттуда.
Сообщений: 15111
Извините, лень весь топик читать.
По существу, если автора устраивает "как в 1С", то делать больше ничего и не нужно.
superspy2019
В аналоги могу лишь привести 1С : если сделать подобный запрос с итогами, с помощью нескольких выборок на разных уровнях иерархии можно обойти как шапки документов, так и табличные части. Здесь главным критерием является то, что запрос на сервер оформляется один. Код выглядит как обход дерева.
Если хоть немного вникнуть в то, как 1С работает с данными, то сразу становится ясно, что "итоги" - это результат обработки уже полученных данных сервером приложений 1С, поскольку никаких древовидных "итогов" в SQL не наблюдается.
1 апр 19, 16:11    [21849100]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 [4]      все
Все форумы / Firebird, InterBase Ответить