-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
InvokeCodeThatShouldFirEvents_EnsureEventsFired fails on OSX #52710
Comments
Tagging subscribers to this area: @tommcdon, @krwq Issue DetailsThe test has been failing on OSX - 46 times in the past 7 days. Here's an example:
Putting in the
|
Failed again in runtime 20210513.81 Failed test:
Error message:
|
@MihaZupan possibly related to #52602? |
As a part of optimizing the in-process consumption of EventSource events, a bunch of asserts were added to flag incorrect parameters/data being passed to said events. In this case, this is a bug in runtime/src/libraries/System.Data.Common/src/System/Data/Common/DataCommonEventSource.cs Lines 69 to 79 in 10a11fe
All EventSource Event methods have to match the events they emit to the method signature. In this case, runtime/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs Line 1055 in 10a11fe
which accepts two parameters. So before the changes in EventSource, this led to silent data corruption, now it's hitting an assert. |
Good catch @MihaZupan. This should be a quick fix of just marking the public method as |
Tagging subscribers to this area: @roji, @ajcvickers Issue DetailsThe test has been failing on OSX - 46 times in the past 7 days. Here's an example:
Putting in the
|
In this case, the correct way to log such an event would be something like: [NonEvent]
internal long EnterScope(string message)
{
long scopeId = 0;
if (Log.IsEnabled()) // Depending on how perf sensitive this is, consider checking IsEnabled(verbose)
{
scopeId = Interlocked.Increment(ref s_nextScopeId);
EnterScope(scopeId, message);
}
return scopeId;
}
[Event(EnterScopeId, Level = EventLevel.Verbose)]
private void EnterScope(long scopeId, string message) => WriteEvent(EnterScopeId, scopeId, message); |
Another one here:
|
Failed again in runtime 20210519.81 Failed test:
Error message:
|
Can we get this test disabled while we're sorting through the issues? |
Turned this into a tracking issue. There were 82 hits over a week (!), largely in macOS. I will be disabling this test. |
cc: @aik-jahoda |
The test has been failing on OSX - 46 times in the past 7 days.
https://runfo.azurewebsites.net/search/tests/?q=started%3A%7E7+definition%3Aruntime+name%3AInvokeCodeThatShouldFirEvents_EnsureEventsFired
Here's an example:
https://dev.azure.com/dnceng/public/_build/results?buildId=1135812&view=logs&j=e36ba317-696d-52ae-17e4-c1550b11ed0e&t=bc5b3adc-f53f-5379-06e0-c27e87afd8be&l=55
https://helix.dot.net/api/2019-06-17/jobs/17bd0db4-2315-4c91-9458-a441149c521d/workitems/System.Data.Common.Tests/console
Putting in the
System.Diagnostics
area since the exception is coming from EventSource code.Runfo Tracking Issue: system.data.tests.datacommoneventsourcetest.invokecodethatshouldfirevents_ensureeventsfired
Displaying 100 of 133 results
Build Result Summary
The text was updated successfully, but these errors were encountered: