Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-13046

Fix race condition with temp files in meas_base

    XMLWordPrintable

    Details

    • Team:
      Architecture

      Description

      The following build failed on OSX but succeeded for all Centos builds:

      https://ci.lsst.codes/blue/organizations/jenkins/stack-os-matrix/detail/stack-os-matrix/27194/pipeline/

      Given that the code in this commit doesn't touch C++, let alone meas_base, this is highly likely to be a random/non-deterministic failure, so debugging might be worthwhile to start reducing the frequency with which these happen.

        Attachments

          Activity

          Hide
          jhoblitt Joshua Hoblitt added a comment -

          I'd suggest first seeing if the failure can be reproduced at all over many runs. Random failures are usually either a concurrency problem or something wrong with the build env (ie., the disk filled).

          Show
          jhoblitt Joshua Hoblitt added a comment - I'd suggest first seeing if the failure can be reproduced at all over many runs. Random failures are usually either a concurrency problem or something wrong with the build env (ie., the disk filled).
          Hide
          mfisherlevine Merlin Fisher-Levine added a comment -
          Show
          mfisherlevine Merlin Fisher-Levine added a comment - Fair enough, rerunning here: https://ci.lsst.codes/job/stack-os-matrix/27195/console
          Hide
          tjenness Tim Jenness added a comment -

          My money is on a race condition with getTempFilePath since there are two test methods called testSetPluginLevel in that file but getTempFilePath only uses the file name and test method when forming the temp file name (and not the test class). It's definitely not a CI problem.

          Show
          tjenness Tim Jenness added a comment - My money is on a race condition with getTempFilePath since there are two test methods called testSetPluginLevel in that file but getTempFilePath only uses the file name and test method when forming the temp file name (and not the test class). It's definitely not a CI problem.
          Hide
          tjenness Tim Jenness added a comment -

          The simplest fix for now is to rename the duplicate test method names to be something different (there are 6 usages so we should check that all six test methods are unique).

          Show
          tjenness Tim Jenness added a comment - The simplest fix for now is to rename the duplicate test method names to be something different (there are 6 usages so we should check that all six test methods are unique).
          Hide
          tjenness Tim Jenness added a comment -

          Paul Price would you mind looking at this? I've added a random component to your file path. I've added tests that fail without this fix and also added a test for nested context manager usage.

          Show
          tjenness Tim Jenness added a comment - Paul Price would you mind looking at this? I've added a random component to your file path. I've added tests that fail without this fix and also added a test for nested context manager usage.
          Hide
          price Paul Price added a comment -

          Very nice, thanks!

          Minor comment on GitHub PR.

          Show
          price Paul Price added a comment - Very nice, thanks! Minor comment on GitHub PR.

            People

            Assignee:
            tjenness Tim Jenness
            Reporter:
            mfisherlevine Merlin Fisher-Levine
            Reviewers:
            Paul Price
            Watchers:
            John Swinbank, Joshua Hoblitt, Merlin Fisher-Levine, Paul Price, Tim Jenness
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Jenkins

                No builds found.