|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Симонов Денисну так это про то, что прежде чем говорить о каких нибудь особенностях или багах неплохо бы узнать а не исправлены ли они. А то получается что не предложение то мимо. год или два назад мы тут перетирали этот барьер, ничего на тот момент не изменилось и планов не было. давай, ты покажешь, где и что исправлено. кстати посмотрел релиз ноты к 3.0 беты, на тему cursor stability коротенький абзац и речь о неком undo log. что это за лог ? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 13:32 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Yo.!, тот что внутри файла. Ты о нём знаешь. В FB есть UNDO лог. И он там всегда был, иначе как бы он откатывал транзакции. А вот REDO лога там нет. Исправлено чувствительность курсора к своим изменениям. В запросах типа Код: sql 1. 2. 3. 4. 5.
кроме того стабильность сделали и в PSQL курсорах т.е. вот это Код: sql 1. 2.
не зациклится. Если конечно не втыкать в цикл оператор SUSPEND, потому что он разрывает севпойнт. И об этом в релизнотах сказано. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 13:41 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Симонов ДенисYo.!, тот что внутри файла. Ты о нём знаешь. в датафайле просто записи с номером транзакции, теперь это за undo log выдают ? забавно. Симонов ДенисИсправлено чувствительность курсора к своим изменениям. ну а где почитать подробности ? у меня честно говоря стойкое ощущение, что тот кто писал релиз ноты, как и в прошлый раз, слегка не понимает в чем проблема. на уровне snapshot и так все в "undo log" смотрят. у запроса типа Код: sql 1.
была проблема в том, что он перезапускался в цикле, а не в том что видел свои изменения. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 15:43 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Yo.!, писал тот кто исправлял. Проблема там действительно исправлена. Я это проверял. Смысл в том что записи курсора как бы помечаются изменёнными. Потом когда на них наступают по ундо логу отыскивается как эта запись выглядела до изменения. Это как я понял. Подробней может сказать разве что hvlad (если захочет). ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 15:50 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Симонов Денистот что внутри файла. Ты о нём знаешь. В FB есть UNDO лог. И он там всегда был, иначе как бы он откатывал транзакции. транзакции откатить можно и без undo, через TIP. Использования undo при rollback в некоторых случаях - это всего лишь оптимизация. А вот сейвпойнты - без undo никак. И undo не хранится внутри файла, строго говоря это сочетание версий в базе, версий в temp space и управляющих структур в памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 15:52 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Yo.!у меня честно говоря стойкое ощущение, что тот кто писал релиз ноты, как и в прошлый раз, слегка не понимает в чем проблема. на уровне snapshot и так все в "undo log" смотрят. ... была проблема в том, что он перезапускался в цикле, а не в том что видел свои изменения. а у меня стойкое ощущение, что проблему не понимаешь ты. Ну или не хочешь понимать. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 15:55 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
dimitr, для Yo.! пойдёт и в таком виде. А то он не успокоится пока не услышит что undo лог существует ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 15:56 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Симонов Денисон не успокоится пока не услышит что undo лог существует Он всё равно не успокоится, пока не услышит, что undo log совпадает с оракуловским вплоть до бинарного формата. А то как это можно, чтобы этот лог был компактнее и быстрее чем у великого и ужасного?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 16:11 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovОн всё равно не успокоится, пока... продолжать фразу не обязательно :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 16:15 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
dimitrтранзакции откатить можно и без undo, через TIP. Использования undo при rollback в некоторых случаях - это всего лишь оптимизация. А вот сейвпойнты - без undo никак. И undo не хранится внутри файла, строго говоря это сочетание версий в базе, версий в temp space и управляющих структур в памяти. т.е. в релиз нотах снова пишут люди не понимающие чего пишут. не везучие у вас рилиз ноты на тему cursor stability на счет delete from test where test.ID in (select id from test GROUP BY id HAVING count(id)>1); можете внятно пояснить, что там происходит и чем там может помочь заглядывание в мифический undo log ? уровень изолированности snapshot/serializable ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 16:30 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Yo.!, не неси пургу. Я тебе сказал что эту часть релиз нотов писал тот кто делал исправление стабильности курсора. И уж поверь понимает он поболе тебя и причины и следствия. Чем тебя мой ответ не устроил? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 17:00 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Yo.!т.е. в релиз нотах снова пишут люди не понимающие чего пишут. не везучие у вас рилиз ноты на тему cursor stability какие конкретно претензии к релизным нотам? Пересмотрел еще раз, вроде все верно написано. Yo.!на счет delete from test where test.ID in (select id from test GROUP BY id HAVING count(id)>1); можете внятно пояснить, что там происходит и чем там может помочь заглядывание в мифический undo log ? уровень изолированности snapshot/serializable транзакция всегда видит свои собственные изменения, будь она хоть трижды снапшотом. Раньше, если курсор натыкался на измененные внутри него же записи, он их считал видимыми. Сейчас не считает (путем проверки посредством undo-лога). А какие именно формы имел курсор - пофиг. Undo-лог это изменения не только текущей транзакции, но и текущего сейвпойнта. По нему легко выполняется проверка текущей версии записи и при необходимости чтение предыдущей. Вот и вся кухня за словами cursor stability. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 17:19 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Автономные транзакции в PostgreSQL, о необходимости которых говорят уже десять лет, в какой версии будут?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.01.2015, 19:34 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Симонов Дениссизиф и мартышки, слив засчитанщиталку не поломай, северный варвар ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 08:10 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovАвтономные транзакции в PostgreSQL, о необходимости которых говорят уже десять лет, в какой версии будут?.. в виде встроенного клиента dblink они есть уже хз сколько времени т.е. артель "сизиф и мартышки" вполне себе может организовать и автономию, и десять параллельных автономий, и синхронизовать в них снепшоты. а вот "искаропки" автономий действительно ждёмс -- чтобы в дерево локов были включены, значится, иначе ногу себе легко прострелить. а у вас таки есть ? и дедлоки родителей через[/с] автономии разрешаются в дереве ? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 08:16 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
сизиф и мартышкищиталку не поломай, северный варвар Болтать попусту не чего. Уж если сказал, то приводи доказательства, а то получается пустое бла бла бла. И таки да автономки у нас есть. А вот dblink увы нету. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 08:41 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Симонов Денис И таки да автономки у нас есть. А вот dblink увы нету.нужны не автономки self, а их отслеживание в дереве блокировок, чтобы не защелкнуться через них в неразрешимый дедлок. дблинк (если в автономках выставить одну очередь на ресурс, а в породивших -- обратную очередь на [возможно другой] ресурс) -- не позволяет автоматом отследить дедлок по дереву (блокировка, считай, клиентская) -- т.ч. там надо тщательно следить за логикой. Ну а параллельное выполнение вычислительно сложных сверток в несколько смычков я на нем делал. Правда на синхронизацию снепшотов забил (вернее была версия до этой фичи, а потом не переписывал). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 10:07 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
сизиф и мартышки, 1) dblink-и уже перешли из контрибов в ядро? Я надеюсь, что они относятся к "they address a limited audience", а не к "too experimental to be part of the main source tree"? 2) Предлагаю таки почитать про автономные транзакции - в википедии или в оракловой доке, например. После чего предложить реальный сценарий возникновения в них дедлоков с родительской транзакцией. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 11:00 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
dimitr2) Предлагаю таки почитать про автономные транзакции - в википедии или в оракловой доке, например. После чего предложить реальный сценарий возникновения в них дедлоков с родительской транзакцией. Обе транзакции хотят вставить в одну таблицу id1 - автономка будет ждать, что основная транзакция освободит блокировку, а основная, что закончится автономка. Если в анализе замыканий есть зависимость окончание автономки, то можно определить deadlock, если только по блокировкам записей, то основная может и не ждать никаких блокировок от автономки. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 11:12 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Сергей Арсеньев, в Firebird: а) нет никаких блокировок записей б) есть блокировки, связанные с тр-циями и использующиеся для определения статуса активности т-ции в) т.к. автономные тр-ции действительно автономны, то они абсолютно равноправны с "родительскими" и для них действуют те же самые "правила игры". Так что обнаружение дедлоков для автономок работает точно так же, как и для всех других тр-ций в БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 11:29 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
Сергей Арсеньев, принято, дедлок возможен при WAIT-режиме транзакций. Тем не менее: SQL> create table t (id int primary key); SQL> insert into t (id) values (1); SQL> set term ^; SQL> execute block as begin in autonomous transaction do insert into t values (1); end^ -- пауза в DeadlockTimeout секунд Statement failed, SQLSTATE = 23000 violation of PRIMARY or UNIQUE KEY constraint "INTEG_2" on table "T" -Problematic key value is ("ID" = 1) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 11:32 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
dimitr, ты заодно объясни, что наличие PK в твоём примере принципиально. А то завтра местные "эксперты" будут рассказывать, что параллельная вставка в таблицу не возможна... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 11:37 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
hvlad, дык без PK и дедлока не будет, оффтопик нам не нужен :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 11:39 |
|
Postgresql или firebird
|
|||
---|---|---|---|
#18+
сизиф и мартышкинужны не автономки self, а их отслеживание в дереве блокировок, чтобы не защелкнуться через них в неразрешимый дедлок. О, так PostgreSQL, оказывается, блокировочник, а не версионник... Вот так и развеиваются мифы. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2015, 12:28 |
|
|
start [/forum/topic.php?fid=35&msg=38863198&tid=1552343]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
177ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
others: | 254ms |
total: | 549ms |
0 / 0 |