SQL Server ed ALM su database


Il blog di Alessandro Alpi
Archivio Posts
Anno 2018

Anno 2017

Anno 2016

Anno 2015

Anno 2014

Anno 2013

Anno 2012

Anno 2011

Anno 2010

Anno 2009

Anno 2008

Anno 2007

Anno 2006

I Checkpoint - Workaround Foreach Loop

In questo mio post, definivo le caratteristiche dei checkpoint ed un'introduzione alla funzionalità di SSIS.

Vi sono casi particolari, come quello indicato in questo thread su microsoft.public.it.sql, che necessitano di alcuni workaround per portare dalla propria parte lo svantaggio che il For each Loop container ha con i checkpoint .  Nel thread indicato, vi è una semplice richiesta. Ottenere un Sequence container che, in caso di errore, non rispetti le semplici condizioni di checkpoint e che quindi si riavvii per intero. Comportandosi naturalmente, al contrario, il task che ha generato l'errore all'interno del contenitore è quello che verrà eseguito per primo al riavvio, ignorando i precedenti.

Il workaround è semplice:

- impostare la proprietà FailPackageOnFailure a false in TUTTI i task interni ai sequence container
- Aggiungere in ogni sequence container un Foreach Loop container
- Impostare il Foreach Loop container con l'enumeratore "Item"
- Aggiungere sotto una colonna di tipo intero ad esempio (un item con un qualunque valore)
- Impostare la proprietà FailPackageOnFailure del Foreach Loop a true
- Spostare tutti i task che erano nel sequence container all'interno del Foreach Loop container
- Impostare la proprietà FailParentOnFailure di ogni task (di primo livello) interno al Loop a true
- Imposta la proprietà CheckpointUsage del package a IfExists e la FailPackageOnFailure del package a false (con CheckpointFileName = "path/file.chk" e SaveCheckpoints = true)

La chiave è quella di sfruttare al meglio lo svantaggio del foreach

In materia di checkpoint (e non solo), consiglio un video di Brian Knight, su jumpstartTV. Non fatevi ingannare dalla signora prima del video di Brian, è solo pubblicità; non c'entra con SQL Server

Stay tuned!
Categoria: SSIS 2005 tips
martedì, 18 mar 2008 Ore. 21.42
Statistiche
  • Views Home Page: 599.571
  • Views Posts: 1.065.563
  • Views Gallerie: 637.597
  • n° Posts: 484
  • n° Commenti: 273



















Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003