Been trying for a while to upgrade a really old database with a really new one, with no downtime , this I managed successfully with Slony-I . with slony 2 its is not possible to go from such an old version of PostgreSQL unfortunately, However Slony 1 worked great pretty much first time. The only fiddly and long process is setting up the slon_tools.conf file to identify all the table and sequence you need to replicate on your new shiny 9.1 release.I originally successfully replicated to 9.0 as well BTW.
The PostgreSQL 9 release allowed me to also test its own streaming replication , this meant that actually both master & slave of PostgreSQL 9.x needs to be up and running before migrating and replicating from 8.1 with slony 1. Got that tip from @DevrimGunduz himself no less.
Its actually not that difficult , Luckily for me If I mess up (not that I did as it happens!) I have all the power of VMWare to go back to an older snapshot.
