partition: Partition ID migration
Currently partition's are addressed using uin64 IDs. When RAFT replicas are used, each replica will keep an internal ID and another string based key constructed from storageName + partitionID to route to correct internal partition IDs. This will complicate the certain flows where we will need to be aware of RAFT status to refer to correct ID format. Instead moving to the composite ID format by default will eliminate the need for separate routing table for RAFT. For this refactoring, we need two things: 1- Changing all the reference to old uint64 format to be string 2- Adding migration to format existing structure and DB keys
In this commit, we are first introducing the migration without the actual partition ID refactoring. By doing so, we are ensuring backward compatibility:
Phase 1 (Current): Deploy migration code in disabled state
- Introduces forward/backward migration logic without activating it
- Establishes rollback safety net
Phase 2 (Next MR): Enable migration to transform partition ID structure
- Introduce the actual partition ID refactoring
- Set flag to true to activate the new partition ID structure
- Migration runs automatically on deployment
Rollback Safety: If issues arise after Phase 2, reverting to Phase 1 will trigger backward migration to restore original structure.
Relates to #6910