sql server - SSIS DelayValidation randomly not working (Flatfile Connection Manager with Expression) -


have ever had weird behavior in ssis 2008, delayvalidation on flatfile connection manager randomly not working?


here scenario struggeling on ssis 2008 (non r2):

  • my package covers import of 30 different *.csv flat files database

  • csv files delivered each day dynamically created folder (d:\datadelivery\deliveryid_<generateddeliveryid>)
    (e.g. "d:\datadelivery\deliveryid_73\", "d:\datadelivery\deliveryid_74\", ..)
    ==> here csv files imported via ssis

  • the delivery id current import determined stored proc @ beginning of ssis package (stored ssis variable "ideliveryid")

  • based on determined delivery id build complete import path using variable called "simportpath" expression (evaluateasexpression=true):
    "d:\datadelivery\deliveryid_"+ (dt_wstr, 1252)@[user::ideliveryid] +"\"

..

  • the generated import path used in expression connection property of each flatfile connection manager, e.g.:

    • @[user::simportpath] + "filea.csv"
      (expression connection property in connection manager a)
    • @[user::simportpath] + "fileb.csv"
      (expression connection property in connection manager b)
    • @[user::simportpath] + "filec.csv"
      (expression connection property in connection manager c)
  • the delayvalidation property of each connection manager set true!!!

  • so delivery id 73 connection properties of flatfile connection managers
    should @ runtime resolve to:
    d:\datadelivery\deliveryid_73\filea.csv
    d:\datadelivery\deliveryid_73\fileb.csv
    d:\datadelivery\deliveryid_73\filec.csv

but happens right in reality:

  • when running in visual studio runs fine intended
  • when running in production via sql server agent, following happens:
    • sometimes package runs fine (all files imported)
    • sometimes filea imported correctly while in same process fileb stops message "cannot open datafile d:\datadelivery\deliveryid_0\fileb.csv"
      (error in pre-execute phase)
      => see delivery id 0 here => expression not resolving
    • sometimes fileb or filec imported correctly while in same process filea stops message "cannot open datafile d:\datadelivery\deliveryid_0\filea.csv"
      (error in pre-execute phase) => see same error

==> in cases generated path (variable simportpath) resolves correctly (i logging this)
==> seems delayvalidation randomly working of connection managers while not working others ==> tried set delayvalidation=true whole package single tasks , containers ..still same behaviour have ever experienced such behaviour? if yes, how did deal this?

thanks lot suggestions.
jens


Comments

Popular posts from this blog

basic authentication with http post params android -

vb.net - Virtual Keyboard commands -

css - Firefox for ubuntu renders wrong colors -