Ticket #7778 (closed: fixed)

Opened 7 years ago

Last modified 5 years ago

Algorithms accessing the AnalysisDataService when they shouldn't be

Reported by: Russell Taylor Owned by: Russell Taylor
Priority: major Milestone: Release 3.2
Component: Framework Keywords: Maintenance
Cc: Blocked By:
Blocking: Tester: Samuel Jackson

Description

In general, algorithms shouldn't need to go directly to the ADS as the Algorithm base class takes care of most of that side of things.

This task is to check all algorithms that have a direct call to the AnalysisDataService and correct them if appropriate. The algorithms in Crystal seem to be particularly guilty.

Change History

comment:1 Changed 7 years ago by Russell Taylor

  • Milestone changed from Backlog to Release 3.1

comment:2 Changed 7 years ago by Russell Taylor

  • Milestone changed from Release 3.1 to Backlog

comment:3 Changed 7 years ago by Russell Taylor

  • Milestone changed from Backlog to Release 3.2

comment:4 Changed 7 years ago by Nick Draper

  • Status changed from new to assigned

Bulk move of tickets out of triage (new) to assigned at the introduction of the triage state

comment:5 Changed 6 years ago by Russell Taylor

  • Status changed from assigned to inprogress

Re #7778. Eliminate erroneous use of AnalysisDataService.

In general, algorithms shouldn't be dealing directly with the ADS, the Algorithm base class takes care of these interactions.

Changeset: 731948d0c899769ca5882bb55fc2e9d4f5abd94c

comment:6 Changed 6 years ago by Russell Taylor

Re #7778. Remove unneeded use of the AnalysisDataService.

Changeset: 10b0d1b60b5e1f1d2d48b82eb927424bbc72e1f2

comment:7 Changed 6 years ago by Russell Taylor

Re #7778. Get pointer out of property, not ADS.

Changeset: 3cc9add8762829f9dc88dfc8fb6dc3929de78673

comment:8 Changed 6 years ago by Russell Taylor

Re #7778. Remove unnecessary references to the ADS.

Changeset: 95ef0115ffe661e094552fd7e821a2d6dec7c066

comment:9 Changed 6 years ago by Russell Taylor

Re #7778. Revert changes to FilterEvents.

It turns out that FilterEvents is relying on workspaces being in the ADS before the algorithm has completed so that it can call GroupWorkspaces on them. Probably the proper solution would be to refactor so that they are placed directly into a group, but I'm not going there now.

Changeset: 0eb02a6bdf7fc27867085029fdb16f7d4bd7341b

comment:10 Changed 6 years ago by Russell Taylor

  • Status changed from inprogress to verify
  • Resolution set to fixed

I've just taken the low hanging fruit here, such as algorithms getting workspaces out of the ADS instead of the property. Other places would need more extensive refactoring to deal with this (and in a few places it's probably necessary to go to it).

Test by inspection of code and successful build status

comment:11 Changed 6 years ago by Samuel Jackson

  • Status changed from verify to verifying
  • Tester set to Samuel Jackson

comment:12 Changed 6 years ago by Samuel Jackson

  • Status changed from verifying to closed

Merge remote-tracking branch 'origin/bugfix/7778_unnecessary_ads_usage'

Full changeset: 93f1ac4140c673e02d288658179422ed1b327cb9

comment:13 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 8623

Note: See TracTickets for help on using tickets.