Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-36111

Bug in job.py related to functionality for archiving data files in 3.4

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: 3.4.16
    • Fix Version/s: 3.4.17
    • Component/s: Testing Infrastructure
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Sprint:
      TIG 2018-07-30

      Description

      For some reason one additional unnecessary line is present in 3.4 commit for data files archiving functionality - the bug is not present in 3.6 and master branches.

      If you run some tests in 3.4.16 like so:

      buildscripts/resmoke.py --continueOnFailure --jobs=4 --shuffle --storageEngine=wiredTiger --suites=decimal --reportFile=decimal_wiredTiger.json
      

      you'll get:

      [executor:js_test:job1] 2018-07-13T11:54:58.522+0200 Encountered an error during test execution.
      Traceback (most recent call last):
        File "/home/plavi/test/mongodb-linux-x86_64-ubuntu1604-3.4.16/buildscripts/resmokelib/testing/job.py", line 46, in __call__
          self._run(queue, interrupt_flag)
        File "/home/plavi/test/mongodb-linux-x86_64-ubuntu1604-3.4.16/buildscripts/resmokelib/testing/job.py", line 86, in _run
          self._execute_test(test)
        File "/home/plavi/test/mongodb-linux-x86_64-ubuntu1604-3.4.16/buildscripts/resmokelib/testing/job.py", line 118, in _execute_test
          self.archival.archive(self.logger, test, success)
      AttributeError: 'NoneType' object has no attribute 'archive'
      ...
      [executor:js_test] 2018-07-13T11:54:58.762+0200 Summary: 4 test(s) ran in 0.35 seconds (4 succeeded, 10 were skipped, 0 failed, 0 errored)
      [resmoke] 2018-07-13T11:54:58.762+0200 ================================================================================
      [resmoke] 2018-07-13T11:54:58.762+0200 Summary of decimal suite: 4 test(s) ran in 0.99 seconds (4 succeeded, 10 were skipped, 0 failed, 0 errored)
          js_tests: 4 test(s) ran in 0.35 seconds (4 succeeded, 10 were skipped, 0 failed, 0 errored)
      

      Line 118 in job.py (3.4.16) is excessive and probably should be removed:

      116         finally:
      117             success = self.report.find_test_info(test).status == "pass"
      118             self.archival.archive(self.logger, test, success)
      119             if self.archival:
      120                 self.archival.archive(self.logger, test, success)
      

      Without it:

      [executor:js_test] 2018-07-13T11:33:59.997+0200 Summary: All 28 test(s) passed in 1.43 seconds.
      [resmoke] 2018-07-13T11:33:59.998+0200 ================================================================================
      [resmoke] 2018-07-13T11:33:59.998+0200 Summary of decimal suite: 28 test(s) ran in 1.96 seconds (28 succeeded, 0 were skipped, 0 failed, 0 errored)
          js_tests: All 28 test(s) passed in 1.43 seconds.
      

      It makes problems with running the tests for 3.4 if you don't specify archive file parameter and it's not visible in 3.6 and master.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              max.hirschhorn Max Hirschhorn
              Reporter:
              tplavcic Tomislav Plavcic
              Participants:
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: