Dacă înțeleg bine, tu vrei de fapt o singură versiune, cea imediat următoarea, nu? Hai să facem asta ca lumea, în timp O(1). :-) Se poate cu o singură interogare deșteaptă, ceva de genul:

    $nextEntry = Model::factory('HistoryProblem')
      ->where('problemId', $entry->problemId)
      ->where_gt('created', $entry->created)
      ->order_by_desc('created')
      ->find_one();

Are sens? Și atunci `$nextEntry` va fi versiunea următoare, sau null dacă `$entry` este ultima versiune.