Support for connection load balancing across read-replica cluster nodes#6
Merged
Conversation
ashetkar
reviewed
Sep 27, 2024
| /// <summary> | ||
| /// TODO | ||
| /// </summary> | ||
| protected static Dictionary<NpgsqlDataSource, int> poolToNumConnMapRR = new Dictionary<NpgsqlDataSource, int>(); |
Collaborator
There was a problem hiding this comment.
Something to ponder over: Can we simply use the size of the datasource/pool?
Collaborator
Author
There was a problem hiding this comment.
This is possible but would require a lot of rework of all the methods and logic. I can file a ticket for this.
ashetkar
reviewed
Oct 29, 2024
ashetkar
approved these changes
Nov 14, 2024
Sfurti-yb
added a commit
that referenced
this pull request
Feb 26, 2025
…es (#6) * Initial changes to ClusterAwareLoadBalancer for RR support * Initial changes for RR support * Test cleanup * Addressed the review comments * Modified tests to include client side verification + Check if connections are closed properly * Make GetLoad static * Changes as per review comments * Refactored the tests to add method call in place of code repititions * Format the new code
Sfurti-yb
added a commit
that referenced
this pull request
Sep 25, 2025
* Upgrading the version from 8.0.0 to 8.0.3 (#4) * First draft for the smart feature * TopologyAwareDataSource Code * Adding Refresh Interval + Changes in Fallback toology * Fallback tests + minor improvements * Review comments + Multiple host in URL * Minor changes to refresh * Review comments * Improved the tests + updated the README * MultiThreading bug fix * Review Comments * Fallback Test cases + fallback topology fix * Change namespace from Npgsql to YBNpgsql * Changing the version + Assembly name * Renaming namespace in new files * Renaming namespace in few more files * Preparing for release * Fix for the fallback issue * Resolved some build issues * Added the flags for supression of sqls * Change support of Unlisten and Advisory Locks to false * Changed the method for retrieving of allowed placement values * Removed local package source from Nuget.config + Added the new connection properties to Readme --------- Co-authored-by: Sfurti Sarah <ssarah@Aadhas-MacBook-Pro.local> Co-authored-by: Amogh Shetkar <ashetkar@yugabyte.com> * Added More Log statements * Changed PackageIDs and AssemblyName for Nuget publish (#5) * Changed PackageIDs and AssemblyName for Nuget publish * Updated the README files * Support for connection load balancing across read-replica cluster nodes (#6) * Initial changes to ClusterAwareLoadBalancer for RR support * Initial changes for RR support * Test cleanup * Addressed the review comments * Modified tests to include client side verification + Check if connections are closed properly * Make GetLoad static * Changes as per review comments * Refactored the tests to add method call in place of code repititions * Format the new code * Updated some tests to include higher timeout and updated method signature for hasbetternodeavailable method * Updating version number and Readme for release * Resolve build issues * Added fix for NoHostSuitableException in case of External Load Balancer + Fix for better node availability * Updated the test file * Updated the driver version --------- Co-authored-by: Sfurti Sarah <ssarah@Aadhas-MacBook-Pro.local> Co-authored-by: Amogh Shetkar <ashetkar@yugabyte.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
What
Testing