question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

ConductR/Cassandra deployment uses wrong keyspace names

See original GitHub issue

Deploying Lagom with Cassandra as a Persistent Entity backend in ConductR fails to create a keyspace per service. This causes collisions on cluster-related persistent data.

API / Versions Java/Scala

I could reproduce it at least with:

addSbtPlugin("com.lightbend.lagom" % "lagom-sbt-plugin" % "1.3.1")
addSbtPlugin("com.lightbend.conductr" % "sbt-conductr" % "2.3.0")

running on sandbox 2.0.2. Haven’t regression-tested in Lagom 1.2.x or sandbox 1.x.

Expected

  1. Create a Lagom project
  2. Deploy in ConductR
  3. Lagom creates a keyspace per service and uses that for snapshots, journal and read-side.

Actual

  1. Create a Lagom project
  2. Deploy in ConductR
  3. the keyspaces created ignore the service name and fallback to the default values of: lagom, lagom_read and lagom_snapshot. All services use the same three keyspaces.

Issue Analytics

  • State:closed
  • Created 7 years ago
  • Comments:23 (23 by maintainers)

github_iconTop GitHub Comments

1reaction
TimMoorecommented, Apr 24, 2017

I think everything is done on this one now. 🎉

1reaction
TimMoorecommented, Apr 24, 2017

Unless anyone has an objection, I’ll plan to start working on these changes tomorrow, with the following rough plan:

  • (#606) Add documentation to clarify that you need to configure your keyspaces in application.conf (backported to 1.3.x)
  • (#601) Update the Maven archetype to include default keyspace configuration (backported to 1.3.x)
  • (lagom/lagom-java.g8#5) Update the giter8 template for Java to include default keyspace configuration
  • (lagom/lagom-scala.g8#4) Update the giter8 template for Scala to include default keyspace configuration
  • (#613) Warn if keyspaces are overridden using Maven or sbt plugin settings (1.3.x)
  • (#632) Warn if keyspaces are not explicitly configured in application.conf (1.3.x)
  • Integration test in Lagom that ensures that the configured keyspaces are used in development (this may already exist it does)
  • (typesafehub/conductr-lib#133) Remove code from conductr-lib that (attempts to) inject keyspaces in production (no major version bump necessary since this currently doesn’t work)
  • (#663) Fail fast in development, test and production if the keyspaces aren’t explicitly configured in application.conf (1.4+ only)
  • (#663) Remove code from Lagom that injects keyspaces in development (1.4+ only)
  • Integration test in sbt-conductr to ensure that configured keyspaces are used in production Decided that this would not be valuable now that ConductR no longer does anything differently.
  • Update all sample applications to use explicit keyspace configuration
Read more comments on GitHub >

github_iconTop Results From Across the Web

Data Definition | Apache Cassandra Documentation
This section describes the statements used to create, modify, and remove those keyspace and tables. Common definitions. The names of the keyspaces and...
Read more >
Configure an External Cassandra - Genesys Documentation
Genesys simplifies GMS deployments with Cassandra by deprecating old ... If your GMS keyspace name is gsg, you should edit these lines as ......
Read more >
AWS::Cassandra::Table - AWS CloudFormation
The AWS::Cassandra::Table resource allows you to create a new table in Amazon Keyspaces (for Apache Cassandra). For more information, see Create a keyspace...
Read more >
Key space name issue with creating table in cassandra
I assume you use CQL3 to create the table. CQL3 treats names of keyspaces, tables etc. as case insensitive. Names in CQL3 statements...
Read more >
Installing CDC for Cassandra for VM deployment
You have one connector per CDC-enabled Cassandra table, make sure to use a unique ... keyspace. Cassandra keyspace name. string. table. Cassandra table...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found