wal: encapsulate ER_WAL_IO
ER_WAL_IO is set on any WAL error if it was after journal_write() success. It is not correct, because there can be plenty of reasons. In WAL it could be an actual IO error or a cascading rollback in progress. When used for transactions, it could be an error related to synchronous transactions like a timeout, or a persistent ROLLBACK. These errors are overridden by ER_WAL_IO. The patch encapsulates the diag installation for bad journal write and for transaction rollback. The next patches are going to introduce more error codes and use proper ones to install a diag. Part of #6027
Showing
- src/box/applier.cc 5 additions, 5 deletionssrc/box/applier.cc
- src/box/journal.c 8 additions, 0 deletionssrc/box/journal.c
- src/box/journal.h 10 additions, 0 deletionssrc/box/journal.h
- src/box/raft.c 1 addition, 1 deletionsrc/box/raft.c
- src/box/txn.c 7 additions, 1 deletionsrc/box/txn.c
- src/box/txn.h 10 additions, 0 deletionssrc/box/txn.h
- src/box/txn_limbo.c 1 addition, 1 deletionsrc/box/txn_limbo.c
Loading
Please register or sign in to comment