Пример #1
0
void RepoTxn::step(RepoQuery& query) {
  try {
    query.step();
  } catch (const std::exception&) {
    rollback();
    throw;
  }
}
Пример #2
0
void RepoTxn::exec(RepoQuery& query) {
  try {
    query.exec();
  } catch (const std::exception& e) {
    rollback();
    TRACE(4, "RepoTxn::%s(repo=%p) caught '%s'\n",
          __func__, &m_repo, e.what());
    throw;
  }
}
Пример #3
0
void RepoTxn::exec(RepoQuery& query) {
  ROLLBACK_GUARD([&] {
      query.exec();
    });
}
Пример #4
0
void RepoTxn::step(RepoQuery& query) {
  ROLLBACK_GUARD([&] {
      query.step();
    });
}