I have played with a test cluster, stopping cassandra on one node and
updating a row on another. I noticed a delay in delivering hinted
handoffs for which I don't know the rationale. After the node which
originally received the update noticed that the other server is up, it
waited 16 s before it started pushing the hints.
Here is the log:
INFO [GossipStage:1] 2012-02-23 20:05:32,516 StorageService.java (line
988) Node /192.0.2.1 state jump to normal
INFO [HintedHandoff:1] 2012-02-23 20:05:49,766
HintedHandOffManager.java (line 296) Started hinted handoff for token: 1
with IP: /192.0.2.1
INFO [HintedHandoff:1] 2012-02-23 20:05:50,048 ColumnFamilyStore.java
(line 704) Enqueuing flush of
Memtable-HintsColumnFamily@1352140719(205/1639 serialized/live bytes, 2 ops)
INFO [FlushWriter:31] 2012-02-23 20:05:50,049 Memtable.java (line 246)
Writing Memtable-HintsColumnFamily@1352140719(205/1639 serialized/live
bytes, 2 ops)
INFO [FlushWriter:31] 2012-02-23 20:05:50,192 Memtable.java (line 283)
Completed flushing
/media/data/cassandra/data/system/HintsColumnFamily-hc-10-Data.db (290
bytes)
INFO [CompactionExecutor:70] 2012-02-23 20:05:50,193
CompactionTask.java (line 113) Compacting
[SSTableReader(path='/media/data/cassandra/data/system/HintsColumnFamily-hc-10-Data.db'),
SSTableReader(path='/media/data/cassandra/data/system/HintsColumnFamily-hc-9-Data.db')]
INFO [HintedHandoff:1] 2012-02-23 20:05:50,195
HintedHandOffManager.java (line 373) Finished hinted handoff of 1 rows
to endpoint /192.0.2.1
- hinted handoff 16 s delay Hontvári József Levente
-