docs: @Override
      public void recoveryComplete() throws LogClosedException, InternalLogException, LogIncompatibleException, LogIncompatibleException {
          if (tc.isEntryEnabled())
              Tr.entry(tc, "recoveryComplete", this);
  
          // If this recovery log instance has been marked as incompatible then throw an exception
          // accordingly.
          if (incompatible()) {
              if (tc.isEntryEnabled())
                  Tr.exit(tc, "recoveryComplete", "LogIncompatibleException");
              throw new LogIncompatibleException();
          }
  
          // If this recovery log instance has experienced a serious internal error then prevent this operation from
          // executing.
          if (failed()) {
              if (tc.isEntryEnabled())
                  Tr.exit(tc, "recoveryComplete", this);
              throw new InternalLogException(null);
          }
  
          // Check that the log is open.
          if (_closesRequired == 0) {
              if (tc.isEntryEnabled())
                  Tr.exit(tc, "recoveryComplete", "LogClosedException");
              throw new LogClosedException(null);
          }
  
          if (tc.isEntryEnabled())
              Tr.exit(tc, "recoveryComplete");
      }