Opened 8 months ago

Closed 7 months ago

#2444 closed help (answered)

FCM Merge results in conflict

Reported by: mattjbr123 Owned by: ros
Priority: normal Component: FCM
Keywords: fcm, merge, conflict Cc:
Platform: Monsoon2 UM Version: 10.3

Description

Hi,

Having some trouble getting FCM to merge a couple branches.
In my rose suite u-aw119 I have the following um sources:
branches/pkg/Config/vn10.3.1_GlobalAtmos7p0@18672
branches/dev/mohitdalvi/vn10.3_nudg_impr_and_regional@16308
branches/dev/johnrostron/vn10.3_ensmember_seed@18955
branches/dev/mattbrown/vn10.3_um10.3_nudge_sep_regions@52914
branches/dev/mattbrown/vn10.3_nudging_merra@45841
and the base code is the vn10.3 trunk.

The fcm_make task fails with:

[FAIL] um/src/atmosphere/nudging/nudging_call_relax.F90: merge results in conflict
[FAIL]     merge output: /home/d04/mabro/cylc-run/u-aw119/share/fcm_make_um/.fcm-make/extract/merge/um/src/atmosphere/nudging/nudging_call_relax.F90.diff
[FAIL]     source from location  0: svn://puma.nerc.ac.uk/um.xm_svn/main/trunk/src/atmosphere/nudging/nudging_call_relax.F90@13189
[FAIL]     source from location  2: svn://puma.nerc.ac.uk/um.xm_svn/main/branches/dev/mohitdalvi/vn10.3_nudg_impr_and_regional/src/atmosphere/nudging/nudging_call_relax.F90@16308
[FAIL] !!! source from location  4: svn://puma.nerc.ac.uk/um.xm_svn/main/branches/dev/mattbrown/vn10.3_um10.3_nudge_sep_regions/src/atmosphere/nudging/nudging_call_relax.F90@52914

and I can see that it is unable to resolve the differences in the nudging_call_relax.F90 file in branches 2 and 4. However there are no directly conflicting lines, there are simply 2 chunks of code in source 4 that are not in source 2. Looking at the diff file in the error message shows that it can't decide whether to put those chunks of code into the final merge or not.
I have tried to resolve this by running fcm merge manually on the two branches from exvmsrose but fcm informs me the command would result in no change.

I'm assuming this is all expected behavior somehow, but I can't work out why/how to solve it!
The branches are located at /home/d04/mabro/branches/um/ on Monsoon, and I have attached the two problematic files below.

Many thanks,
Matt

Attachments (2)

nudging_call_relax2.F90 (7.1 KB) - added by mattjbr123 8 months ago.
nudging_call_relax4.F90 (9.4 KB) - added by mattjbr123 8 months ago.

Download all attachments as: .zip

Change History (8)

Changed 8 months ago by mattjbr123

Changed 8 months ago by mattjbr123

comment:1 Changed 8 months ago by ros

  • Owner changed from um_support to ros
  • Status changed from new to assigned

Hi Matt,

Have you modified your suite since submitting this query as I have just run your suite and it has compiled fine?

If not I would suggest doing a clean build (rose suite-run --new) to delete the cylc-run/u-aw119 and do a build from scratch.

The other thing I noticed - it looks like everything that is in Mohit's branch is in yours? If that is the case then just switch off Mohit's branch.

Cheers,
Ros.

comment:2 Changed 8 months ago by mattjbr123

Hi Ros,

I've just run the suite again and it still fails for me, with the same error. This was with the —new option. I haven't changed anything in the original suite between my post and you running it, so not sure what's causing the error at my end…

There are some small differences in other files between my and Mohit's branch, I'll need to take a closer look to see if they are actually necessary…

Matt

comment:3 Changed 8 months ago by ros

Okay. I see why mine worked. It's because I checked out your suite and you're using a newer version of the branch 53046 in your working copy versus my 45816! I'll take another look.

comment:4 Changed 8 months ago by mattjbr123

Well spotted, I have now committed the suite.

Matt

comment:5 Changed 8 months ago by mattjbr123

I have been through Mohit's branch and there is nothing in there I actually need, so I have removed it and now the suite compiles fine.

Matt

comment:6 Changed 7 months ago by ros

  • Resolution set to answered
  • Status changed from assigned to closed
Note: See TracTickets for help on using tickets.