Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
4.1.10 Новые правила блокировки - караул!!!! (Marat_L) 09/03/2005 - 13:40:51
      Re: Забыл уточнить - таблицы InnoDB (Marat_L) 09/03/2005 - 13:51:28
      Re: Забыл уточнить - таблицы InnoDB (Dinky) 09/03/2005 - 19:23:56
      Re: Неточно выразился (Marat_L) 10/03/2005 - 08:34:39
      Re: да уж (Dinky) 10/03/2005 - 18:37:00
      Re: да уж (Віталій) 10/03/2005 - 20:34:43
      Re: Поддерживаю (Валентин) 14/03/2005 - 10:30:06
      Re: Поддерживаю (Dinky) 14/03/2005 - 18:16:26
      Re: А что там в change-list-e пишут? (Marat_L) 15/03/2005 - 09:55:46
      Re: А что там в change-list-e пишут? (Dinky) 15/03/2005 - 19:08:53

> Original message text:
> From: Marat_L - 09/03/2005 - 13:40:51
> Subject:4.1.10 Новые правила блокировки - караул!!!!
> -----------------
> На 4.1.9
>
> begin;
> create temporary table aaa
> select * from ххх where something=YYY;
>
> Не вызывало блокировок на таблице ххх. И было хорошо :)
>
> А теперь на 4.1.10 создается совместная блокировка!!!
> Что делать, если у меня половина аналитики идет с временными таблицами, которая иногда вызывается внутри транзакции - и тогда всем приходит вешалка !!!
>
> Можно, наверное, постараться сложный отчет завернуть в один охрененный вложенный запрос - наверное так и придеться :(
>


From: Marat_L - 10/03/2005 - 08:34:39
Subject:Неточно выразился
-----------------
У меня относительно долгие транзакции.

Транзакция открывается при открытии документа и продолжается до его закрытия. Чтобы транзакции по минимуму сталкивались я стараюсь делать минимум блокировок внутри транзакции.

Во время работы с документом иногда бывают нужны аналитические сводки. Они могут быть весьма непростыми и при вычислении их иногда приходится создавать промежуточные временные таблицы. При этом используются CREATE...SELECT или INSERT...SELECT.

Однако теперь (в 4.1.10)эти команды создают массу блокировок (совместных/не эксклюзивных - таких же как бывают при использовании LOCK IN SHARE MODE). В результате участились деадлоки и просто локи.

Можно ли от них избавиться?

Я пока нашел лишь два выхода -

1) Откатить версию до 4.1.9, и никогда в жизни больше не повышать версию.
2) Заменить в аналитике расчеты с использованием временных таблиц на вложенные запросы. Это возможно - получаются такие монстры-запросы, но не нравится мне это.


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
20807



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |