|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
эттаPgSQLAnonymous, у вас ус отклеился у вас там таблички N непришейкобылехвост. [стюдент рука--лицо ] Там написано , зачем они нужны, стюдент. ;) эттаи да -- в пж при сериалайзебл будет откат второй И это правильно. эттарезюме -- те, кто не умеют писать серверную логику [полк их надысь пополнился випросом] -- хотят сериалазебла, чтобы клиентская реализация чисто серверного функционала хоть как-то ползала. кто умеет -- пишут инкрементальную, а не агрегатную логику на сервере, и требуют именно readcommited-а, а не маргинальных снапшотов и т.п. все маргинальные уровни изоляции требуются только для развесистых агрегатов типа отчетов по плохо связанным наборам. -- чтобы синхронизировать снапшоты отдельных расчётов А я говорю, что всё это болтовня, и аргументы я уже приводил в других ветках. Реальные контраргументы будут? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 11:49 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
PgSQLAnonymous, так, как хочется стюденту, "должно быть" при read commited а при serializable д.б. ошибка изоляции, как оно и происходит в пж рука--лицо, сюдент, рука--лицо а птичка тут продемонстрировала банальный repeatable read ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 11:52 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
эттаPgSQLAnonymous, так, как хочется стюденту, "должно быть" при read commited а при serializable д.б. ошибка изоляции, как оно и происходит в пж С чего ты взял, что мне так хочется?! Ты вообще читать умеешь, стюдент?! Так я повторю так, чтоб ты увидел: PgSQLAnonymous И это правильно. эттаа птичка тут продемонстрировала банальный repeatable read Таки да. ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 11:58 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
PgSQLAnonymous<> А я говорю, что всё это болтовня, и аргументы я уже приводил в других ветках. Реальные контраргументы будут?откат 100500 конкурентов выше по ветке обусловленный 2--мя ошибками "архитектора" -- кривым дизайном (с пересекающимся в конкурентной работе с аггрегирующими сущностями) и неверным уровнем изоляции (который с таким дизайном вообще не ползает, не то, чтобы трепыхаться). я этот дизайн ещё могу оживить. Будет ползать с очередями. Хотя он и левый. Вы -- никогда. и это всё е-болтовня, что ты якобы что-то где-то как-то приводил. ибо не по сеньке шапка, стюдент. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:01 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
PgSQLAnonymousПолучиться-то должно было так:Читаем что такое снапшот. 3 раза каждый день на ночь. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:01 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
hvladPgSQLAnonymousПолучиться-то должно было так:Читаем что такое снапшот. 3 раза каждый день на ночь. Обожемой, ты же даже не понял. Читаем, что такое SERIALIZABLE, хоть 3 раза каждый день на ночь. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:14 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
[quot этта]PgSQLAnonymous<> обусловленный 2--мя ошибками "архитектора" -- кривым дизайном (с пересекающимся в конкурентной работе с аггрегирующими сущностями) и неверным уровнем изоляции (который с таким дизайном вообще не ползает, не то, чтобы трепыхаться). я этот дизайн ещё могу оживить. Будет ползать с очередями. Хотя он и левый. Вы -- никогда. А покажи-ка "правый" дизайн для этой задачи, умник. Болтать --- не мешки таскать. эттаи это всё е-болтовня, что ты якобы что-то где-то как-то приводил. ибо не по сеньке шапка, стюдент. А это ты попросту соврал. Кому надо --- найдёт, почитает. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:22 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
эттаоткат 100500 конкурентов выше по ветке Считаем на пальцах: пусть транзакция у анонимуса идёт 10 минут (иначе 100500 конкурентов ну никак не накопятся), пусть он заставил из сериализоваться. Тогда последний конкурент дождётся своей очереди на получение денег аккурат так через 10050000 минут. Умрёт от старости он, пожалуй, гораздо раньше. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:24 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
pkarklinhvladНу, тогда - да, нет в FB такого уровня изоляции. А где есть ? MS SQL.Т.е. там не будет дедлока при "перекрёстных" writes ? Позвольте не поверить :) Или мы снова говорим о разном. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:29 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
PgSQLAnonymousОбожемой, ты же даже не понял. Ты таки не видишь в своём собственном примере тупой ошибки с расстановкой коммитов ? Обожемой (ц) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:31 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
hvladPgSQLAnonymousОбожемой, ты же даже не понял. Ты таки не видишь в своём собственном примере тупой ошибки с расстановкой коммитов ? Обожемой (ц) Никакой ошибки там нет . Это провоцирующий тест на сериализацию, который InterBase провалил . Что будет в настоящей ACID-СУБД, тебе уже показали на примере PostgreSQL. Я бы посоветовал перечитывать, пока не дойдёт. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:38 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
hvladpkarklinпропущено... MS SQL.Т.е. там не будет дедлока при "перекрёстных" writes ? Позвольте не поверить :) Или мы снова говорим о разном. Да (кажется), там будет DEADLOCK, и это, опять-таки, правильно . А InterBase просто тихо покоцал данные, и это то, чего не должно быть. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:41 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
PgSQLAnonymousв настоящей ACID-СУБД оставьте этот пафос, ей богу. Поддержка SERIALIZABLE и ACID вещи ортогональные. Или может вспомним, что ваша "настоящая" СУБД до 2011 года была "ненастоящей" и вовсю баловалась "подменой терминов"? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:47 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
PgSQLAnonymous, последняя попытка тебе образумиться: - в момент старта каждой тр-ции в таблицах A и B было по 1-ой записи - соотвественно инсерты видели по одной записи и позже вставили единицы, ибо это снапшот - он не может видеть чужих изменений по-определению - т.к. ты коммитишь первый инсерт до того, как выполнить второй инсерт, то конкуренции в твоём тесте нет вообще, ноль - если сделать insert (1), insert (2), commit(1), commit (2), то insert (2) будет ждать commit(1) и, есс-но, вставит всё равно 1, ибо в момент старта тр-ции (2) в таблице была 1 запись PS То, что ты выдаёшь за единственно правильное, в IB\FB достигается с READ COMMITTED + RESERVING, но это я тут жевать не намерен. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:52 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
dimitrPgSQLAnonymousв настоящей ACID-СУБД оставьте этот пафос, ей богу. Поддержка SERIALIZABLE и ACID вещи ортогональные. Ничего подобного. Поддержка SERIALIZABLE --- это обязательный компонент ACID, потому что он обеспечивает свойство ISOLATION. dimitrИли может вспомним, что ваша "настоящая" СУБД до 2011 года была "ненастоящей" и вовсю баловалась "подменой терминов"? Да была, да, баловалась. Я так подозреваю, что это было тупо содрано с некоторой СУБД, на которую PostgreSQL пытался быть похожим. И что из того? Некоторые-то до сих пор "ненастоящие" и балуются. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 12:59 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
PgSQLAnonymousПоддержка SERIALIZABLE --- это _обязательный_ компонент ACID, потому что он обеспечивает свойство ISOLATION. А вот нефиг читать комиксы в сокращённом варианте. Читай полную статью: http://en.wikipedia.org/wiki/Isolation_(database_systems) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:05 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
hvladPgSQLAnonymous, последняя попытка тебе образумиться: - в момент старта каждой тр-ции в таблицах A и B было по 1-ой записи - соотвественно инсерты видели по одной записи и позже вставили единицы, ибо это снапшот - он не может видеть чужих изменений по-определению - т.к. ты коммитишь первый инсерт до того, как выполнить второй инсерт, то конкуренции в твоём тесте нет вообще, ноль - если сделать insert (1), insert (2), commit(1), commit (2), то insert (2) будет ждать commit(1) и, есс-но, вставит всё равно 1, ибо в момент старта тр-ции (2) в таблице была 1 запись PS То, что ты выдаёшь за единственно правильное, в IB\FB достигается с READ COMMITTED + RESERVING, но это я тут жевать не намерен. Последняя попытка тебе образумиться: ты утверждал, что этот "SNAPSHOT TABLE STABILITY" --- это SERIALIZABLE. В SERIALIZABLE должен был получиться один из двух указанных результатов. Тест показал, что это не так . Следовательно, "SNAPSHOT TABLE STABILITY" --- это не SERIALIZABLE , и все твои объяснения к делу не относятся. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:06 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovэттаоткат 100500 конкурентов выше по ветке Считаем на пальцах: пусть транзакция у анонимуса идёт 10 минут (иначе 100500 конкурентов ну никак не накопятся), пусть он заставил из сериализоваться. Тогда последний конкурент дождётся своей очереди на получение денег аккурат так через 10050000 минут. Умрёт от старости он, пожалуй, гораздо раньше. То есть ссылки на статистику NASDAQ и объяснения ты просто проигнорировал (потому что в твою картину мира они не укладываются)? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:09 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
PgSQLAnonymousТо есть ссылки на статистику NASDAQ и объяснения ты просто проигнорировал (потому что в твою картину мира они не укладываются)? Я их проигнорировал, поскольку во-первых, ты их не привёл, а во-вторых, там транзакции не длятся по 10 минут. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:12 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovPgSQLAnonymousПоддержка SERIALIZABLE --- это _обязательный_ компонент ACID, потому что он обеспечивает свойство ISOLATION. А вот нефиг читать комиксы в сокращённом варианте. Читай полную статью: http://en.wikipedia.org/wiki/Isolation_(database_systems) О, вот и ссылки на мурзилку появились. ;) Кстати, где ты там это вычитал? Если тебе так нравится этот журнал, я оттуда поцитирую http://en.wikipedia.org/wiki/ACID : The isolation property ensures that the concurrent execution of transactions results in a system state that would be obtained if transactions were executed serially, i.e., one after the other. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:14 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
Что-то вы тут разошлись, 11 страниц для такого простого вопроса многовато... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:19 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovЯ их проигнорировал, поскольку во-первых, ты их не привёл, а во-вторых, там транзакции не длятся по 10 минут. Во-первых: PgSQLAnonymousКороче говоря, в некоторых условиях у достаточно крупного брокера тысячи транзакций могут пересечься. Или все проблемы с конкурентным доступом нужно решать их отрицанием? ;) Кстати, вот можно оценить объёмы транзакций на бирже: http://www.nasdaqtrader.com/Trader.aspx?id=DailyMarketSummary И это только сделки, заявок (которые используются в моём примере) за день делается гораздо больше. Во-вторых, в этом примере ни одна транзакция не длится по 10 минут. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:19 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
PgSQLAnonymousВо-вторых, в этом примере ни одна транзакция не длится по 10 минут. А теперь берём цифры по ссылке, делим количество сделок на количество брокеров, а потом на длину рабочего для и получаем 38 сделок в минуту на брокера. Где там 100500 откатов? Кстати, строгого контроля овердрафта там тоже нет, так что счёт брокера вообще не является конкурентным ресурсом. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:25 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
hvladMS SQL.Т.е. там не будет дедлока при "перекрёстных" writes ? Позвольте не поверить :) Или мы снова говорим о разном.[/quot] Казалось бы, причем здесь SERIALIZABLE TIL?! ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:41 |
|
Чем плох блокировочник по сравнению с версионником?
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovPgSQLAnonymousВо-вторых, в этом примере ни одна транзакция не длится по 10 минут. А теперь берём цифры по ссылке, делим количество сделок на количество брокеров, а потом на длину рабочего для и получаем 38 сделок в минуту на брокера. Где там 100500 откатов? Попробую в третий раз: PgSQLAnonymousИ это только сделки, заявок (которые используются в моём примере) за день делается гораздо больше. Dimitry SibiryakovКстати, строгого контроля овердрафта там тоже нет, так что счёт брокера вообще не является конкурентным ресурсом. Почему ты в этом уверен? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2015, 13:51 |
|
|
start [/forum/topic.php?fid=35&msg=38959749&tid=1552327]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
others: | 262ms |
total: | 413ms |
0 / 0 |