Skip to content

Disable shared span context by default#11232

Closed
objectiser wants to merge 1 commit intoistio:masterfrom
objectiser:nosharedcontext
Closed

Disable shared span context by default#11232
objectiser wants to merge 1 commit intoistio:masterfrom
objectiser:nosharedcontext

Conversation

@objectiser
Copy link
Copy Markdown
Contributor

The envoy proxy (used by Istio proxy) creates server spans that have the same span id as the value supplied with the trace context. This can be disabled through configuration, so that all spans create their own unique id.

Usually having shared span context (i.e. where the client span in service A shares the same id as the server span from called service B) is not an issue - if the envoy proxy creating the client span only creates the one span. However there are cases where other tasks performed in the envoy proxy are also creating their own spans - which have the parent id of the client span.

In these cases, the child span can be incorrectly identified as being "caused by" the server span that had the shared id. To illustrate, this is a view of a trace instance from current master:

jaeger-istio-bookinfo-timeline

As you will see, it is implying that the productpage service has called the istio-ingressgateway.

By disabling the shared span context feature, the individual client and server spans have the correct parent span references, e.g.

jaeger-istio-bookinfo-timeline2

When shared span context is disabled, this has no adverse effect on the representation shown in zipkin:

zipkin-istio-bookinfo-timeline2

@objectiser
Copy link
Copy Markdown
Contributor Author

/test istio-integ-k8s-tests
/test istio-pilot-multicluster-e2e

@objectiser
Copy link
Copy Markdown
Contributor Author

/test istio-pilot-multicluster-e2e

Copy link
Copy Markdown
Contributor

@douglas-reid douglas-reid left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

Should this also be in release-1.1 ?

@istio-testing
Copy link
Copy Markdown
Collaborator

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: douglas-reid, objectiser
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: hklai

If they are not already assigned, you can assign the PR to them by writing /assign @hklai in a comment when ready.

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@objectiser
Copy link
Copy Markdown
Contributor Author

@douglas-reid Thought it might be too late for 1.1 branch, but if not would be good to get the fix in. #11281 created.

@objectiser
Copy link
Copy Markdown
Contributor Author

/assign @hklai

@stale
Copy link
Copy Markdown

stale bot commented Feb 8, 2019

This pull request has been automatically marked as stale because it has not had activity in the last 2 weeks. It will be closed in 30 days if no further activity occurs. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions!

@stale stale bot added the stale label Feb 8, 2019
@douglas-reid
Copy link
Copy Markdown
Contributor

not stale

@stale stale bot removed the stale label Feb 8, 2019
@douglas-reid
Copy link
Copy Markdown
Contributor

/assign geeknoid

@douglas-reid
Copy link
Copy Markdown
Contributor

douglas-reid commented Feb 8, 2019

agree with @objectiser that this should also end up in 1.1, which it has. The question is now how does this migrate into master.

@stale
Copy link
Copy Markdown

stale bot commented Feb 22, 2019

This pull request has been automatically marked as stale because it has not had activity in the last 2 weeks. It will be closed in 30 days if no further activity occurs. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions!

@stale stale bot unassigned hklai Feb 22, 2019
@stale stale bot added the stale label Feb 22, 2019
@istio-testing
Copy link
Copy Markdown
Collaborator

@objectiser: PR needs rebase.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@istio-testing istio-testing added the needs-rebase Indicates a PR needs to be rebased before being merged label Feb 24, 2019
@stale stale bot removed the stale label Feb 24, 2019
@stale
Copy link
Copy Markdown

stale bot commented Mar 11, 2019

This pull request has been automatically marked as stale because it has not had activity in the last 2 weeks. It will be closed in 30 days if no further activity occurs. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions!

@stale stale bot added the stale label Mar 11, 2019
@stale
Copy link
Copy Markdown

stale bot commented Apr 10, 2019

This pull request has been automatically closed because it has not had activity in the last 30 days. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions!

@stale stale bot closed this Apr 10, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-rebase Indicates a PR needs to be rebased before being merged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants