if let posts = Post.objectsWithPredicate(NSPredicate(format: "active == FALSE")) as RLMResults? {
    realm.beginWriteTransaction()
    for postObj in posts {
        if let post = postObj as? Post {
            post.active = true
        }
    }
    realm.commitWriteTransaction()
}

例えばこのような更新処理があったとした場合に、更新が1つ飛ばしずつしかできなくなります。
理由としては、RLMResultsが常に最新状態になるため、post.active=trueするたびにpostsからオブジェクトがなくなっていくことが原因だと思われます。

このような場合にはどのような書き方をすることで、適切に全てのレコードを更新できるのでしょうか?