
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
15.07.2011, 12:19
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
Набюдаю уже третью команду разработчиков, которые пишут java-код в системе довольно своеобразно. А именно - если к примеру кодят сложную бизнес-операцию, которая к примеру модифицирует несколько объектов (таблиц) в репозитарии, то делают в коде несколько объект.save в разных точках, при этом всё вместе никак не охвачено единой транзакцией. Т.е. в случаях сбоя такого алгоритма, в БД репозитария появится мусор в виде не полностью модифицированных объектов. Либо, даже если и работает алгорим безглючно, но с учётом распределённости во времени процедуры обновения всех модифицируемых данных, - получается, какоето ненулевое время в репозитарии имеем несогласованные данные (когда один такой алгоритм ещё находится в процессе модификации чего либо, а другие алгоритмы асинхронно взаимодействуют с этими данными). Причём, когда разговариваешь с разработчиками про транзакции, делают удивлённое лицо - так мол нельзя, локументум не ERP а хранилище данных, и проч.отговорки. Документщиков так учат кодить впринципе? Или они чегото не договаривают? Вопрос: а как вообще по уму в документуме должны кодиться сложные, распределённые во времени транзакции? Чтото не верится, что скольнибудь сложную многопользовательскую систему можно реализовать без begintrans...commit Поделитесь мыслями чтоли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2011, 15:58
|
|||
|---|---|---|---|
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
Под "транзакцией" в разных системах подразумеваются разные вещи. В BPM, EAI и DocFlow-системах имеется понятие, которое правильнее называть "длинная транзакция". Такая транзакция не имеет никакого отношения к ACID. Это просто некоторая взаимосвязанная последовательность действий, имеющая начало и конец. Но такая последовательность действий может длиться дни, месяцы и даже годы. СУБД тоже оперируют "транзакциями", но другого вида - короткими транзакциями. Там тоже имеется последовательность действий, но такая, которая рассматривается как единое целове и не имеет права находиться в БД как "недовыполненная" длительное время. И для таких транзакций ACID - вполне резонные требования. Каждая операция сохранения промежуточного состояния "длинной транзакции" может (и, наверное, даже должна) осуществляться в короткой ACID-транзакции. Но сама "длинная транзакция" не запускается внутри СУБД-шной транзакции, это просто ни к чему. Пример длинной транзакции: 1. Поступила заявка потенциального клиента 2. Заявка рассмотрена и произведена оценка 3. Отправлено встречное предложение клиенту 4. Получено подтверждение ... 1000. Заявка исполнена и закрыта. Между п.3 и п.4 может пройти месяц . Но сохранение в БД каждого из этих пунктов происходит в ACID-транзакции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2011, 17:22
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
ну да - имеется в виду короткая транзакция ессно (которая выполняется одним пользователем единомоментно, и подтвеждается жамканьем Save/Cancel ). Вот то что наблюдаю, что короткие транзакции не особенно стремятся реализовать (как будто пишут не систему на 500 человек-онлайн, а однопользовательскую БД). Хотелось бы разобраться применительно к документуму, как должно быть по уму (и какой функционал там в этом случае надо использовать). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.07.2011, 11:30
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
Pavel BerezinПричём, когда разговариваешь с разработчиками про транзакции, делают удивлённое лицо - так мол нельзя, локументум не ERP а хранилище данных, и проч.отговорки. Документщиков так учат кодить впринципе? Или они чегото не договаривают? Верить российским разработчикам Документума нельзя ни в чём. Могут и врать, и не знать элементарное. Не следует верить и их начальникам, потому что они пересказывают глупости разработчиков. Это самое важное, что надо знать о Документуме. Поэтому желательно самому что-то знать. Как минимум, надо прочитать книгу Content Server Fundamentals, где написано и про транзакции. По возможности надо самому посетить хотя бы курсы "Технические основы Документума". Разработчиков не учат в достаточной степени - начальство обычно не понимает, что программирование для Документума занятие сложное, и поручает ему кому попало (наблюдал это в известных фирмах). Есть курсы, и они полезные, но там объясняют самые основы для начала работы, дальше надо изучать самостоятельно. Но от разработчиков желательно, чтобы они представили справки о посещениии курсов и ешё лучше - сертификаты. Транзакции в Документуме есть, и длинные и короткие (только они так не называются). Длинные реализуются как жизненные циклы (lifecycle). Жизненный цикл это последовательность состояний объекта, состояние - согласованный набор атрибутов (параметров). Контроль согласованности осуществляется: как без программирования (заданием условий вхождения в состояние), так и с ним (отдельной процедурой жизненного цикла, написанной на Java или языке DocBasic). Вас интересовали "короткие транзакции", которые так не называются. Они связаны с блокировками (lock) объектов. Есть нескольуо уровней блокировки, на самом строгом она осуществляется и на уровне базы данных. Эти уровни: - самая слабая - метод fetch () в классе IDfPersistentObject. Не обеспечивает закрепления объекта за одним пользователем (другие могут менять), а только получение последней версии. - затем выписка (checkout(), checkin(), save(), savelock()) - это блокировка для редактирования одним пользователем, осуществляется Content Server-ом с помощью "неявной транзакции" на уровне хранилища (не базы данных) - явные транзакции, то есть запрограммированные в приложении. Они помогают добавить проверку согласованности атрибутов перед сохранинием. Осуществляются с помощью beginTransaction () в классе IDfSessionManager (посмотреть также описание "сессий" и при знании Java - документацию JavaDoc по DFC по этим классам). То, что в Документуме называется транзакциями - явные и неявные, осуществляются Content Server-ом, то есть на уровне хранилища. - блокировка на уровне СУБД (самая строгая), нужна редко, происходит если вызвать метод lock () или lockEx () класса IDfPersistentObject. Это предотвращает неудачу записи изменённого объекта если он во время редактирования изменялся ещё и автоматически Документумом. Итак, для "транзакции БД" нужно вызывать метод lockEх() внутри транзакции, начатой по beginTransaction(). Это бывает нужно редко (мне ни разу не понадобилось), но разработчики должны разбираться в методах блокировки и правильно применять нужные. Обычный признак неправильного применения блокировок - исключение вида version mismatch - в хранилище уже оказалась более новая версия объекта (определяется по автоматически назначаемому атрибуту i_vstamp, значение которого равно числу успешных сохранений изменений объекта). Другой, тоже обычный при плохом программировании - если одни атрибуты изменились, другие нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.07.2011, 11:41
|
|||
|---|---|---|---|
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
Partisan Mначальство обычно не понимает, что программирование для Документума занятие сложное, и поручает ему кому попало (наблюдал это в известных фирмах) зачем же так систему дискредитировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.07.2011, 11:55
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
iscrafm Я не "дискредитировал платформу", а сообщил техническую информацию. Зачем - тоже объяснил: недостаточная квалификация разработчиков это обстоятельство, которое надо иметь ввиду, поскольку оно может нанести большой ущерб заказчику. Дискредитируют платформу "жабабыдлокодеры" и их начальники, которые успешно руководят тем, в чём ничего не смыслят. В общем, я описал как оно есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.07.2011, 17:01
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
Спасибо за развёрнутый ответ автор- самая слабая - метод fetch () в классе IDfPersistentObject. Не обеспечивает закрепления объекта за одним пользователем (другие могут менять), а только получение последней версии. - затем выписка (checkout(), checkin(), save(), savelock()) - это блокировка для редактирования одним пользователемPartisan M, Да, это мы уже проходили - убедились что самый надёжный способ там получается монопольная блокировка через checkout-checkin, иначе совместная работа шибко шустрых пользователей с одним документом превращала его в чёрти-что. Причём разработчики нас уверяли что это дико неправильно. автор- явные транзакции, то есть запрограммированные в приложении. Они помогают добавить проверку согласованности атрибутов перед сохранинием. Осуществляются с помощью beginTransaction () в классе IDfSessionManager (посмотреть также описание "сессий" и при знании Java - документацию JavaDoc по DFC по этим классам). То, что в Документуме называется транзакциями - явные и неявные, осуществляются Content Server-ом, то есть на уровне хранилища. Вот это собственно и интересует - откопал в документации эти begintransaction, хотелось бы уточнить, там есть какието принципиальные технические ограничения на использование этого метода? Вот если к примеру дорабатываем вебморду ведения записи dm_user'a (родная уж слишком убогая) - и нужно по нажатию Save единой транзакцией поменять сразу объекты dm_user, его ACL, и несколько dm_group (например реализовать его перемещение по оргструктуре предприятия, построенной на группах) - будет ли модификация всех этиъ объектов производиться единым commit'ом ? И будет-ли транзакция изолирована от остальных (т.е. параллельно работающие процессы не подхватят ли "грязные" данные от этой транзакции)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.07.2011, 17:04
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
автор Поэтому желательно самому что-то знать. Как минимум, надо прочитать книгу Content Server Fundamentals, где написано и про транзакции. По возможности надо самому посетить хотя бы курсы "Технические основы Документума". Пока увы хватает на чтение отдельных PDF-ов, просто это не единственная система на сопровождении (и не самая главная). А что порекомендуете из курсов, и где (если вообще есть выбор) более вменяемо преподают? Есть потребность выпестовать своих специалистов, но пока процесс идёт трудно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.07.2011, 21:00
|
|||
|---|---|---|---|
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
Pavel Berezin, какого плана у вас система под управлением Документума? судя по тому, что масса людей имеют возможность редактировать один документ, то это типа общественной библиотеки, но не только для читателей и писателей? Или вы документум применяете в качестве CSV и им подобным? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.07.2011, 11:44
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
iscrafm, система документооборота ессно. Просто в начальной реализации споль и рядом применялся алгоритм сохранения карточек, который вообще не предусматривал монопольных блокировок. Из за чего случались коллизии (служба ДОУ состоит не из одного человека, плюс есть фоновые джобы которые контент цепляют). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.07.2011, 16:11
|
|||
|---|---|---|---|
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
GaryaПод "транзакцией" в разных системах подразумеваются разные вещи. В BPM, EAI и DocFlow-системах имеется понятие, которое правильнее называть "длинная транзакция". Такая транзакция не имеет никакого отношения к ACID. Это просто некоторая взаимосвязанная последовательность действий, имеющая начало и конец. Но такая последовательность действий может длиться дни, месяцы и даже годы. СУБД тоже оперируют "транзакциями", но другого вида - короткими транзакциями. Там тоже имеется последовательность действий, но такая, которая рассматривается как единое целове и не имеет права находиться в БД как "недовыполненная" длительное время. И для таких транзакций ACID - вполне резонные требования. Каждая операция сохранения промежуточного состояния "длинной транзакции" может (и, наверное, даже должна) осуществляться в короткой ACID-транзакции. Но сама "длинная транзакция" не запускается внутри СУБД-шной транзакции, это просто ни к чему. Пример длинной транзакции: 1. Поступила заявка потенциального клиента 2. Заявка рассмотрена и произведена оценка 3. Отправлено встречное предложение клиенту 4. Получено подтверждение ... 1000. Заявка исполнена и закрыта. Между п.3 и п.4 может пройти месяц . Но сохранение в БД каждого из этих пунктов происходит в ACID-транзакции. а у такой длинной транзакции могут быть откаты (роллбеки) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.07.2011, 17:54
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
pilot911а у такой длинной транзакции могут быть откаты (роллбеки) ? Если в workflow не предусмотрено, то нет. К тому же Documentum по дефолту логирует все действия пользователя и переходы между состояниями. Т.е. если будешь документ гонять по кругу (отправлять на подписание -> получать отказ -> снова отправлять), то все шаги останутся в истории. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.07.2011, 22:32
|
|||
|---|---|---|---|
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
pilot911а у такой длинной транзакции могут быть откаты (роллбеки) ?В общем случае могут. При условии, что разработчик транзакции разработал специальную операцию компенсации ранее произведенных действий. Нотация BPMN содержит специальную конструкцию на такой случай. По приведенной ниже картинке к текущей операции стрелкой привязывается компенсирующее действие, которое автоматически отработает если возникнет откат длинной транзакции. Если транзакция состоит из множества действий, то компенсирующие действия всех операций будут выполнены в обратном порядке (то есть, сначала компенсирующее действие последней выполненной операции, затем предпоследней и т.д.). Однако, компенсирующие действия должны быть описаны явно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.07.2011, 23:21
|
|||
|---|---|---|---|
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
спасибо большое, очень интересно по сути ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.07.2011, 11:25
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
Pavel BerezinНабюдаю уже третью команду разработчиков, которые пишут java-код в системе довольно своеобразно. А именно - если к примеру кодят сложную бизнес-операцию, которая к примеру модифицирует несколько объектов (таблиц) в репозитарии, то делают в коде несколько объект.save в разных точках, при этом всё вместе никак не охвачено единой транзакцией. Т.е. в случаях сбоя такого алгоритма, в БД репозитария появится мусор в виде не полностью модифицированных объектов. Либо, даже если и работает алгорим безглючно, но с учётом распределённости во времени процедуры обновения всех модифицируемых данных, - получается, какоето ненулевое время в репозитарии имеем несогласованные данные (когда один такой алгоритм ещё находится в процессе модификации чего либо, а другие алгоритмы асинхронно взаимодействуют с этими данными). Причём, когда разговариваешь с разработчиками про транзакции, делают удивлённое лицо - так мол нельзя, локументум не ERP а хранилище данных, и проч.отговорки. Документщиков так учат кодить впринципе? Или они чегото не договаривают? Вопрос: а как вообще по уму в документуме должны кодиться сложные, распределённые во времени транзакции? Чтото не верится, что скольнибудь сложную многопользовательскую систему можно реализовать без begintrans...commit Поделитесь мыслями чтоли. Добрый день Павел, Прежде всего Ваш вопрос звучит неверно: "Есть ли там (в документуме) понятие транзакции БД?", потому что Дукументум прежде всего не БД. Эта харатерная особенность системы и повзоляет ответить на все Ваши вопросы. 1) При работе с типами, объектами и прочими приблудами документа транзакции в БД - это внутренне дело Документума, и лезть туда дело не благодарное, да и бессмысленное. 2) Со своим скудным интернетом, вторым в поиске по запросу транзакции в Documentum я нашел следующее: Because the session manager handles sessions with more than one repository, it supports a transaction mechanism that encompasses interactions with more than one repository. It still relies on the transaction mechanism of each repository’s underlying relational database. Nested transactions are not supported. Это из манула Документума. Осмыслим все выше сказанное. Транзакции документума были созданы не для того чтобы обрадовать Павла и Партизана, а для того чтобы была возможность взаимодействовать с несколькими репозиториями. В этом случае транзакционность - действительно нужная вещь. 3) Что касается "Мусора" Документума - это такая же обыкновенная вещь как "поесть" или сказать, что Верить российским разработчикам Документума нельзя ни в чём. Могут и врать, и не знать элементарное". Мусор документум не просто создает, - он умеет с ним работать, и ему этот мусор никак не мешает. 4) Павел, будьте любезны, опишите этот самый "мусор в виде не полностью модифицированных объектов."? 5) Партизан, будьте любезны, поведайте нам, кем вы работаете, и за что так не любите разработчиков Документума? 6) Павел, может я плохо улавливаю, но где эта тонкая нить связи между "Вот то что наблюдаю, что короткие транзакции не особенно стремятся реализовать" и "(как будто пишут не систему на 500 человек-онлайн, а однопользовательскую БД). " Подитожу все вышесказанное: Павел, транзакции в том виде, в коротом вы хотите их видеть, в документуме отсуствуют Партизан, будьте милостливы и, вместе с Павлом, если не верите разработчикам, используйте Google Всем спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.07.2011, 11:51
|
|||
|---|---|---|---|
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
JeTaime, При чем тут "транзакция" и "БД"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.07.2011, 11:58
|
|||
|---|---|---|---|
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
JeTaimeВсем спасибо зарегистрировался, всех приструнил, написал много ненужных букв, сказал всем спасибо и испарился ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.07.2011, 14:59
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
iscrafmJeTaimeВсем спасибо зарегистрировался, всех приструнил, написал много ненужных букв, сказал всем спасибо и испарился Я здесь, если что готов ответить по всей строгости закона :). А какие буковки лишними были? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.07.2011, 14:59
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
ViPRosJeTaime, При чем тут "транзакция" и "БД"? Можно вопрос поточнее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.07.2011, 09:58
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
JeTaimePavel BerezinНабюдаю уже третью команду разработчиков, которые пишут java-код в системе довольно своеобразно. А именно - если к примеру кодят сложную бизнес-операцию, которая к примеру модифицирует несколько объектов (таблиц) в репозитарии, то делают в коде несколько объект.save в разных точках, при этом всё вместе никак не охвачено единой транзакцией. Прежде всего Ваш вопрос звучит неверно: "Есть ли там (в документуме) понятие транзакции БД?", потому что Дукументум прежде всего не БД. Эта харатерная особенность системы и повзоляет ответить на все Ваши вопросы. 1) При работе с типами, объектами и прочими приблудами документа транзакции в БД - это внутренне дело Документума, и лезть туда дело не благодарное, да и бессмысленное. ...... Подитожу все вышесказанное: Павел, транзакции в том виде, в коротом вы хотите их видеть, в документуме отсуствуют JeTaime, Если бы внедрения Documentum заключались только в конфигурировании, то все, что вы говорите было бы верно. Включая то, что раз документум плодит "мусор" в БД, пусть сам и разбирается. Но! Я не знаю еще ни одного крупного внедрения в России без кастомизации. Разработчики лепят свои типы данных (ака таблицы в БД) и начинают с ними работать. И очень редко думают о транзакционности. Живой пример из практики, столкнулся несколько недель назад. Разбирался с кодом, доставшимся от интегратора. Пользователь создает связанный документ. Нажимает соотвествующую кнопку. В БД сразу создается связь R (потомок dm_relation) и документ D(потомок dm_document). Если пользователь нажмет кнопку "Отмена", то D удаляется, а связь R разработчики удалять забывают. Вот и мусор в БД. JeTaime3) Что касается "Мусора" Документума - это такая же обыкновенная вещь как "поесть" или сказать, что Верить российским разработчикам Документума нельзя ни в чём. Могут и врать, и не знать элементарное". Мусор документум не просто создает, - он умеет с ним работать, и ему этот мусор никак не мешает. ....... Зря вы так иделизируете Documentum. Типа он умеет работать с "мусором". Все его умение работать с мусором перекладывается на плечи БД. Саи по себе Content Server - это ORM framework с DSL (Domain Specific Language). При росте объемов с производительностью БД начинается беда. В том числе из-за "мусора" и ненормализованной структуры БД. Зря что ли в Documentum 6.5 ввели shareable types и lightweight types? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.08.2011, 15:43
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
авторПрежде всего Ваш вопрос звучит неверно: "Есть ли там (в документуме) понятие транзакции БД?", потому что Дукументум прежде всего не БД. Странно - РДБМС есть, объектная модель накрученная на реляционных таблицах есть, содержимое таблиц (объекты) есть, .... и прежде всего не БД. Любая система учёта чего-либо это прежде всего БД, а потом уже всё остальное, что вокруг неё обвязано. И то что она трёхзвенная, никак не должно влиять на наличие/отсутствие транзакций. авторопишите этот самый "мусор в виде не полностью модифицированных объектов."? Ну я уже вкратце описал выше пример. Вот допустим - бизнес-транзакция (бизнес-операция если хотите) ведения сотрудников в оргструктуре: представляет собой последовательность вебстраничек: сначала в свойства dm_user'а, оттуда (если хотим по ссылке) в выбор dm_group из списка имеющихся (типа дерево оргструктуры), оттуда, обратно в свойства dm_user'а (с присвоением его в выбранную dm_group). И внизу Save/Cancel. Вот документщики упорно пытаются разбить эту бизнес транзакцию на отдельные изолированные транзакции БД - т.е. я допустим поменял у сотрудника телефон, переприсвоил его оргструктуре (ну допустим моделируем реальную ситуацию, сотрудника повысили с пересаживанием в другое кресло), а потом ***** - нажал Cancel (ну или не нажал, отвлекли меня, так я и остался сидеть на первом экране транзакции). Вот те реализации, что видел - это dm_user со своим save, а внутри вложенное присвоение dm_group со своим save. Т.е. провалился в оргструктуру, вернулся, а данные (присвоение) уже легло в БД - другие пользователи увидели что сотрудника переместили в оргструктуре (а с каких щей, я ведь Save пока не нажал, я ещё операцию полностью не завершил...думаю типа). Вот про такие "транзакции" собственно и речь. Охватить единым begintrans-commit-rollbak модификацию нескольких объектов репозитария, чтобы сторонние пользователи/джобы/процессы видели только согласованное состояние БД - либо ДО моей бизнес-операции, либо ПОСЛЕ. Но никак не "в процессе". Модератор: Ненормативная лексика замаскирована. Предупреждение автору. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.08.2011, 18:12
|
|||
|---|---|---|---|
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
смешались в кучу кони, люди ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.08.2011, 15:35
|
|||
|---|---|---|---|
|
|||
Documentum - есть ли там понятие "транзакция БД" ? |
|||
|
#18+
обходились вышеописанным beginTransaction() и т.д. Только была одна загвоздка, логика DFC не позволяла вносить операции связанные с жизненными циклами (attach, detach,promote, demote) в транзакцию. Выкидывался специфический ексепшн. как поняли такие операции не могут откатиться в случае чего. По вышеуказанным проблемам с мусором в виде объектов типа dm_relation и т.д. Изучайте получше Документум, есть такая стандартная джоба Consistency checker. В репортах она показывает объекты связи которых нарушены. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=29&tablet=1&tid=1526230]: |
0ms |
get settings: |
10ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
172ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 285ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...