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

Add Cassandra session level tracking #620

Closed
Claude-at-Instaclustr opened this issue Apr 26, 2022 · 1 comment
Closed

Add Cassandra session level tracking #620

Claude-at-Instaclustr opened this issue Apr 26, 2022 · 1 comment

Comments

@Claude-at-Instaclustr
Copy link
Contributor

PR #598 (Use cql3 parser) brings with it the ability to process non-SQL commands.

One of the commands USE <keyspace> changes the state of the connection on the server side. In order for Shotover to properly process commands after the USE command it must track the keyspace named in the command and apply it to parsed names where the keyspace is permitted but not provided. Effectively, the USE command sets a default keyspace.

This change should figure out how to track sessions (not requests) between the client and the server so that the default namespace, and similar values, can be tracked across the requests. The session ID may be different from the stream ID found in the Cassandra frame itself. Part of this issue is to determine if that is the case or not.

The end result is that we will have the ability to store and clear session data so that data that crosses requests can be handled efficiently and consistently across the code base.

@Claude-at-Instaclustr Claude-at-Instaclustr changed the title Add Cassandra sessions level tracking Add Cassandra session level tracking Apr 26, 2022
@rukai
Copy link
Member

rukai commented Feb 1, 2023

we ended up taking a somewhat different approach but the proper handling of use statements was implemented by #806

@rukai rukai closed this as completed Feb 1, 2023
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

No branches or pull requests

2 participants