[ 
https://issues.apache.org/jira/browse/CASSANDRA-4337?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Patrycjusz Matuszak updated CASSANDRA-4337:
-------------------------------------------

    Description: 
h3. Configuration
Cassandra server configuration:
{noformat}heap size: 4 GB
seed_provider:
    - class_name: org.apache.cassandra.locator.SimpleSeedProvider
      parameters:
          - seeds: "xxx.xxx.xxx.10,xxx.xxx.xxx.11"
listen_address: xxx.xxx.xxx.10
rpc_address: 0.0.0.0
rpc_port: 9160
rpc_timeout_in_ms: 20000
endpoint_snitch: PropertyFileSnitch{noformat}

cassandra-topology.properties
{noformat}xxx.xxx.xxx.10=datacenter1:rack1
xxx.xxx.xxx.11=datacenter1:rack1
default=datacenter1:rack1{noformat}

Ring configuration:
{noformat}Address         DC          Rack        Status State   Load           
 Effective-Ownership Token
                                                                                
           85070591730234615865843651857942052864
xxx.xxx.xxx.10  datacenter1 rack1       Up     Normal  23,11 kB        100,00%  
           0
xxx.xxx.xxx.11  datacenter1 rack1       Up     Normal  23,25 kB        100,00%  
           85070591730234615865843651857942052864{noformat}

h3.Problem
I have ctreated keyspace and column family using CLI commands:
{noformat}create keyspace testks with placement_strategy = 
'org.apache.cassandra.locator.NetworkTopologyStrategy' and strategy_options = 
{datacenter1:2};
use testks;
create column family testcf;{noformat}

Then I started my Java application, which inserts 50 000 000 rows to created 
column family using Hector client. Client is connected to node 1.
After about 30 seconds (160 000 rows were inserted) Cassandra server on node 1 
throws an exception:
{noformat}ERROR [COMMIT-LOG-ALLOCATOR] 2012-06-13 10:26:38,393 
AbstractCassandraDaemon.java (line 134) Exception in thread 
Thread[COMMIT-LOG-ALLOCATOR,5,main]
java.io.IOError: java.io.IOException: Rename from 
c:\apache-cassandra\storage\commitlog\CommitLog-7345742389552.log to 
7475933520374 failed
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:127)
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.recycle(CommitLogSegment.java:204)
        at 
org.apache.cassandra.db.commitlog.CommitLogAllocator$2.run(CommitLogAllocator.java:166)
        at 
org.apache.cassandra.db.commitlog.CommitLogAllocator$1.runMayThrow(CommitLogAllocator.java:95)
        at 
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
        at java.lang.Thread.run(Thread.java:722)
Caused by: java.io.IOException: Rename from 
c:\apache-cassandra\storage\commitlog\CommitLog-7345742389552.log to 
7475933520374 failed
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:105)
        ... 5 more{noformat}
        
Then, few seconds later Cassandra server on node 2 throws the same exception:
{noformat}ERROR [COMMIT-LOG-ALLOCATOR] 2012-06-14 10:26:44,005 
AbstractCassandraDaemon.java (line 134) Exception in thread 
Thread[COMMIT-LOG-ALLOCATOR,5,main]
java.io.IOError: java.io.IOException: Rename from 
c:\apache-cassandra\storage\commitlog\CommitLog-7320337904033.log to 
7437675489307 failed
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:127)
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.recycle(CommitLogSegment.java:204)
        at 
org.apache.cassandra.db.commitlog.CommitLogAllocator$2.run(CommitLogAllocator.java:166)
        at 
org.apache.cassandra.db.commitlog.CommitLogAllocator$1.runMayThrow(CommitLogAllocator.java:95)
        at 
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: Rename from 
c:\apache-cassandra\storage\commitlog\CommitLog-7320337904033.log to 
7437675489307 failed
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:105)
        ... 5 more{noformat}

After that, my application cannot insert any more data. Hector gets 
TimedOutException from Thrift:
{noformat}Thread-4 HConnectionManager.java 306 2012-06-14 10:26:56,034 
HConnectionManager  operateWithFailover   WARN    %Could not fullfill request 
on this host CassandraClient<xxx.xxx.xxx.10:9160-10> 
Thread-4 HConnectionManager.java 307 2012-06-14 10:26:56,034 HConnectionManager 
operateWithFailover      WARN    %Exception:  
me.prettyprint.hector.api.exceptions.HTimedOutException: TimedOutException()
        at 
me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:35)
        at 
me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:264)
        at 
me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:97)
        at 
me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)
        at 
patrycjusz.nosqltest.db.cassandra.CassandraHectorDbAdapter.commitTransaction(CassandraDbAdapter.java:63)
        at patrycjusz.nosqltest.DbTest.insertData(DbTest.java:459)
        at patrycjusz.nosqltest.gui.InsertPanel.executeTask(NePanel.java:154)
        at patrycjusz.nosqltest.gui.InsertPanel$1.run(NePanel.java:141)
        at java.lang.Thread.run(Unknown Source)
Caused by: TimedOutException()
        at 
org.apache.cassandra.thrift.Cassandra$batch_mutate_result.read(Cassandra.java:20269)
        at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78)
        at 
org.apache.cassandra.thrift.Cassandra$Client.recv_batch_mutate(Cassandra.java:922)
        at 
org.apache.cassandra.thrift.Cassandra$Client.batch_mutate(Cassandra.java:908)
        at 
me.prettyprint.cassandra.model.MutatorImpl$3.execute(MutatorImpl.java:246)
        at 
me.prettyprint.cassandra.model.MutatorImpl$3.execute(MutatorImpl.java:243)
        at 
me.prettyprint.cassandra.service.Operation.executeAndSetResult(Operation.java:103)
        at 
me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:258)
        ... 8 more{noformat}

  was:
h3. Configuration
Cassandra server configuration:
{noformat}heap size: 4 GB
seed_provider:
    - class_name: org.apache.cassandra.locator.SimpleSeedProvider
      parameters:
          - seeds: "xxx.xxx.xxx.10,xxx.xxx.xxx.11"
listen_address: xxx.xxx.xxx.10
rpc_address: 0.0.0.0
rpc_port: 9160
rpc_timeout_in_ms: 20000
endpoint_snitch: PropertyFileSnitch{noformat}

cassandra-topology.properties
{noformat}xxx.xxx.xxx.10=datacenter1:rack1
xxx.xxx.xxx.11=datacenter1:rack1
default=datacenter1:rack1{noformat}

Ring configuration:
{noformat}Address         DC          Rack        Status State   Load           
 Effective-Ownership Token
                                                                                
           85070591730234615865843651857942052864
xxx.xxx.xxx.10  datacenter1 rack1       Up     Normal  23,11 kB        100,00%  
           0
xxx.xxx.xxx.11  datacenter1 rack1       Up     Normal  23,25 kB        100,00%  
           85070591730234615865843651857942052864{noformat}

h3.Problem
I have ctreated keyspace and column family using CLI commands:
{noformat}create keyspace testks with placement_strategy = 
'org.apache.cassandra.locator.NetworkTopologyStrategy' and strategy_options = 
{datacenter1:2};
use testks;
create column family testcf;{noformat}

Then I started my Java application, which inserts 50 000 000 rows to created 
column family using Hector client. Client is connected to node 1.
After about 30 seconds (160 000 rows were inserted) Cassandra server on node 1 
throws an exception:
{noformat}ERROR [COMMIT-LOG-ALLOCATOR] 2012-06-13 10:26:38,393 
AbstractCassandraDaemon.java (line 134) Exception in thread 
Thread[COMMIT-LOG-ALLOCATOR,5,main]
java.io.IOError: java.io.IOException: Rename from 
c:\apache-cassandra\storage\commitlog\CommitLog-7345742389552.log to 
7475933520374 failed
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:127)
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.recycle(CommitLogSegment.java:204)
        at 
org.apache.cassandra.db.commitlog.CommitLogAllocator$2.run(CommitLogAllocator.java:166)
        at 
org.apache.cassandra.db.commitlog.CommitLogAllocator$1.runMayThrow(CommitLogAllocator.java:95)
        at 
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
        at java.lang.Thread.run(Thread.java:722)
Caused by: java.io.IOException: Rename from 
c:\apache-cassandra\storage\commitlog\CommitLog-7345742389552.log to 
7475933520374 failed
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:105)
        ... 5 more{noformat}
        
Then, few seconds later Cassandra server on node 2 throws the same exception:
{noformat}ERROR [COMMIT-LOG-ALLOCATOR] 2012-06-14 10:26:44,005 
AbstractCassandraDaemon.java (line 134) Exception in thread 
Thread[COMMIT-LOG-ALLOCATOR,5,main]
java.io.IOError: java.io.IOException: Rename from 
c:\apache-cassandra\storage\commitlog\CommitLog-7320337904033.log to 
7437675489307 failed
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:127)
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.recycle(CommitLogSegment.java:204)
        at 
org.apache.cassandra.db.commitlog.CommitLogAllocator$2.run(CommitLogAllocator.java:166)
        at 
org.apache.cassandra.db.commitlog.CommitLogAllocator$1.runMayThrow(CommitLogAllocator.java:95)
        at 
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: Rename from 
c:\apache-cassandra\storage\commitlog\CommitLog-7320337904033.log to 
7437675489307 failed
        at 
org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:105)
        ... 5 more{noformat}

After that, my application cannot insert any more data. Hector gets 
TimedOutException from Thrift:
{noformat}Thread-4 HConnectionManager.java 306 2012-06-14 10:12:56,034 
HConnectionManager  operateWithFailover   WARN    %Could not fullfill request 
on this host CassandraClient<172.22.1.36:9160-10> 
Thread-4 HConnectionManager.java 307 2012-06-14 10:12:56,034 HConnectionManager 
operateWithFailover      WARN    %Exception:  
me.prettyprint.hector.api.exceptions.HTimedOutException: TimedOutException()
        at 
me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:35)
        at 
me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:264)
        at 
me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:97)
        at 
me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)
        at 
patrycjusz.nosqltest.db.cassandra.CassandraHectorDbAdapter.commitTransaction(CassandraDbAdapter.java:63)
        at patrycjusz.nosqltest.DbTest.insertData(DbTest.java:459)
        at patrycjusz.nosqltest.gui.InsertPanel.executeTask(NePanel.java:154)
        at patrycjusz.nosqltest.gui.InsertPanel$1.run(NePanel.java:141)
        at java.lang.Thread.run(Unknown Source)
Caused by: TimedOutException()
        at 
org.apache.cassandra.thrift.Cassandra$batch_mutate_result.read(Cassandra.java:20269)
        at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78)
        at 
org.apache.cassandra.thrift.Cassandra$Client.recv_batch_mutate(Cassandra.java:922)
        at 
org.apache.cassandra.thrift.Cassandra$Client.batch_mutate(Cassandra.java:908)
        at 
me.prettyprint.cassandra.model.MutatorImpl$3.execute(MutatorImpl.java:246)
        at 
me.prettyprint.cassandra.model.MutatorImpl$3.execute(MutatorImpl.java:243)
        at 
me.prettyprint.cassandra.service.Operation.executeAndSetResult(Operation.java:103)
        at 
me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:258)
        ... 8 more{noformat}

    
> Data insertion fails because of commitlog rename failure
> --------------------------------------------------------
>
>                 Key: CASSANDRA-4337
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4337
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.1.1
>         Environment: - Node 1:
>    Hardware: Intel Xeon 2.83 GHz (4 cores), 24GB RAM, Dell VIRTUAL DISK SCSI 
> 500GB
>    System: Windows Server 2008 R2 x64
>    Java version: 7 update 4 x64
> - Node 2:
>     Hardware: Intel Xeon 2.83 GHz (4 cores), 8GB RAM, Dell VIRTUAL DISK SCSI 
> 500GB
>     System: Windows Server 2008 R2 x64
>       Java version: 7 update 4 x64
>            Reporter: Patrycjusz Matuszak
>         Attachments: system-node1.log, system-node2.log
>
>
> h3. Configuration
> Cassandra server configuration:
> {noformat}heap size: 4 GB
> seed_provider:
>     - class_name: org.apache.cassandra.locator.SimpleSeedProvider
>       parameters:
>           - seeds: "xxx.xxx.xxx.10,xxx.xxx.xxx.11"
> listen_address: xxx.xxx.xxx.10
> rpc_address: 0.0.0.0
> rpc_port: 9160
> rpc_timeout_in_ms: 20000
> endpoint_snitch: PropertyFileSnitch{noformat}
> cassandra-topology.properties
> {noformat}xxx.xxx.xxx.10=datacenter1:rack1
> xxx.xxx.xxx.11=datacenter1:rack1
> default=datacenter1:rack1{noformat}
> Ring configuration:
> {noformat}Address         DC          Rack        Status State   Load         
>    Effective-Ownership Token
>                                                                               
>              85070591730234615865843651857942052864
> xxx.xxx.xxx.10  datacenter1 rack1       Up     Normal  23,11 kB        
> 100,00%             0
> xxx.xxx.xxx.11  datacenter1 rack1       Up     Normal  23,25 kB        
> 100,00%             85070591730234615865843651857942052864{noformat}
> h3.Problem
> I have ctreated keyspace and column family using CLI commands:
> {noformat}create keyspace testks with placement_strategy = 
> 'org.apache.cassandra.locator.NetworkTopologyStrategy' and strategy_options = 
> {datacenter1:2};
> use testks;
> create column family testcf;{noformat}
> Then I started my Java application, which inserts 50 000 000 rows to created 
> column family using Hector client. Client is connected to node 1.
> After about 30 seconds (160 000 rows were inserted) Cassandra server on node 
> 1 throws an exception:
> {noformat}ERROR [COMMIT-LOG-ALLOCATOR] 2012-06-13 10:26:38,393 
> AbstractCassandraDaemon.java (line 134) Exception in thread 
> Thread[COMMIT-LOG-ALLOCATOR,5,main]
> java.io.IOError: java.io.IOException: Rename from 
> c:\apache-cassandra\storage\commitlog\CommitLog-7345742389552.log to 
> 7475933520374 failed
>       at 
> org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:127)
>       at 
> org.apache.cassandra.db.commitlog.CommitLogSegment.recycle(CommitLogSegment.java:204)
>       at 
> org.apache.cassandra.db.commitlog.CommitLogAllocator$2.run(CommitLogAllocator.java:166)
>       at 
> org.apache.cassandra.db.commitlog.CommitLogAllocator$1.runMayThrow(CommitLogAllocator.java:95)
>       at 
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
>       at java.lang.Thread.run(Thread.java:722)
> Caused by: java.io.IOException: Rename from 
> c:\apache-cassandra\storage\commitlog\CommitLog-7345742389552.log to 
> 7475933520374 failed
>       at 
> org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:105)
>       ... 5 more{noformat}
>       
> Then, few seconds later Cassandra server on node 2 throws the same exception:
> {noformat}ERROR [COMMIT-LOG-ALLOCATOR] 2012-06-14 10:26:44,005 
> AbstractCassandraDaemon.java (line 134) Exception in thread 
> Thread[COMMIT-LOG-ALLOCATOR,5,main]
> java.io.IOError: java.io.IOException: Rename from 
> c:\apache-cassandra\storage\commitlog\CommitLog-7320337904033.log to 
> 7437675489307 failed
>       at 
> org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:127)
>       at 
> org.apache.cassandra.db.commitlog.CommitLogSegment.recycle(CommitLogSegment.java:204)
>       at 
> org.apache.cassandra.db.commitlog.CommitLogAllocator$2.run(CommitLogAllocator.java:166)
>       at 
> org.apache.cassandra.db.commitlog.CommitLogAllocator$1.runMayThrow(CommitLogAllocator.java:95)
>       at 
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
>       at java.lang.Thread.run(Unknown Source)
> Caused by: java.io.IOException: Rename from 
> c:\apache-cassandra\storage\commitlog\CommitLog-7320337904033.log to 
> 7437675489307 failed
>       at 
> org.apache.cassandra.db.commitlog.CommitLogSegment.<init>(CommitLogSegment.java:105)
>       ... 5 more{noformat}
> After that, my application cannot insert any more data. Hector gets 
> TimedOutException from Thrift:
> {noformat}Thread-4 HConnectionManager.java 306 2012-06-14 10:26:56,034 
> HConnectionManager  operateWithFailover         WARN    %Could not fullfill 
> request on this host CassandraClient<xxx.xxx.xxx.10:9160-10> 
> Thread-4 HConnectionManager.java 307 2012-06-14 10:26:56,034 
> HConnectionManager operateWithFailover    WARN    %Exception:  
> me.prettyprint.hector.api.exceptions.HTimedOutException: TimedOutException()
>       at 
> me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:35)
>       at 
> me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:264)
>       at 
> me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:97)
>       at 
> me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)
>       at 
> patrycjusz.nosqltest.db.cassandra.CassandraHectorDbAdapter.commitTransaction(CassandraDbAdapter.java:63)
>       at patrycjusz.nosqltest.DbTest.insertData(DbTest.java:459)
>       at patrycjusz.nosqltest.gui.InsertPanel.executeTask(NePanel.java:154)
>       at patrycjusz.nosqltest.gui.InsertPanel$1.run(NePanel.java:141)
>       at java.lang.Thread.run(Unknown Source)
> Caused by: TimedOutException()
>       at 
> org.apache.cassandra.thrift.Cassandra$batch_mutate_result.read(Cassandra.java:20269)
>       at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78)
>       at 
> org.apache.cassandra.thrift.Cassandra$Client.recv_batch_mutate(Cassandra.java:922)
>       at 
> org.apache.cassandra.thrift.Cassandra$Client.batch_mutate(Cassandra.java:908)
>       at 
> me.prettyprint.cassandra.model.MutatorImpl$3.execute(MutatorImpl.java:246)
>       at 
> me.prettyprint.cassandra.model.MutatorImpl$3.execute(MutatorImpl.java:243)
>       at 
> me.prettyprint.cassandra.service.Operation.executeAndSetResult(Operation.java:103)
>       at 
> me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:258)
>       ... 8 more{noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to