-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AwsXrayRecoroder trying to modify a non-concurrent collection without exclusive access? #67
Comments
Hi @jaybyrrd ,
|
Hi there,
Like I said I will try to work to create a sandbox project either this evening or during the day, but I hope those details help. |
Two Stacktraces with line numbers that I just managed to pull:
Which results from a call to:
This second stacktrace happens less often, but it does happen:
And this came from the same method invocation. Looks like both stacktraces die at the exact same line on the same IDictionary. I will probably dig into it more a bit later today. Jay |
I have run all the tests that caught this exception in our software as well as our integration tests on the deployed API with this version of the software and I can no longer reproduce the initial issue I was posting about. I do have concerns about whether or not I have introduced a lock that is actually safe since this change was quick and made to one place with only slight consideration to overall usage, but it still passes all unit tests locally. Please let me know if this works or if we need to do something more involved. |
Hi @jaybyrrd , |
Sounds good, the change I made was very much a shot in the dark and while it seems to work, I definitely think a more familiar set of eyes are needed. |
I have the same problem here. It looks like to be intermittent. |
@yogiraj07 I have updated the PR and I think it satisfies fixing the bug. I am going through final stages of testing here, but wanted to follow up on this. @matheusmaximo, if you want, try to pull the code from that PR and see if it solves the intermittent problem for you. |
@matheusmaximo the pull request has been merged and you should be good to go once it releases. |
Still waiting for a release to check if it works on mine. |
I have created a pull request to create a release commit @yogiraj07 |
@jaybyrrd and @matheusmaximo , I would make a release per schedule soon. Please let me know if this issue is currently blocking you and will prioritize accordingly. |
Hello, Prashant. |
It worked for me. Thank you all. |
Just fyi, this issue is still not fixed. The root cause is in |
Just to provide an update here, my pr for the fix in LitJSON (LitJSON/litjson#142) was merged on 11/19/23 - LitJSON/litjson#142 (comment) |
Hi there I can't really provide code snippets for the project, but the context is that we are simply trying to call AWSXrayRecorder.Instance.BeginSubsegment("some name"); inside of a web api and it throws the following exception:
This is happening from inside a dependency injected class, so it would follow the following pattern (where everything is scoped as far as DI goes)
Controller --> Provider --> ProviderWithXraySubsegment
We do see the API tracing the segments started by making the Http Request just fine, but when we add subsegments, it seems to fail with this kind of an error.
This will impact whether or not we use X-Ray at our business. We have also tried using the TraceMethod functions instead of creating subsegments.
The text was updated successfully, but these errors were encountered: