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

[docs] Added limitations for YSQL Connection Manager #25458

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

rahulb-yb
Copy link
Contributor

@rahulb-yb rahulb-yb commented Dec 31, 2024

This PR adds the "Limitations" section for v2024.2 docs of YSQL Connection Manager.

@netlify /stable/explore/going-beyond-sql/connection-mgr-ysql/

@rahulb-yb rahulb-yb self-assigned this Dec 31, 2024
@CLAassistant
Copy link

CLAassistant commented Dec 31, 2024

CLA assistant check
All committers have signed the CLA.

@rahulb-yb rahulb-yb added the area/documentation Documentation needed label Dec 31, 2024
Copy link

netlify bot commented Dec 31, 2024

Deploy Preview for infallible-bardeen-164bc9 ready!

Built without sensitive environment variables

Name Link
🔨 Latest commit a1529eb
🔍 Latest deploy log https://app.netlify.com/sites/infallible-bardeen-164bc9/deploys/6773908e3fd33e000864d31e
😎 Deploy Preview https://deploy-preview-25458--infallible-bardeen-164bc9.netlify.app/stable/explore/going-beyond-sql/connection-mgr-ysql/
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.


## Limitations

- Changes to default GUC values for a user or database (ALTER ROLE SET/ALTER DATABASE SET queries) may reflect in other pre-existing active sessions.
Copy link
Contributor

Choose a reason for hiding this comment

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

can you be more specific? only flags, not YSQL configuration parameters, are listed above - so what values are you talking about?

## Limitations

- Changes to default GUC values for a user or database (ALTER ROLE SET/ALTER DATABASE SET queries) may reflect in other pre-existing active sessions.
- Connection Manager can only support upto a total of 10,000 pools to route. This includes pools corresponding to dropped users and databases as well.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- Connection Manager can only support upto a total of 10,000 pools to route. This includes pools corresponding to dropped users and databases as well.
- YSQL Connection Manager can route up to 10,000 connection pools. This includes pools corresponding to dropped users and databases.

## Limitations

- Changes to default GUC values for a user or database (ALTER ROLE SET/ALTER DATABASE SET queries) may reflect in other pre-existing active sessions.
- Connection Manager can only support upto a total of 10,000 pools to route. This includes pools corresponding to dropped users and databases as well.
Copy link
Contributor

Choose a reason for hiding this comment

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

is this simultaneous, or what exactly?

- Connection Manager can only support upto a total of 10,000 pools to route. This includes pools corresponding to dropped users and databases as well.
- Prepared statements may be visible to other sessions within the same connection pool. [#24652](https://github.com/yugabyte/yugabyte-db/issues/24652)
- Attempting to use DEALLOCATE/DEALLOCATE ALL queries can result in unexpected behavior. [#24653](https://github.com/yugabyte/yugabyte-db/issues/24653)
- As of now, Connection Manager does not facilitate custom configurations per pool. All configurations used will apply to every pool that Connection Manager routes through.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- As of now, Connection Manager does not facilitate custom configurations per pool. All configurations used will apply to every pool that Connection Manager routes through.
- Currently, you can't apply custom configurations to individual pools. The YSQL Connection Manager configuration applies to all pools.

- Prepared statements may be visible to other sessions within the same connection pool. [#24652](https://github.com/yugabyte/yugabyte-db/issues/24652)
- Attempting to use DEALLOCATE/DEALLOCATE ALL queries can result in unexpected behavior. [#24653](https://github.com/yugabyte/yugabyte-db/issues/24653)
- As of now, Connection Manager does not facilitate custom configurations per pool. All configurations used will apply to every pool that Connection Manager routes through.
- With connection manager enabled, the backend PID stored using JDBC drivers may not accurate. This does not affect backend-specific functionalities (eg. cancel queries), but this PID should not be used to identify the backend process.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- With connection manager enabled, the backend PID stored using JDBC drivers may not accurate. This does not affect backend-specific functionalities (eg. cancel queries), but this PID should not be used to identify the backend process.
- When YSQL Connection Manager is enabled, the backend PID stored using JDBC drivers may not accurate. This does not affect backend-specific functionalities (for example, cancel queries), but this PID should not be used to identify the backend process.

- Prepared statements may be visible to other sessions within the same connection pool. [#24652](https://github.com/yugabyte/yugabyte-db/issues/24652)
- Attempting to use DEALLOCATE/DEALLOCATE ALL queries can result in unexpected behavior. [#24653](https://github.com/yugabyte/yugabyte-db/issues/24653)
- As of now, Connection Manager does not facilitate custom configurations per pool. All configurations used will apply to every pool that Connection Manager routes through.
- With connection manager enabled, the backend PID stored using JDBC drivers may not accurate. This does not affect backend-specific functionalities (eg. cancel queries), but this PID should not be used to identify the backend process.
Copy link
Contributor

Choose a reason for hiding this comment

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

tracking issue?

- Attempting to use DEALLOCATE/DEALLOCATE ALL queries can result in unexpected behavior. [#24653](https://github.com/yugabyte/yugabyte-db/issues/24653)
- As of now, Connection Manager does not facilitate custom configurations per pool. All configurations used will apply to every pool that Connection Manager routes through.
- With connection manager enabled, the backend PID stored using JDBC drivers may not accurate. This does not affect backend-specific functionalities (eg. cancel queries), but this PID should not be used to identify the backend process.
- `currval` and `nextval` functions do not work by default with connection manager enabled. They can be supported with the help of the `ysql_conn_mgr_sequence_support_mode` flag.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- `currval` and `nextval` functions do not work by default with connection manager enabled. They can be supported with the help of the `ysql_conn_mgr_sequence_support_mode` flag.
- By default, `currval` and `nextval` functions do not work when YSQL Connection Manager is enabled. To support these functions, enable the `ysql_conn_mgr_sequence_support_mode` flag.

- Attempting to use DEALLOCATE/DEALLOCATE ALL queries can result in unexpected behavior. [#24653](https://github.com/yugabyte/yugabyte-db/issues/24653)
- As of now, Connection Manager does not facilitate custom configurations per pool. All configurations used will apply to every pool that Connection Manager routes through.
- With connection manager enabled, the backend PID stored using JDBC drivers may not accurate. This does not affect backend-specific functionalities (eg. cancel queries), but this PID should not be used to identify the backend process.
- `currval` and `nextval` functions do not work by default with connection manager enabled. They can be supported with the help of the `ysql_conn_mgr_sequence_support_mode` flag.
Copy link
Contributor

Choose a reason for hiding this comment

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

ysql_conn_mgr_sequence_support_mode is not described above


- Changes to default GUC values for a user or database (ALTER ROLE SET/ALTER DATABASE SET queries) may reflect in other pre-existing active sessions.
- Connection Manager can only support upto a total of 10,000 pools to route. This includes pools corresponding to dropped users and databases as well.
- Prepared statements may be visible to other sessions within the same connection pool. [#24652](https://github.com/yugabyte/yugabyte-db/issues/24652)
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- Prepared statements may be visible to other sessions within the same connection pool. [#24652](https://github.com/yugabyte/yugabyte-db/issues/24652)
- Prepared statements may be visible to other sessions in the same connection pool. [#24652](https://github.com/yugabyte/yugabyte-db/issues/24652)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/documentation Documentation needed
Projects
Status: In progress
Development

Successfully merging this pull request may close these issues.

3 participants