• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

uber / cadence-java-client / 2242
80%

Build:
DEFAULT BRANCH: master
Ran 14 Apr 2024 12:15AM UTC
Jobs 1
Files 273
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

11 Apr 2024 07:03PM UTC coverage: 60.244% (-0.02%) from 60.263%
2242

push

buildkite

web-flow
Enable open tracing propagation in workflow lifecycles (#876)

How it works
Context Propagation in Cadence (Customer)

On start workflow API, trace span with context is written into workflow start event attributes, which is persisted in cadence server side.
On workflow-start in client, this span is referenced and activated on execute workflow.
On scheduling child workflows and activities (including local activities), the span is written into child workflow's workflow start event attributes and activity's schedule activity event attributes.
On processing activities/childworkflows, the persisted span is referenced and activated again.

Sample Spans

Notes: Poll + Respond apis spans are omitted here

{traceId:1, spanId:2, parentId:0, operationName:"cadence-RegisterDomain"}
{traceId:1, spanId:3, parentId:2, operationName:"Test Started"}
{traceId:1, spanId:18, parentId:3, operationName:"cadence-StartWorkflowExecution"}
{traceId:1, spanId:19, parentId:18, operationName:"cadence-GetWorkflowExecutionHistory"}
{traceId:1, spanId:21, parentId:18, operationName:"cadence-ExecuteWorkflow"}
{traceId:1, spanId:24, parentId:21, operationName:"cadence-ExecuteActivity"}
{traceId:1, spanId:25, parentId:24, operationName:"cadence-RespondActivityTaskCompleted"}
{traceId:1, spanId:31, parentId:21, operationName:"cadence-ExecuteWorkflow"}
{traceId:1, spanId:32, parentId:31, operationName:"cadence-ExecuteLocalActivity"}

What changed?

added an Propagator entity with tracing extract/inject logic
added trace activation logic in activity and workflow executors
added trace activation on service client (Tchannel + GRPC)
Why?

improve observability

How did you test it?

integration test

111 of 175 new or added lines in 13 files covered. (63.43%)

11 existing lines in 5 files now uncovered.

11447 of 19001 relevant lines covered (60.24%)

0.6 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
2
56.84
0.18% src/main/java/com/uber/cadence/serviceclient/ClientOptions.java
3
56.34
-0.59% src/main/java/com/uber/cadence/worker/WorkerOptions.java
7
5.79
0.19% src/main/java/com/uber/cadence/serviceclient/WorkflowServiceTChannel.java
8
89.74
src/main/java/com/uber/cadence/internal/tracing/TracingPropagator.java
44
0.0
0.0% src/main/java/com/uber/cadence/internal/compatibility/proto/serviceclient/GrpcServiceStubs.java

Uncovered Existing Lines

Lines Coverage ∆ File
1
56.34
-0.59% src/main/java/com/uber/cadence/worker/WorkerOptions.java
1
5.79
0.19% src/main/java/com/uber/cadence/serviceclient/WorkflowServiceTChannel.java
1
92.65
-1.47% src/main/java/com/uber/cadence/internal/sync/CancellationScopeImpl.java
3
61.18
-3.53% src/main/java/com/uber/cadence/internal/replay/DecisionStateMachineBase.java
5
89.72
-4.67% src/main/java/com/uber/cadence/internal/replay/ActivityDecisionContext.java
Jobs
ID Job ID Ran Files Coverage
1 2242.1 14 Apr 2024 12:15AM UTC 273
60.24
Source Files on build 2242
  • Tree
  • List 273
  • Changed 17
  • Source Changed 12
  • Coverage Changed 17
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Build #2242
  • a0f2c838 on github
  • Prev Build on master (#2216)
  • Next Build on master (#2243)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc