long () { if (myEarliestKeepedRevision == -1) { try { while (myIterator.hasNext()) { final ChangesBunch changesBunch = myIterator.next(); if (changesBunch == null) { break; } addToLoaded(changesBunch); final List<CommittedChangeList> list = myAlreadyReaded.getList(); if (! list.isEmpty()) { myEarliestKeepedRevision = list.get(0).getNumber(); break; } } } catch (SwitchRevisionsProviderException e) { // means that committed cache now should be queried instead of internally cached // just return -1 -> queries will be redirected myEarliestKeepedRevision = -1; } } return myEarliestKeepedRevision; }