Skip to content
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

[Bug]: MSSQL (primarily Linux) pipeline flakey #2010

Open
1 task done
seantleonard opened this issue Feb 5, 2024 · 2 comments
Open
1 task done

[Bug]: MSSQL (primarily Linux) pipeline flakey #2010

seantleonard opened this issue Feb 5, 2024 · 2 comments
Assignees
Labels
bug Something isn't working triage issues to be triaged
Milestone

Comments

@seantleonard
Copy link
Contributor

What happened?

MSSQL pipeline is flakely , typically in Linux tests, but sometimes windows, where all integration tests pass, but there is either a timeout or connection forcibly closed error. There may be a memory leak or inefficient use of resources occuring in test fixture which should be identified and remediated.

Why this is impactful:

  1. Affects iteration velocity -> may allow quicker pace of merges because pipeline execution speed may be increased due to this and multiple runs don't need to be triggered

Version

latest main

What database are you using?

Azure SQL

What hosting model are you using?

Local (including CLI)

Which API approach are you accessing DAB through?

REST

Relevant log output

Windows:

Passed!  - Failed:     0, Passed:  1010, Skipped:     2, Total:  1012, Duration: 11 m 55 sTest Run Aborted with error System.Exception: One or more errors occurred.
 ---> System.Exception: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host..
 ---> System.Exception: An existing connection was forcibly closed by the remote host.
   at System.Net.Sockets.NetworkStream.Read(Span`1 buffer)
   --- End of inner exception stack trace ---
   at System.Net.Sockets.NetworkStream.Read(Span`1 buffer)
   at System.Net.Sockets.NetworkStream.ReadByte()
   at System.IO.BinaryReader.Read7BitEncodedInt()
   at System.IO.BinaryReader.ReadString()
   at Microsoft.VisualStudio.TestPlatform.CommunicationUtilities.LengthPrefixCommunicationChannel.NotifyDataAvailable()
   at Microsoft.VisualStudio.TestPlatform.CommunicationUtilities.TcpClientExtensions.MessageLoopAsync(TcpClient client, ICommunicationChannel channel, Action`1 errorHandler, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---.
 - Azure.DataApiBuilder.Service.Tests.dll (net6.0)
##[error]Error: The process 'C:\hostedtoolcache\windows\dotnet\dotnet.exe' failed with exit code 1

Code of Conduct

  • I agree to follow this project's Code of Conduct
@seantleonard seantleonard added bug Something isn't working triage issues to be triaged labels Feb 5, 2024
@seantleonard seantleonard added this to the 0.12rc milestone Feb 5, 2024
@seantleonard seantleonard self-assigned this Feb 7, 2024
@seantleonard
Copy link
Contributor Author

Working on using preview feature of AppService to run profiler (apparently different perf measurements/and suggestions than what can be gathered from Visual Studio).
Requires publishing DAB to app service, executing requests and checking profiler output.

@seantleonard
Copy link
Contributor Author

[current] I'm adding some more diagnostics (via dotnet test --diagto try and identify the issue in addition to having :
Public GitHub issues(1, 2, 3) range from incorrect async function declarations, test machine OOM, and/or other code defects.
Issue is not consistent and pipeline takes 20-30 moinutes to execute. ( i briefly looked at what tests could be modified to improve test execution times, but that is a larger effor that may not fit within GA timeframe, so i stopped that line of investigation currently.)

@seantleonard seantleonard modified the milestones: 0.12rc, 1.1rc, 1.2rc Mar 5, 2024
seantleonard added a commit that referenced this issue Mar 5, 2024
## Why make this change?

- Closes #2077 While we investigate #2010 , disabling MSSQL linux tests
to allow us to be productive while solution is found.

## What is this change?

- Sets Linux MSSQL test job condition to false to disable job. The
intent is to keep the pipeline config without deleting and have a simple
re-enable task when appropriate.
- Solution credit:
https://developercommunity.visualstudio.com/t/add-support-to-temporarily-disableskip-a-job-in-mu/393253

## How was this tested?

- [x] Integration Tests
Shows as skipped as intended:

![image](https://github.com/Azure/data-api-builder/assets/6414189/13dd6325-d120-4d9f-bdb5-8cc12dbed4b0)
@seantleonard seantleonard changed the title [Bug]: MSSQL pipeline Flakey [Bug]: MSSQL (primarily Linux) pipeline flakey Apr 19, 2024
@seantleonard seantleonard modified the milestones: 1.2rc, Feature Backlog May 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working triage issues to be triaged
Projects
None yet
Development

No branches or pull requests

1 participant