I think we need to bump up the minimum code version here too. The meaning of the fields has changed too much — if we have different data and index pools, and an older daemon somehow starts up and decodes a new encoding, then it will try and use the data pool for everything. We really can't have that.
We could also gate it some other way, or conditionally set the minimum version differently if data_pool and index_pool differ, but I doubt that's worth the effort.