Hi Yupeng,
I'm not too concerned about the persist failing, what I'm concerned about the way things are failing. If you look at the logs I provided, you'll see this:
Uncaught exception in heartbeat executor, Heartbeat Thread shutting down
java.lang.RuntimeException: alluxio.exception.FileDoesNotExistException: Inode id 100,663,295 does not exist
Is it not possible to catch the FileDoesNotExist exception, log a message, and continue running?
Also, in my tests I'm seeing that once the heartbeat thread shuts down, async persistence is no longer functional until I reboot Alluxio. Is this expected (i.e. does the heartbeat thread handle all async persist requests?)? If so, I see this as more than a small annoyance to be worked around, but rather, something which needs to be addressed before ASYNC_THROUGH can be used in a meaningful way.
Thanks,
Adam