Транзакции служб SSIS: создает ли опция «Поддерживаемые» новую транзакцию, если она не существует? - PullRequest
1 голос
/ 09 мая 2019

Required начинает новую транзакцию, а Supported присоединяется к существующей транзакции.

Однако, если транзакция еще не существует, тогда опция Supported создает новую транзакцию?

Эта ссылка MSDN предполагает, что это не так; где, как это учебное видео Microsoft в 36:36 говорит, что оно делает.

1 Ответ

2 голосов
/ 09 мая 2019

Документация msdn и видео согласованы

  • Обязательно Сделайте транзакцию
  • Поддерживается Зачисление в доступную транзакцию
  • NotSupported Ignore anyдоступная транзакция

На 36-й минуте видео обсуждается Контрольные точки SSIS , что больше похоже на закладку для пакета.Они записывают последний выполненный шаг для пробега.Для всех, кроме самых тривиальных пакетов, я советую не использовать контрольные точки служб SSIS, поскольку они ненадежны, ненадежны и опасны.

Вместо этого проектируйте свои пакеты с учетом возможности перезапуска.Задача X терпит неудачу - как ваш пакет справится с этим, если он будет перезапущен?Это может убрать любую висящую / незавершенную работу?Может ли он идентифицировать выполненную работу и пропустить / не выполнять работу?

В комментариях указывается

Слайд на 36:36 гласит: «Поддерживается присоединение к существующей транзакции илиначинается новый ".Так это правильно или нет?

Incorrect slide

Слайд неправильный.Если вы не верите людям, написавшим документацию, прочитайте всю эту тему в Интернете, и вы обнаружите, что все говорят то же самое.Либо этот ютубер - ученый, либо они не правы.Вы можете оценить правдивость моего ответа и всех остальных, запустив координатор распределенных транзакций, DTC и наблюдая, как пакет работает на уровнях Поддерживаемые и Требуемые транзакции.Вы сможете заметить, что DTC выполняет работу в соответствии с Обязательным, и ничего в Поддерживаемых / Не поддерживаемых

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...