ADF Wait Activity Wait Time Property is Now Dynamic

I am excited to see the “Wait time in seconds” property for the Azure Data Factory Wait activity is now dynamic. I admit: It doesn’t take much to excite me these days:

“Why Do You Like This So Much, Andy?”

I’m glad you asked! I deliver Azure Data Factory (ADF) training for Enterprise Data & Analytics. The Wait activity is a good example to share with people just getting started with ADF because the activity has a small set of properties:

  • Name
  • Description
  • Wait time in seconds

An early demo in training involves adding a Wait activity to the pipeline and configuring the Name, Description, and Wait time in seconds properties.

Pro tip: If you are building demos for a presentation of any sort, demos that hold the attention of the audience are better than those that do not. As a presenter, if you can build on previous demos – walking some solution from zero to some functionality – the audience remains more engaged. Building on previous demos also reinforces knowledge shared in the previous demos, and adds credence to the current demo.

It is for this very reason that I requested this property be made dynamic. Is my request responsible for this change? Maybe. The truth is: I don’t care! I appreciate the ADF team adding this feature!

“How Do You Know This Property is Dynamic, Andy?”

Wow. You are on fire with the awesome questions today.

ADF surfaces a link beneath any setting or property that is dynamic. The link reads, “Add dynamic content [Alt + P]” as shown below:

We need a pipeline parameter to demonstrate. To create a pipeline parameter:

  1. Click in the white space of the pipeline’s design surface to access pipeline property tabs
  2. Click the Parameters property tab
  3. Click the New blink (my term for a button-ish-looking link)
  4. Configure the parameter name
  5. Select the parameter data type
  6. Set the parameter’s default value

Return to the Wait activity’s Settings tab and click inside the “Wait time in seconds” property value textbox. The “Add dynamic content [Alt + P]” link will display just beneath the property setting textbox:

Click the link to open the “Add dynamic content” blade. Scroll or minimize dynamic content options, expand Parameters, and then click WaitSeconds under the Parameters list. The dynamic content is configured for you as shown here:

Click the Finish button to assign the pipeline parameter expression to the Wait activity’s “Wait time in seconds” property:

Test It!

To test, click the debug button in the pipeline’s menu:

The “Pipeline run” blade displays and includes a list of parameters. We can edit the value of the WaitSeconds parameter for this instance of execution. Click the OK button to start debugging:

After the number of parameterized seconds has elapsed (more or less), the pipeline debug operation completes and displays success (we hope):

I can now demonstrate building a simple pipeline, and then build on that demonstration by adding a pipeline parameter and then use the pipeline parameter to dynamically configure the Wait activity. I can then build on this demo to demonstrate using the Execute Pipeline activity, passing pipeline parameters from the Parent to the Child pipeline:

Conclusion

While polishing these demos for an upcoming webinar I spotted another new thing, the Publish All Pending Changes Blade. ADF just keeps getting better and better!

Andy Leonard

andyleonard.blog

Christian, husband, dad, grandpa, Data Philosopher, Data Engineer, Azure Data Factory, SSIS guy, and farmer. I was cloud before cloud was cool. :{>

2 thoughts on “ADF Wait Activity Wait Time Property is Now Dynamic

  1. I found sometimes the wait activity will run much longer than what is set. No matter it’s dynamic or not. Is there any solution on that?

    1. Hi Candice,

      Can you define “much longer”? I’ve seen the Wait activity run a few seconds over the setting. I attribute that to time required to start the activity, but I could be wrong.

      :{>

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.