Build: #15 was successful Child of CASASPECS-RELEASE674TESTCASALITHPY312-20

Build result summary

Details

Completed
Queue duration
1 second
Duration
858 minutes
Labels
None
Revision
8a438e2bda026d614fdb20f6a2a0652610a6dce4
Total tests
9
Successful since
#11 ()

Tests

  • 0 New failures
  • 0 Existing failures
  • 0 Fixed

Code commits

Author Commit Message Commit date
Rui Xue Rui Xue 8a438e2bda026d614fdb20f6a2a0652610a6dce4 Pull request #1051: CAS-14799
Merge in CASA/casa6 from CAS-14799 to release/6.7.4

* commit '15507f974958f27189bd63c7f0aa56f675d47e82':
  CAS-14799: Fix out-of-bounds MPI segmentation faults in BriggsCubeWeightor
  CAS-14799: Fix ncores-dependent tclean segmentation fault in `BriggsCubeWeightor`
Rui Xue Rui Xue ee5a2ce7e7787c33e9dcdfafc1f46122d7da2010 Pull request #1053: CAS-14800
Merge in CASA/casa6 from CAS-14800 to release/6.7.4

* commit '32bd285788b94bc1fb0268d3934f4fca77978bdb':
  CAS-14800: Handle missing residual images when constructing minor cycle summary
  CAS-14800: Optimize image processing by caching tool handles in fill_summary_minor to avoid redundant open/close operations
Rui Xue Rui Xue 32bd285788b94bc1fb0268d3934f4fca77978bdb CAS-14800: Handle missing residual images when constructing minor cycle summary
Rui Xue Rui Xue 37a8994992f0b38a119462e634ac900ecc482113 CAS-14800: Optimize image processing by caching tool handles in fill_summary_minor to avoid redundant open/close operations
Rui Xue Rui Xue 15507f974958f27189bd63c7f0aa56f675d47e82 CAS-14799: Fix out-of-bounds MPI segmentation faults in BriggsCubeWeightor
The SynthesisImager uses BriggsCubeWeightor to compute weights for the image cube. During distributed MPI execution (`ncores > 1`), the output cube's spectral axis is partitioned across multiple nodes into smaller local subcubes.

When evaluating MS data channels, `GridFT::channelMap` maps the visibilities' frequencies into the local subcube's channel indices. If an MS contains dataset frequencies (e.g., from large Doppler swings or wide ephemeris velocity changes) that land *above* the local MPI subcube's maximum channel, `channelMap` returns an index exceeding the local array bounds.

Previously, BriggsCubeWeightor only checked the lower bound (`chanMap(chn) > -1`) before using the calculated index to access `wgtDensity` and the `f2_p`/`d2_p` arrays. Accessing these arrays with indices belonging to higher MPI partitions resulted in unconstrained out-of-bounds memory accesses, causing silent heap corruption or explicit Segmentation Faults, heavily dependent on the MPI slicing and dataset footprint.

This commit resolves the issue by introducing strict upper-bound channel footprint constraints (`chanMap(chn) < shape()[3]`) in both `weightUniform` and `getWeightUniform`. Data channels that mathematically fall outside the upper bounds of the local MPI partition are now securely ignored.

Jira issues

IssueDescriptionStatus
Unknown Issue TypeCAS-14799Could not obtain issue details from Jira
Unknown Issue TypeCAS-14800Could not obtain issue details from Jira