Add 8.0 synchronous batching breaking change section by NinoFloris · Pull Request #368 · npgsql/doc · GitHub
Skip to content

Add 8.0 synchronous batching breaking change section - #368

Open
NinoFloris wants to merge 2 commits into
mainfrom
sync-batching-starvation
Open

NinoFloris wants to merge 2 commits into
mainfrom
sync-batching-starvation

Conversation

@NinoFloris

Copy link
Copy Markdown
Member

No description provided.

Fix style issues

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Should probably add a few examples how threadpool starvation affects users, like delayed query execution time and even timeouts.

* Use [ThreadPool.SetMinThreads()](https://learn.microsoft.com/en-us/dotnet/api/system.threading.threadpool.setminthreads?view=net-8.0) to expand the minimum pool of threads available for blocking.
* Refactor code using command batches to use asynchronous apis.

If these options are not suitable for your project you can consider opening an issue on [https://github.com/npgsql/npgsql](https://github.com/npgsql/npgsql). This helps us prioritize the effort to bring back some mitigation in a patch version.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Maybe direct people to a specific issue (like the one that triggered this breaking change note) to avoid new duplicate issues getting opened etc.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Is that maybe a bit too harsh? Given the workaround (e.g. SetMinThreads()) it's possible to do this even at higher load, it's just up to the user to preconfigure things etc?

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants