Студопедия

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника



Пример восстановления после сбоя.




Читайте также:
  1. I. Африка после окончания Первой мировой войны
  2. I. По последствиям
  3. II. Средства, применяемые при лечении заболеваний, вызванных условно-патогенными грибами (например, при кандидамикозе)
  4. II. Экономические последствия безработицы
  5. III. Примерная структура фронтального занятия.
  6. V. Сравнительный анализ НДС расчетных схем и пример расчета.
  7. VI. Последовательная и предсказуемая внешняя политика – продвижение национальных интересов и укрепление региональной и глобальной безопасности
  8. Автокорреляция остатков модели регрессии. Последствия автокорреляции. Автокорреляционная функция
  9. Автоматическое изменение формата ячейки после ввода данных
  10. Аграрная политика конца 1920-х – начала 1930-х годов. Насильственная сплошная коллективизация, ее истоки и последствия для страны.

Здесь только докат, отката нет, т.к. нет незавершенных транзакций.

Перезапись «грязных» блоков ОСБ на диск производится в следующей последовательности:

  1. Сначала перезаписывается буфер сегмента отката.
  2. Далее перезаписывается буфер журнала транзакций.
  3. В конце перезаписывается буфер БД.

 

 

Лекция 28

Обработка тупиковых ситуаций

Предположим, что процедура «проводка» (см. предыдущую лекцию) реализована несколько по-другому:

 

Проводка (счёт1, счёт2, сумма)

2 оператора.

 

UPDATE … счёт1

Пример: UPDATE счёт SET остаток = остаток - сумма

WHERE номер_счёта=счёт1;

:

UPDATE … счёт2

:

COMMIT

 

Пусть к этой процедуре одновременно обращаются две рабочие станции

WS1WS2

Проводка (100, 1001, 300) проводка (1001, 100, 150)

процесс 1 процесс 2

UPDATE … 100 UPDATE … 1001

(соответствующая запись (запись с этим номером счёта

блокируется до конца транзакции, также блокируется до COMMIT)

т.е. до оператора COMMIT)

:

:

UPDATE … 1001 UPDATE … 100

(ждёт разблокировки записи (процесс 2 приостанавливается и

процессом 2) ожидает разблокировки со стороны

процесса 1)

 

Возникает тупиковая ситуация.

СУБД распознаёт такую ситуацию, и какой-либо процесс аварийно завершается. Соответствующая программа получит код возврата и должна выполнить одно из следующих действий:

  1. Либо выполнить ROLLBACK (выполняется откат транзакции, и записи разблокируются);
  2. Задача очень важная, и её нельзя завершить. Здесь должен быть предусмотрен вывод сообщений оператору с указанием снять задачу, которая мешает выполнению данной задачи, далее по реакции оператора продолжить выполнение задачи.

 


Дата добавления: 2015-04-21; просмотров: 6; Нарушение авторских прав







lektsii.com - Лекции.Ком - 2014-2021 год. (0.022 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты