def _reindex_changeset(self, realm, feedback, finish_fb):
     """Iterate all changesets and call self.changeset_added on them"""
     all_repos = RepositoryManager(self.env).get_real_repositories()
     if not all_repos:
         return 0
     repo = all_repos.pop()
     def all_revs():
         rev = repo.oldest_rev
         yield rev
         while 1:
             rev = repo.next_rev(rev)
             if rev is None:
                 return
             yield rev
     def check(changeset, status):
         return status is None or changeset.date > to_datetime(int(status))
     resources = (repo.get_changeset(rev) for rev in all_revs())
     self.add_bulk_changesets(resources)
     feedback(realm, resources)
     finish_fb(realm, resources)
     return 1