When things stop working after updating MARS library or user code.

Frequently asked questions

When things stop working after updating MARS library or user code.

Postby zhouxinwei » Tue Feb 20, 2018 7:29 pm

Please make sure this is the case by following the strategy below:
1) re-run the same input file(s) with the old version to see if it still works. This rules out the possibility that accidental changes were introduced in the input file (then forgot), which is causing the issue.
2) if you are co-developing user-defined features with other people through GitLab/Git, make sure the new issue is not caused by a new Git commit. You could use bisection (for people who don't know what bisection is, see the end) between the old (working) commit and the current (not working) commit to pinpoint which commit is causing the issue, then contact the author of that commit to resolve it. Note that the code in GitLab is working progress, we are not necessarily stuck with the latest commit, and can always try an older commit with the updates of interest to see if that works.

If indeed it is the MARS library update that causes the issue, we are sincerely sorry for the inconvenience and will work with you closely and promptly to solve the issue. Please provide the following information so we can first reproduce the issue then fix it:
1) old version number that works
2) new version number that does not work
3) input files to reproduce the issue
4) if user code is used and hosted on GitLab, we need the repository name (e.g. MARS-UD-100) and the commit number (a string looks like 67824bd123e30...).
5) misc information [the more/detailed the better]: running environment (e.g. Mac, Windows, Linux, or HPC cluster), execution type (debug, OpenMP or MPI), etc.

-----------------------------------------------
Using bisection to find the culprit commit in Git/GitLab.
-----------------------------------------------

For example, if we have commit 1 - 10 in a chronological order, and commit 1 works while commit 10 does not. To find the culprit commit, we can first try commit 5 (middle of 1 and 10) to see if that works, if it works then try commit 8 (middle of 5 and 10), if not then try commit 3 (middle of 1 and 5), and so forth, until we find the first commit which does not work.

It's even faster if we combine this strategy with checking commit message to see whether the commit is relevant or not (skip checking it if not).
zhouxinwei
 
Posts: 208
Joined: Thu Jul 09, 2015 7:12 pm

Return to FAQs

Who is online

Users browsing this forum: No registered users and 2 guests

cron