Cassandra sessions should be (cached) reused per keyspace per host
- Dominant language
- Java
- Stars
- 8.7k
- Forks
- 4.7k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 196
Description
According to the Datastax document for session:
> "As a given session can only be "logged" into one keyspace at a time (where the "logged" keyspace is the one used by queries that don't explicitly use a fully qualified table name), it can make sense to create one session per keyspace used. This is however not necessary when querying multiple keyspaces since it is always possible to use a single session with fully qualified table names in queries."
(source: [https://docs.datastax.com/en/drivers/java/3.0/com/datastax/driver/core/Session.html](https://docs.datastax.com/en/drivers/java/3.0/com/datastax/driver/core/Session.html))
The session fields in Mutator class should be cached and reused for a keyspace and host.
[https://github.com/apache/beam/blob/master/sdks/java/io/cassandra/src/main/java/org/apache/beam/sdk/io/cassandra/CassandraIO.java#L1225](https://github.com/apache/beam/blob/master/sdks/java/io/cassandra/src/main/java/org/apache/beam/sdk/io/cassandra/CassandraIO.java#L1225)
Imported from Jira [BEAM-11399](https://issues.apache.org/jira/browse/BEAM-11399). Original Jira may contain additional context.
Reported by: manojks.
Contributor guide
Assessment
This issue has not been assessed yet.