(DEPRECATED. This project is no longer used or maintained at LiveRamp.) Hank is a high performance distributed key-value NoSQL database that we built and use at LiveRamp. It is designed for very large data stores that dwarf the amount of available main memory and for randomly distributed read/write workloads that far exceed the capacity of memory-based caches. More specifically, it is optimized for very low latency random read queries and for very high throughput incremental batch writes.
Other
173
stars
66
forks
source link
TestUpdateManager.testInterruptedUpdateTask is flaky #312
TestUpdateManager.testInterruptedUpdateTask periodically fails with a "Should throw an IOException when update is interrupted." error. When this happens another test in the same process, usually testUpdate, fails with an unexpected exception. I haven't examined this in detail, but if I had to guess, I'd say that occasionally all of the tasks in dataDirectoryToExecutorService finish before update has a chance to call awaitTermination, and so the interruption gets ignored until it is picked up in a subsequent test. I'm not sure what we can do about this other than rerun a test when it fails.
TestUpdateManager.testInterruptedUpdateTask periodically fails with a "Should throw an IOException when update is interrupted." error. When this happens another test in the same process, usually testUpdate, fails with an unexpected exception. I haven't examined this in detail, but if I had to guess, I'd say that occasionally all of the tasks in dataDirectoryToExecutorService finish before update has a chance to call awaitTermination, and so the interruption gets ignored until it is picked up in a subsequent test. I'm not sure what we can do about this other than rerun a test when it fails.