giis-uniovi / modevo

Model-driven approach to maintain data integrity for evolution of column family DBMSs
Apache License 2.0
1 stars 2 forks source link

Post Migration - Review container setup #20

Closed javiertuya closed 5 months ago

javiertuya commented 5 months ago

Review the cassandra container configuration to include things that were left pending in #16:

suarezgpablo commented 5 months ago

Issue in the creation of the roles in GitHub, the workflow is ok in local: <stdin>:1:InvalidRequest: Error from server: code=2200 [Invalid query] message="Cannot process role related query as the role manager isn't yet setup. This is likely because some of nodes in the cluster are on version 2.1 or earlier. You need to upgrade all nodes to Cassandra 2.2 or more to use roles."

The problem seems that it needs more time to create roles in addition to when the database is ready to accept the execution of other CQL statements. So far I tried to override the delay (https://issues.apache.org/jira/browse/CASSANDRA-11942) but it doesn't seem to be working. I will keep looking on it.

javiertuya commented 5 months ago

@suarezgpablo Maybe you should first remove the container restart, this could cause unpredictable behaviours.

suarezgpablo commented 5 months ago

@suarezgpablo Maybe you should first remove the container restart, this could cause unpredictable behaviours.

I tested that in local and the problem is that the overriden of the properties to require credentials requires to restart the container. If the container is not restarted the following error is returned: imagen

I think that there could be two different options that I believe would solve the problem without having potential flakies:

  1. Not use credentials at all.
  2. Override the entire cassandra.yaml when creating the container. This would require to update the cassandra.yaml manually if an update of Cassandra uses a different type of cassandra.yaml

@javiertuya

javiertuya commented 5 months ago

@suarezgpablo The solution for 2 would be to create a dockerfile to generate the image with a patched cassandra.yaml. Nevertheless, to unlock the situation, go ahead without credentials to the GHA tests.