[
https://issues.apache.org/jira/browse/CASSANDRA-2394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13029630#comment-13029630
]
Thibaut edited comment on CASSANDRA-2394 at 5/5/11 10:45 PM:
-------------------------------------------------------------
I did grep the cassandra log for errors and no error showed up.
There were errors in kern.log. (reading errors) On another server before, after
seeing the reading errors, I did try to copy the cassandra data directory and
it caused input/output errors. I didn't try this on the latest server where
this error occured, but I suppose it would have caused input/output errors as
well.
Yes, it will still repond from any node (our application connects locally
first, and these nodes are also not replying), but very very very slowly (e.g.
maybe 1% of normal cluster performance) . Before it did show up on the entire
cluster a massive commands/responds pending queue (> 1000, version 0.7.4 on all
20 nodes as far as I can remember). Normally the queue has about 0-5 entries at
most.
I didn't output it when it occured on the latest server. Iterating over a table
with hector will be continoulsy paused by timeout exceptions. Even if our
application is turned off and this is the only application running. I'm also
using the dynamic snitch with 0.8 badness threshold.
Replication level is set to 3 (EDIT 3 that ist). So if one node goes down, it
should still work as 2 nodes are still available.
And as I said before, stopping cassandra on the faulty node will nearly
instantly return proper cluster performance.
What can help you? Shall I do a jstack trace next time the error occurs? But
this can take some time until a hd dies. Do you know of a tool where I can
simulate a hd error (or very slow read)?
was (Author: tbritz):
I did grep the cassandra log for errors and no error showed up.
There were errors in kern.log. (reading errors) On another server before, after
seeing the reading errors, I did try to copy the cassandra data directory and
it caused input/output errors. I didn't try this on the latest server where
this error occured, but I suppose it would have caused input/output errors as
well.
Yes, it will still repond from any node (our application connects locally
first, and these nodes are also not replying), but very very very slowly (e.g.
maybe 1% of normal cluster performance) . Before it did show up on the entire
cluster a massive commands/responds pending queue (> 1000, version 0.7.4 on all
20 nodes as far as I can remember). Normally the queue has about 0-5 entries at
most.
I didn't output it when it occured on the latest server. Iterating over a table
with hector will be continoulsy paused by timeout exceptions. Even if our
application is turned off and this is the only application running. I'm also
using the dynamic snitch with 0.8 badness threshold.
Replication level is set to 4. So if one node goes down, it should still work
as 2 nodes are still available.
And as I said before, stopping cassandra on the faulty node will nearly
instantly return proper cluster performance.
What can help you? Shall I do a jstack trace next time the error occurs? But
this can take some time until a hd dies. Do you know of a tool where I can
simulate a hd error (or very slow read)?
> Faulty hd kills cluster performance
> -----------------------------------
>
> Key: CASSANDRA-2394
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2394
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.7.4
> Reporter: Thibaut
> Priority: Minor
> Fix For: 0.7.6
>
>
> Hi,
> About every week, a node from our main cluster (>100 nodes) has a faulty hd
> (Listing the cassandra data storage directoy triggers an input/output error).
> Whenever this occurs, I see many timeoutexceptions in our application on
> various nodes which cause everything to run very very slowly. Keyrange scans
> just timeout and will sometimes never succeed. If I stop cassandra on the
> faulty node, everything runs normal again.
> It would be great to have some kind of monitoring thread in cassandra which
> marks a node as "down" if there are multiple read/write errors to the data
> directories. A single faulty hd on 1 node shouldn't affect global cluster
> performance.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira