|
|
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
Таблоидспрашивал про protected write , которая запрещает другим писать, но НЕ запрещает читать будет читаться несогласованная чухня. Единственное теоретически возможное исключение - страница генераторов, о чем DS уже стонет который год. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 14:22:22 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
Таблоидспрашивал про protected write, которая запрещает другим писать, но НЕ запрещает читать. Запрещает, поскольку другие таки читают в PR, которая не совместима с PW. Вот если бы они читали с SR... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 14:31:10 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
dimitrбудет читаться несогласованная чухня. Единственное теоретически возможное исключение - страница генераторов, о чем DS уже стонет который год. Ну, во-первых, не единственное. Во-вторых с "несогласованной чухнёй" тоже не всё так просто: в системах с shared cache не используются локи, а у латчей нет уровней PW-SR. Остальные архитектуры не в состоянии прочитать страницу, изменённую наполовину, поскольку она не запишется на диск. Правда, я не знаю как там с этим сейчас в тройке. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 14:41:55 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
dimitrбудет читаться несогласованная чухня.НЕ врубился я что-то. Вот есть некая страница N, транзакция Т1 делает попытку установить на ней PW (при выполнении DML, конечно же). Ждёт, т.к. другая транзакция еще дописывает что-то в эту страницу. Дождалась, установила. Пишет на эту страницу что-то там. В это время транзакция Т2 читает страницу в режиме SR. ВОПРОС. Может ли Т2 прочесть эту страницу в "частично изменённом" виде ? То есть, если страница у нас 16 К, в ней было записано, скажем, rpad('', 16384, 'A'), и транзакция Т1 должна записать в неё rpad('', 16384, 'B') - то может ли Т2 прочесть в некоторое мгновение чухню типа "BBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAA...AAA" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 14:43:19 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
dimitrЕдинственное теоретически возможное исключение - страница генераторовЯ не вижу, каким образом это исключение возможно. Разве что добавлять локи уровня генератора. Но, при наличии совершенно нормальных прикладных способов обхода "проблемы", я не считаю нужным даже смотреть в эту сторону. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 14:49:31 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
ТаблоидВОПРОС. Может ли Т2 прочесть эту страницу в "частично изменённом" виде ? при общем кеше - запросто. При раздельном - нет, но там другие проблемы будут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 14:56:27 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
hvladпри наличии совершенно нормальных прикладных способов обхода "проблемы", я не считаю нужным даже смотреть в эту сторону +1 :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 14:57:13 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
hvladРазве что добавлять локи уровня генератора. Interlocked* функций недостаточно?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 14:59:32 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovhvladРазве что добавлять локи уровня генератора. Interlocked* функций недостаточно?..Ой, а что это ? Расскажи да научи Нет, нет и ещё раз нет. Начни смотреть уже не на одну страницу\один генератор, а на всю систему целиком. PS Если тебе нужны генераторы только в памяти, без D, сделай себе уже UDF с ними... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 15:40:05 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
hvlad> Начни смотреть уже не на одну страницу\один генератор Не хотел встревать, но поинтересуюсь - а если держать их не на одной странице скопом, а на каждый генератор по странице - ситуация разве не облегчится? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 16:17:58 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустамситуация разве не облегчитсяКакая ситуация ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 16:59:02 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
hvlad> Какая ситуация ? Проблема с конкуренцией за одну страницу генераторов. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 17:17:43 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустамhvlad> Какая ситуация ? Проблема с конкуренцией за одну страницу генераторов.Нет такой проблемы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 17:18:55 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
ОК, нет так нет. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2013, 17:22:16 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
dimitrТаблоид ВОПРОС-2. Что это за страницы ? Как понять, к какому объекту базы они относятся ? никак (без отладчика) А если я хочу без отладчика (2.5 classic), сколько это может стоить и к кому обращаться? Меня устроит специализированная отладочная сборка (пусть работает вдвое медленнее). Можно писать на 'server03s'||chr(64)||'m'||'a'||'i'||'l'||chr(46)||'r'||'u' или контактную информацию сюда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 17:06:04 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
хотя, пожалуй, нет, отдельная сборка не устроит - это либо должна быть отдельная утилита, либо какой-то способ запуска программы из дистрибутива (пусть собранной под отладку). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 17:16:36 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
budden, чего надо-то? Понимать, какая страница к какому объекту относится? Так возьми ods.h, доку по структуре базы на firebirdsql.org, и вперед. Вопрос только в том, зачем это надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 20:07:37 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
kdvbudden, чего надо-то? Понимать, какая страница к какому объекту относится? Так возьми ods.h, доку по структуре базы на firebirdsql.org, и вперед. Вопрос только в том, зачем это надо. Надо понять, почему система зависла. Зависнуть она могла, вообще говоря, по куче причин, т.к. в ней есть, помимо сервера БД, ещё два вида клиентов. Но, чтобы найти причину, нужно уметь анализировать все компоненты, в т.ч. и СУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 21:03:33 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
kdvbudden, чего надо-то? Понимать, какая страница к какому объекту относится? Так возьми ods.h, доку по структуре базы на firebirdsql.org, и вперед. Вопрос только в том, зачем это надо. Вот я готов обсудить вопрос, чтобы кто-нибудь написал программулину, которая будет делать "вперёд" вместо меня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 21:04:30 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
buddenНадо понять, почему система зависла. Для этого принадлежность страницы не нужна. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 21:07:45 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
buddenнужно уметь анализировать все компоненты, в т.ч. и СУБД. не выйдет. В том смысле, что когда надо "анализировать", ну вот как мы (IBSurgeon/iBase.ru), просто берем debug билд, и смотрим, где затык, именно в отладчике. А ты просишь не просто "отладочную сборку", которую сам отлаживать не собираешься, но еще и какую-то непонятную утилиту. buddenкоторая будет делать "вперёд" вместо меня. которая заодно будет и кофе варить... Если бы БЫЛА такая утилита, уже бы давно ею все пользовались. Но ее нет, и вряд ли будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 22:23:54 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
kdv, ну ведь отладчик пользуется той инфой, к-рая уже есть в программе. Или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 23:44:15 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
budden, а может я с утра не так понял, в общем, не знаю. Чтобы отладчик мог отлаживать программу, ее компилируют с отладочной информацией. Отладочная информация позволяет сопоставить исходный код и код, выполняемый процессором, ставить точки останова, проверять значение переменных, и т.д. Кто такой отладчик в вашем понимании, и какой "инфой" и как он пользуется - я не представляю. То есть, да, отладчик пользуется информацией из программы, но вы в эти слова вкладываете какой-то свой, причем совершенно фантастический смысл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2013, 10:08:45 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
kdvbuddenkdv, ну ведь отладчик пользуется той инфой, к-рая уже есть в программе. Или нет? эту ужасную фразу можно простить, если ты никогда не отлаживал программу ни в какой среде разработки. Занимался, ничего ужасного, просто ты не понял. "Отладчик" - это средство для РУЧНОЙ отладки приложений разработчиком. Отладчик - это средство. Для ручной или нет - это уже зависит от пользователя. gdb - это ведь консольная программа с REPL, значит, можно написать для неё клиента, который будет подавать команды и интерпретировать их результаты. Я именно это и предложил рассмотреть как вариант, видимо, слишком тонко намекнул :) . Тогда (в теории) можно (попробовать) написать утилиту, которая будет использовать не модифицированную отладочную сборку. Всегда запускать серверные процессы под gdb или аттачиться по мере надобности. Но это должен делать специалист, знающий начинку FB, каковым я не являюсь, становиться не хочу и готов от этого откупаться. Я не говорю, что это просто или возможно в данном случае - я не знаю. Но это - первый вариант, к-рый я бы рассмотрел, если бы решал такую задачу сам. Правда, у меня файрбёрд под виндой и я не знаю, есть ли консольные отладчики для него, но можно ради такого дела и сменить серверную ОС. Если с одной частью вопроса понятно, перейдём ко второй. Ты предлагал взять "доку по структуре базы на firebirdsql.org". Значит ли это, что мне нужно ещё открыть отдельно файл базы и по нему шарить, или я могу получить всю нужную инфу, анализируя данные программы, не выходя из отладчика? Именно отсутствие данных в сессии gdb является причиной для невозможности написания такой программы. Хотя,с другой стороны, клиент gdb может параллельно делать и другие действия, например, открыть файл базы и шарить по нему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2013, 12:15:27 |
|
||
|
Понимание результатов fb_lock_print
|
|||
|---|---|---|---|
|
#18+
buddenзначит, можно написать для неё клиента, который будет подавать команды и интерпретировать их результаты. неужели? buddenЗначит ли это, что мне нужно ещё открыть отдельно файл базы и по нему шарить, или я могу получить всю нужную инфу, анализируя данные программы, не выходя из отладчика? в отладчике можно понять, на какой странице сервер сковырнулся. у меня попутный вопрос - вы программист? программы отлаживали? Сколько лет уже программируете? Извиняюсь, но без ответов на эти вопросы я просто не могу понять, что у вас за идея. Пока что она напоминает приделать крылья к трактору. Ну вот крылья же у него теперь есть, значит он должен взлететь. Нет? Или ближе к теме. Вот Firebird. Вот разработчики. И им говорят - у вас тут зависает. Они говорят - нам нужен дамп, лок-принт, и т.д. А вы им - не, вы лучше напишите софтину, которая вам скажет, что вот тут и здесь у вас криво, и в результате зависло. Так, примерно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2013, 12:48:05 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38126208&tid=1564097]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
173ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 186ms |
| total: | 452ms |

| 0 / 0 |
