I don't think that removeChunk is possible without some sort of synchronization.  It would be entirely possible that multiple threads could get inside removeChunk and process the oldStore more than 1 time.