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

Afw tests/tickets2707.py fails on OS X

    XMLWordPrintable

Details

    • Bug
    • Status: Done
    • Resolution: Done
    • None
    • afw
    • 0.25
    • DRP W16-7
    • Data Release Production

    Description

      Recent afw builds on OS X are causing tests/ticket2707.py to fail with:

      ======================================================================
      FAIL: testMatchXy (__main__.MatchXyTest)
      ----------------------------------------------------------------------
      Traceback (most recent call last):
        File "tests/ticket2707.py", line 76, in testMatchXy
          self.assertEquals(m.first.getId() + self.nobj, m.second.getId())
      AssertionError: 18L != 16L
       
      ======================================================================
      FAIL: testMatchXyMatchControl (__main__.MatchXyTest)
      Test using MatchControl to return all matches
      ----------------------------------------------------------------------
      Traceback (most recent call last):
        File "tests/ticket2707.py", line 113, in testMatchXyMatchControl
          self.assertEquals(m.first.getId() + self.nobj, m.second.getId())
      AssertionError: 18L != 16L
       
      ----------------------------------------------------------------------
      

      rowen has also seen this failure on his mac, but a build on lsst-dev does not reproduce it. This test had been largely disabled until DM-5280. The changes to Match.cc in that ticket appear not to be responsible, as reverting that particular file still causes the test to fail.

      Attachments

        Issue Links

          Activity

            price Paul Price added a comment -

            I can reproduce this on my MacBook.

            price Paul Price added a comment - I can reproduce this on my MacBook.
            price Paul Price added a comment -

            ctslater, would you please check that this commit fixes the problem on your machine, and review it?

            price@price-laptop:~/LSST/afw (tickets/DM-5454 %=) $ git sub
            commit c5e9313df7150f9854ea5162e8474cd88113b414
            Author: Paul Price <price@astro.princeton.edu>
            Date:   Mon Mar 14 22:47:17 2016 -0400
             
                tests: fix matching test that failed on OSX
                
                The catalogs being matched had multiple exact matches, and so which
                particular match was output appears to depend on the compiler; but
                assumptions on which particular match should be output had been made
                in the test, which are apparently violated on OSX with clang.
                
                Removed the multiple exact matches and clarified the tests, including
                the addition of comments explaining how the tests are set up and what
                the results of particular tests should be.
             
             tests/ticket2707.py | 33 ++++++++++++++++++++++++++-------
             1 file changed, 26 insertions(+), 7 deletions(-)
            

            Here it is in action:

            price@price-laptop:~/LSST/lsstsw/build/afw (tickets/DM-5454=) $ python tests/ticket2707.py 
            ....
            ----------------------------------------------------------------------
            Ran 4 tests in 0.075s
             
            OK
            

            And before (on branch 'master'):

            price@price-laptop:~/LSST/lsstsw/build/afw (master=) $ python tests/ticket2707.py 
            FF..
            ======================================================================
            FAIL: testMatchXy (__main__.MatchXyTest)
            ----------------------------------------------------------------------
            Traceback (most recent call last):
              File "tests/ticket2707.py", line 76, in testMatchXy
                self.assertEquals(m.first.getId() + self.nobj, m.second.getId())
            AssertionError: 18L != 16L
             
            ======================================================================
            FAIL: testMatchXyMatchControl (__main__.MatchXyTest)
            Test using MatchControl to return all matches
            ----------------------------------------------------------------------
            Traceback (most recent call last):
              File "tests/ticket2707.py", line 112, in testMatchXyMatchControl
                self.assertEquals(m.first.getId() + self.nobj, m.second.getId())
            AssertionError: 18L != 16L
             
            ----------------------------------------------------------------------
            Ran 4 tests in 0.010s
             
            FAILED (failures=2)
            

            price Paul Price added a comment - ctslater , would you please check that this commit fixes the problem on your machine, and review it? price@price-laptop:~/LSST/afw (tickets/DM-5454 %=) $ git sub commit c5e9313df7150f9854ea5162e8474cd88113b414 Author: Paul Price <price@astro.princeton.edu> Date: Mon Mar 14 22:47:17 2016 -0400   tests: fix matching test that failed on OSX The catalogs being matched had multiple exact matches, and so which particular match was output appears to depend on the compiler; but assumptions on which particular match should be output had been made in the test, which are apparently violated on OSX with clang. Removed the multiple exact matches and clarified the tests, including the addition of comments explaining how the tests are set up and what the results of particular tests should be.   tests/ticket2707.py | 33 ++++++++++++++++++++++++++------- 1 file changed, 26 insertions(+), 7 deletions(-) Here it is in action: price@price-laptop:~/LSST/lsstsw/build/afw (tickets/DM-5454=) $ python tests/ticket2707.py .... ---------------------------------------------------------------------- Ran 4 tests in 0.075s   OK And before (on branch 'master'): price@price-laptop:~/LSST/lsstsw/build/afw (master=) $ python tests/ticket2707.py FF.. ====================================================================== FAIL: testMatchXy (__main__.MatchXyTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tests/ticket2707.py", line 76, in testMatchXy self.assertEquals(m.first.getId() + self.nobj, m.second.getId()) AssertionError: 18L != 16L   ====================================================================== FAIL: testMatchXyMatchControl (__main__.MatchXyTest) Test using MatchControl to return all matches ---------------------------------------------------------------------- Traceback (most recent call last): File "tests/ticket2707.py", line 112, in testMatchXyMatchControl self.assertEquals(m.first.getId() + self.nobj, m.second.getId()) AssertionError: 18L != 16L   ---------------------------------------------------------------------- Ran 4 tests in 0.010s   FAILED (failures=2)
            ctslater Colin Slater added a comment -

            Test passes for me, and the cleaned-up code is way more readable. Thanks for the quick turn around.

            ctslater Colin Slater added a comment - Test passes for me, and the cleaned-up code is way more readable. Thanks for the quick turn around.
            price Paul Price added a comment -

            Thanks Colin.

            Merged to master.

            price Paul Price added a comment - Thanks Colin. Merged to master.

            People

              price Paul Price
              ctslater Colin Slater
              Colin Slater
              Colin Slater, Paul Price, Russell Owen
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Jenkins

                  No builds found.