You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "Tellier Benoit (JIRA)" <se...@james.apache.org> on 2019/01/28 05:05:00 UTC

[jira] [Created] (JAMES-2653) Starting 2 Cassandra james server concurrently fails

Tellier Benoit created JAMES-2653:
-------------------------------------

             Summary: Starting 2 Cassandra james server concurrently fails
                 Key: JAMES-2653
                 URL: https://issues.apache.org/jira/browse/JAMES-2653
             Project: James Server
          Issue Type: Bug
          Components: cassandra, guice
            Reporter: Tellier Benoit


PR introduce a concurrentTable creation that fails: https://github.com/linagora/james-project/pull/2139

```
java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.RuntimeException: com.datastax.driver.core.exceptions.ServerError: An unexpected error occurred server side on localhost/127.0.0.1:32818: java.lang.RuntimeException: java.util.concurrent.ExecutionException: org.apache.cassandra.exceptions.ConfigurationException: Column family ID mismatch (found b0736470-22b8-11e9-b4fb-f58bd8d3766a; expected b07168a0-22b8-11e9-b4fb-f58bd8d3766a)

	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
	at java.util.concurrent.FutureTask.get(FutureTask.java:192)
	at org.apache.james.util.concurrency.ConcurrentTestRunner.assertNoException(ConcurrentTestRunner.java:160)
	at org.apache.james.util.concurrency.ConcurrentTestRunner.runSuccessfullyWithin(ConcurrentTestRunner.java:177)
	at org.apache.james.util.concurrency.ConcurrentTestRunner$Builder.runSuccessfullyWithin(ConcurrentTestRunner.java:83)
	at org.apache.james.backends.cassandra.init.CassandraTableManagerConcurrentTest.initializeTableShouldCreateAllTheTables(CassandraTableManagerConcurrentTest.java:61)
```

The 2 connections do not succeed to synchronize themselves upon table creation, leading to an invalid state...

We need to ensure that when we start james server concurrently, everything go smooth.

Table creation synchorinsation seems hard. Does this mean we need to externalize table creation, that would be needed to be run prior running James servers?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org