Текущее время: Пн, июн 30 2025, 02:05

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ! Прежде чем задавать вопрос, ознакомьтесь со ссылками ниже:

Вопросы по отличиям версий SAP, Add-On, EHP - сюда
Вопросы по SAP Front End (SAPlogon, SAPgui, guiXT и т.д.) - сюда
Вопросы по LSMW - сюда
Вопросы по архивации в SAP - сюда
Вопросы по SAP GRC - сюда
Вопросы по SAP Business Workplace (почте SAP) и SAP Office - сюда
Вопросы по miniSAP (SAP mini basis) - сюда
Вопросы по SAP HANA - сюда
Вопросы по лицензированию продуктов SAP - сюда



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: А что если убить процесс фонового обновления VB ?
СообщениеДобавлено: Пн, ноя 24 2014, 10:46 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, янв 14 2013, 10:37
Сообщения: 795
Пол: Мужской
Добрый день! Коллеги, у нас тут возник спор, можно ли получить неконсистентность базы, если убить во время работы один из процессов VB ? Или Oracle сделает свое дело правильно ?
Как вы считаете ? Спасибо.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: А что если убить процесс фонового обновления VB ?
СообщениеДобавлено: Пн, ноя 24 2014, 10:54 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 11 2008, 09:41
Сообщения: 340
Пол: Мужской
RikoNw написал:
Добрый день! Коллеги, у нас тут возник спор, можно ли получить неконсистентность базы, если убить во время работы один из процессов VB ? Или Oracle сделает свое дело правильно ?
Как вы считаете ? Спасибо.

Неконсистентность БД, вы получите выдернув вилку шнура питания в момент записи изменений на диск, а чтобы не полемизировать, почитайте Oracle Concepts. :rtfm:

_________________
SAP Basis, SAP Security Audit/Pentest, РФ, Москва


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: А что если убить процесс фонового обновления VB ?  Тема решена
СообщениеДобавлено: Пн, ноя 24 2014, 13:47 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, сен 16 2004, 17:10
Сообщения: 2229
Откуда: Moscow, кажется...
Пол: Мужской
Главное не забывать, что консистентность базы на уровне СУБД и на уровне SAP'а - это разные вещи.
И консистентность одного никак не гарантирует консистентности другого.
Убивая VB можно получить неконсистентность на уровне SAP'а. Если после убиения невинного процесса остановить систему.

_________________
Я бы хотел поглядеть на эффективную армию, состоящую из эффективных менеджеров.
BRGDS,
Aleks Изображение


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: А что если убить процесс фонового обновления VB ?
СообщениеДобавлено: Пн, ноя 24 2014, 14:11 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, янв 14 2013, 10:37
Сообщения: 795
Пол: Мужской
Вот я про нее-то и имел в виду, только не написал. Например, идет обновление данных, 4 коммита, из которых, допустим, сделается 3. На уровне БД все ок, СУБД отработало, откатило незакомиченную транзакцию,
а на уровне SAP - имеем, допустим 4 таблицы, в 3х из которых данные новые, а в четвертой - старые :D Спасибо, avlag !


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: А что если убить процесс фонового обновления VB ?
СообщениеДобавлено: Вс, ноя 30 2014, 12:36 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
RikoNw написал:
а на уровне SAP - имеем, допустим 4 таблицы, в 3х из которых данные новые, а в четвертой - старые :D Спасибо, avlag !
Так не должно быть - для отдельно взятого LUW все приоритетные (v1) модули обновления отрабатывают в рамках одного процесса обновления и в рамках одной транзакции БД. Прибьете процесс - транзакция откатится.
Здесь возможна неконсистентность если у программиста руки не с того места - например часть обновлений делает в программе напрямую, а часть - через модули обновления. Но это уже ошибка программиста

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: А что если убить процесс фонового обновления VB ?
СообщениеДобавлено: Вс, ноя 30 2014, 17:38 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
RikoNw написал:
Вот я про нее-то и имел в виду, только не написал. Например, идет обновление данных, 4 коммита, из которых, допустим, сделается 3. На уровне БД все ок, СУБД отработало, откатило незакомиченную транзакцию,
а на уровне SAP - имеем, допустим 4 таблицы, в 3х из которых данные новые, а в четвертой - старые :D Спасибо, avlag !


Вы очень мутно излагаете пример. Если понимать буквально то, что вы написали, то есть след. вопрос:
Обновление данных, 4 коммита? Про какие коммиты идет речь и причем тут VB? Если у вас реализовано обновление IN UPDATE TASK (собствено они и яляются теми VB процессами), то гарантировано, что все что вы засунули в 1 LUW( то что между предыдущим COMMIT WORK\ROLLBACK WORK и текущим COMMIT WORK) будет являться транзакцией, и будет работать по принципу "все или ничего".
Implicit commit (возникают при показе экрана, вызове RFC и проч) на выполнение ФМ IN UPDATE TASK влияния не оказывают. Вызывать явно commit внутри модуля IN UPDATE TASK, а так же выполнять действия, ведущие к implicit commit, нельзя.
Прочитайте хелп по LUW, там все достаточно хорошо разжевано. Можно еще и курс BC414 глянуть.
Ну а если вас они не убеждают - можете всегда провести эксперимент: сделали в ФМ сперва изменение в 1 таблице, потом повесили что-то, что долго выполняется и - оборвали процесс в sm50.

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: А что если убить процесс фонового обновления VB ?
СообщениеДобавлено: Пн, дек 01 2014, 09:21 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, янв 14 2013, 10:37
Сообщения: 795
Пол: Мужской
Вот это поворот :D Спасибо вам за детальное объяснение :pivo:


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB