while loop breaks in channel code and break condition not met

book

Article ID: 142816

calendar_today

Updated On:

Products

CA Mobile Device Management

Issue/Introduction

Here is a summary of what I’ve learned so far:

  • We have a channel in a channel set that downloads files based on a list provided by our clients.
  • This list contains as many as 54 packages (collections of files) in it at a time.
  • The core logic of this channel is as follows:
    • Loop through the list of packages provided to us (in an INI file)
    • For each package provided, loop through the list of packages available for download and download it when the two are equal.
  • After 41 iterations of the outer loop, the while loop exists, even though the break condition hasn’t been met.
  • Any additional statements after the loop are executed. I’ve told it to print the counters it was using, so this is where the 41 came from.

 

I did some additional testing in L1 and built a simpler channel that gives the same effect. This one stops after about 88 iterations with 250 files available. Attached is the worklist export. I also saw it download file 1 again after reaching file 45, suggesting some kind of logic breakdown around that point.

Environment

Release : 18.1

Component : CA MOBILE DEVICE MANAGEMENT

Resolution

As repeat loop can't handle more events inside the loop, FedEx agreed to write utility on their own.