code: private Completable clear() {
          return Completable.fromAction(() -> count.set(0))
                  //xian connection's close method is reentrant
                  .andThen(getConnection().close())
                  .andThen(doClear());
      }
docs: Clear this transaction.
  Clearing transaction does the following steps:<br>
  1. clear cache   <br>
  2. close the connection  <br>
  3. set counter to 0.
  <p>
  This method must be implemented to be reentrant to make calling this method more than once to be safe .
  </p>
  
  @return deferred result