File tree Expand file tree Collapse file tree 1 file changed +12
-2
lines changed Expand file tree Collapse file tree 1 file changed +12
-2
lines changed Original file line number Diff line number Diff line change @@ -670,7 +670,12 @@ let receive_start ~dbg ~sr ~vdi_info ~id ~similar =
670
670
| Some vdi ->
671
671
debug " Cloning VDI %s" vdi.vdi;
672
672
let vdi = add_to_sm_config vdi " base_mirror" id in
673
- Local.VDI. clone ~dbg ~sr ~vdi_info: vdi
673
+ let vdi_clone = Local.VDI. clone ~dbg ~sr ~vdi_info: vdi in
674
+ if vdi_clone.virtual_size <> vdi_info.virtual_size then begin
675
+ let new_size = Local.VDI. resize ~dbg ~sr ~vdi: vdi_clone.vdi ~new_size: vdi_info.virtual_size in
676
+ debug " Resize local VDI %s to %Ld: result %Ld" vdi_clone.vdi vdi_info.virtual_size new_size;
677
+ end ;
678
+ vdi_clone
674
679
| None ->
675
680
debug " Creating a blank remote VDI" ;
676
681
Local.VDI. create ~dbg ~sr ~vdi_info
@@ -826,7 +831,12 @@ let copy ~task ~dbg ~sr ~vdi ~dp ~url ~dest =
826
831
let remote_base = match nearest with
827
832
| Some vdi ->
828
833
debug " Cloning VDI %s" vdi.vdi;
829
- Remote.VDI. clone ~dbg ~sr: dest ~vdi_info: vdi
834
+ let vdi_clone = Remote.VDI. clone ~dbg ~sr: dest ~vdi_info: vdi in
835
+ if vdi_clone.virtual_size <> local_vdi.virtual_size then begin
836
+ let new_size = Remote.VDI. resize ~dbg ~sr: dest ~vdi: vdi_clone.vdi ~new_size: local_vdi.virtual_size in
837
+ debug " Resize remote VDI %s to %Ld: result %Ld" vdi_clone.vdi local_vdi.virtual_size new_size;
838
+ end ;
839
+ vdi_clone
830
840
| None ->
831
841
debug " Creating a blank remote VDI" ;
832
842
Remote.VDI. create ~dbg ~sr: dest ~vdi_info: { local_vdi with sm_config = [] } in
You can’t perform that action at this time.
0 commit comments