|
|
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
ПарамонЕсли можно работать с одной таблицей, не думая о том, где остались ключи. А чего о них думать-то? Они работают совершенно самостоятельно. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 12:15 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Уменьшение количества участвующих в транзакции таблиц имеет, конечно, некоторые плюсы - меньше надо предпринимать усилий для борьбы с дедлоками. Другой вопрос, что это имхо соображение третьестепенной важности, и всерьез курочить архитектуру, опираяюсь на него - не самое разумное решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 12:20 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
С другой стороны это плюс для целостности, если удалять пользователя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 12:36 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинУменьшение количества участвующих в транзакции таблиц имеет, конечно, некоторые плюсы - меньше надо предпринимать усилий для борьбы с дедлоками. Это на каком сервере возникают дедлоки на referenced таблицах? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 12:42 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
On 07/24/2012 01:20 PM, Кот Матроскин wrote: > Уменьшение количества участвующих в транзакции таблиц имеет, конечно, некоторые > плюсы - меньше надо предпринимать усилий для борьбы с дедлоками. От сказанул так сказанул... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 13:00 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
MasterZiv, Вы считаете что зависимость обратная? Или что ее нет совсем? Dimitry Sibiryakov Как Ваш вопрос связан с тем что я сказал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 14:19 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинКак Ваш вопрос связан с тем что я сказал? Ни в одном известном мне сервере дедлоки не зависят от количества задействованных таблиц. Вот мне и стало интересно - что же за зверушку Вы используете. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 14:52 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Если транзакция изменяет один и ровно один объект - она не может попасть в дедлок (ну не считая глюков с блокировкой страниц индексов, которые относятся к неудачной технической реализации). А вот если она изменяет 2 обьекта - уже становится возможной ситуация, когда обьект А успели изменить и заблокировали, а обьект Б изменить не можем, потому что на нем висит блокировка другой транзакции, которая ждет наш обьект А. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 15:09 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Кот Матроскинесли она изменяет 2 обьекта - уже становится возможной ситуация А, MS SQL... Ну так бы и сказал сразу, чего было партизанить... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 15:20 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
On 07/24/2012 03:19 PM, Кот Матроскин wrote: > MasterZiv, > > Вы считаете что зависимость обратная? Или что ее нет совсем? Да, обратная. Или нет совсем. Скажем так, если грамотно написано приложение, то нет совсем. Если не очень, то обратная. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 21:26 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
On 07/24/2012 04:09 PM, Кот Матроскин wrote: > Если транзакция изменяет один и ровно один объект - она не может попасть в дедлок > (ну не считая глюков с блокировкой страниц индексов, которые относятся к > неудачной технической реализации). "ОБЪЕКТ" и "ТАБЛИЦА" как соотносятся по-твоему ? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2012, 21:27 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
MasterZiv, в обсуждаемом случае "Обьект" и "таблица" соотносятся один к одному Удаление картинки затронет и таблицу пользователей Вы не стали читать обсуждение, а прочли только последнюю фразу? Бывает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 12:06 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
> в обсуждаемом случае "Обьект" и "таблица" соотносятся один к одному Нет, они никак не соотносятся. Под "объект" тут надо понимать то, на что накладывается блокировка. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 13:03 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
MasterZiv Под "объект" тут надо понимать то, на что накладывается блокировка. И в случае ссылки на картинку из таблицы пользователей при удалении картинки будет заблокировано два обьекта в двух таблицах, а в случае дополнительного поля в таблице картинок - один обьект в одной таблице. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 13:34 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинИ в случае ссылки на картинку из таблицы пользователей при удалении картинки будет заблокировано два обьекта в двух таблицах Не будет. С чего бы им блокироваться?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 13:58 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Возьмите блокировочный сервер, откройте транзакцию, измените в ней запись в одной таблице и удалите запись в другой и, не закрывая транзакцию, посмотрите, блокирует ли она что-либо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 14:37 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинВозьмите блокировочный сервер, откройте транзакцию, измените в ней запись в одной таблице и удалите запись в другой и, не закрывая транзакцию, посмотрите, блокирует ли она что-либо. Во-первых, где ж я его возьму, блокировочник этот? Нынче они практически вымерший вид. Во-вторых, ты ранее говорил не о конфликте операций над одной записью, а о блокировке записи о пользователе, над которой вообще никаких операций не производится. Не надо мутировать мыслью по древу. Есть таблица пользователей, есть таблица картинок. Одна ссылается на другую и наоборот. Зачем запись таблицы пользователей будет блокироваться при удалении записи из таблицы картинок? Какая блокировка будет накладываться? Это так, вопросы на засыпку... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 14:58 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovВо-первых, где ж я его возьму, блокировочник этот? Нынче они практически вымерший вид. Вы хотите обсуждать проблему дедлоков на примере неблокировочных серверов? Толково. Dimitry Sibiryakov Во-вторых, ты ранее говорил не о конфликте операций над одной записью, а о блокировке записи о пользователе, над которой вообще никаких операций не производится. Не надо мутировать мыслью по древу. ??? На таблицах "Картинка" и "Пользователь" отношение master-detail. При удалении master-записи над detail, по-Вашему, точно не надо производить никаких операций? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 15:44 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинВы хотите обсуждать проблему дедлоков на примере неблокировочных серверов? Толково. А почему нет? Там они существуют тоже. Кот Матроскин??? На таблицах "Картинка" и "Пользователь" отношение master-detail. При удалении master-записи над detail, по-Вашему, точно не надо производить никаких операций? Точно не надо. Достаточно проверить существование detail-записей и удаление мастера - обломить. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 16:03 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
> Возьмите блокировочный сервер, откройте транзакцию, измените в ней запись в > одной таблице и удалите запись в другой и, не закрывая транзакцию, посмотрите, > блокирует ли она что-либо. Для этого не обязательно блокировочный сервер брать. Так любой должен действовать (кроме может быть InterBase). Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 17:47 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
On 07/25/2012 05:03 PM, Dimitry Sibiryakov wrote: Вам не кажется, что вы слегка уклонились от предмета разговора ? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 17:48 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
MasterZivВам не кажется, что вы слегка уклонились от предмета разговора ? Мне кажется, что у этого разговора вообще нет предмета. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 18:01 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovТочно не надо. Достаточно проверить существование detail-записей и удаление мастера - обломить. Это, вообще говоря, зависит от бизнес-логики. Хотя, должен признать, я кажется действительно выразился несколько двусмысленно - надо было сказать не "... зависит от числа участвующих в транзакции таблиц", а "...зависит от числа изменяемых в транзакции таблиц" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 18:25 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинЭто, вообще говоря, зависит от бизнес-логики. Хооо... А я-то всегда думал, что от опции on delete у ключа... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 18:30 |
|
||
|
Выделение одной записи
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovКот МатроскинЭто, вообще говоря, зависит от бизнес-логики. Хооо... А я-то всегда думал, что от опции on delete у ключа... Вряд ли Вы так думали всегда - еще пост назад Вы рассказывали, что надо "обламывать удаление мастера" при наличии detail-а без вариантов. Вообще от Вас какие-то странные реплики исходят в этой дискуссии - то вы говорите "Не знаю сервера, который бы так себя вел", то "Я так и знал - MSSQL". То "Обламывать удаление мастера при наличии detail'а " , то "зависит от опции у ключа". Вы можете определиться, с чем вы спорите/что доказываете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2012, 18:47 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=37892689&tid=1541601]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
144ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 432ms |

| 0 / 0 |
