Hi,
I'm trying to use pmemlog to build a database logging subsystem.
1) Is pmem_append atomic?
I read the source code on the pmemlog_append function in the pmemlog library. It seems to me that the append function is not atomic which means that higher level application, e.g. database, still needs to handle scenarios like partial writes.
I just want to confirm that if this is the case or not. If not, can you help point me to the code where atomicity is provided?
2) does pmem_log use any redo/undo logging?
3) If I understand correctly, pmemobj uses redo/undo logging to provide transaction, is there any document that discusses details of pmemobj's logging subsystem?
Thanks!