Task Summary
Three small utility classes/objects under common/workflow-operator/ have no <srcClassName>Spec.scala. They underpin numerical-partition behavior across worker counts (OperatorDescriptorUtils), the distributed-aggregate contract every aggregator obeys (DistributedAggregation), and the user-facing URL-fetch retry path (URLFetchUtil).
Scope
| Source class |
Lines |
What's currently un-pinned |
common/workflow-operator/.../util/OperatorDescriptorUtils.scala |
52 |
equallyPartitionGoal(goal, workers) sums to goal; ranges where goal < workers, goal == workers, goal > workers; remainder lands on the first goal % workers slots; toImmutableMap round-trip |
common/workflow-operator/.../aggregate/DistributedAggregation.scala |
52 |
case-class equality + per-field accessors; end-to-end init→iterate→merge→finalAgg worked example (running average) |
common/workflow-operator/.../source/fetcher/URLFetchUtil.scala |
43 |
success path returns Some(stream); failure path retries N times and returns None; default retries == 5 |
Out of scope
No production-code changes. One <srcClassName>Spec.scala per source class.
Task Type
Task Summary
Three small utility classes/objects under
common/workflow-operator/have no<srcClassName>Spec.scala. They underpin numerical-partition behavior across worker counts (OperatorDescriptorUtils), the distributed-aggregate contract every aggregator obeys (DistributedAggregation), and the user-facing URL-fetch retry path (URLFetchUtil).Scope
common/workflow-operator/.../util/OperatorDescriptorUtils.scalaequallyPartitionGoal(goal, workers)sums togoal; ranges wheregoal < workers,goal == workers,goal > workers; remainder lands on the firstgoal % workersslots;toImmutableMapround-tripcommon/workflow-operator/.../aggregate/DistributedAggregation.scalainit→iterate→merge→finalAggworked example (running average)common/workflow-operator/.../source/fetcher/URLFetchUtil.scalaSome(stream); failure path retries N times and returnsNone; defaultretries == 5Out of scope
No production-code changes. One
<srcClassName>Spec.scalaper source class.Task Type