Ogre's manual object manages hardware buffers for you, so yes, one you create them they are uploaded to the GPU. Once you copy the data in PolyVox::Mesh objects to Ogre's manual objects, you no long need PolyVox::Mesh objects. All you have to do now is manage the pointers to these manual objects.
So we have the PolyVox::Volume which stores the volumetric data for us. You want to divide the world into 32^3 regions, fine. We already have the volumetric data in the volume associated to each of these region, but we also have some extra data beside the volume data that is also associated with the region, things like Ogre's manual object, for example. We need a logical representation of the region and store this. The point is we need a data structure to represent the region and storage for these, beyond just PolyVox::Volume. In my app, I have a small structure called PageRegion, which does exactly this. Actually you don't have to do this if you don't plan on doing any paging. Although, beside paging there are other uses for having a data structure representing regions.
This brings us to paging. Suppose you start the world with a camera position, we have already figure out that if you want a 40m view radius, plus also number of *regions* that represent this 40m view radius, 10 across. So, we just loop through each region and load it. If you don't need paging then we're done. If you need paging, then you need to figure out new regions to load as you move the camera. How to do this?
You can use Ogre' paging system. Ogre' paging system works with Pages. In our case, each page corresponds with our definition of a region, given above. Each Ogre page has an ID, which is computed from it's page x, y. Ogre's pages has a ratio of One page per Page Dimension. Specifically for our case, it's just One page per 32 voxels. Thus we can directly correspond Ogre's page to our region.
In Ogre's paging system, the system will call load / unload methods as provided by you. With these functions, it will pass in the page x, y, with this you can then take the appropriate action such as loading, unloading a page. Oh yeah, you can use the Ogre's page ID as the key in to your page storage.
In my own clone of PolyVOx I've implemented an example paging system. You can reference it. It basically does what I described above.
https://gitorious.org/~beyzend/polyvox/ ... eManager.hBTW my paging system only does 2D paging but it's easily converted to 3D. In the end I suggest looking over at my paging example then use Ogre's paging system, since it does 3D paging and 2D paging.
....
Oh course you don't have to do this at all. There may be other ways of doing this.