Ticket #3748 (reopened)

Opened 9 years ago

Last modified 5 years ago

Exceptions thrown out of IArchiveSearch::getPath are not caught

Reported by: Russell Taylor Owned by: Roman Tolchenov
Priority: major Milestone: Backlog
Component: Framework Keywords:
Cc: Blocked By:
Blocking: Tester: Russell Taylor

Description (last modified by Roman Tolchenov) (diff)

....by anything other than the MantidPlot last-resort exception handler.

This applies equally to the SNS (Orbiter) & ISIS implementations.

Some scenarios where this happens:

  1. The network is down (e.g. by pulling the cable out!)
  2. You are at the SNS and select ISIS as your facility (& presumably vice-versa)
  3. You enable archive searching but don't have access to the archive enabled
  4. You choose a run number that doesn't exist

In the last case above, I think the exception may come from after the archive search part for Orbiter, which looks to be returning an empty string:

OrbiterDataArchive-[Debug] URL = 'https://orbiter.sns.gov/orbiter/taurus/service/webservice/OrbiterFindFileService.php/operation/findFile/format/space/fileName/PG3_999999999_event.nxs'
OrbiterDataArchive-[Debug] Filename[0] = ''
OrbiterDataArchive-[Debug] Returning Filename = ''

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Assertion violation: !_path.empty() [in file "src/File_UNIX.cpp", line 89]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
MantidPlot-[Fatal] Unexpected exception: Assertion violation

Change History

comment:1 Changed 9 years ago by Russell Taylor

  • Description modified (diff)

comment:2 Changed 9 years ago by Nick Draper

  • Status changed from new to assigned
  • Owner set to Roman Tolchenov
  • Milestone changed from Iteration 31 to Iteration 30

Fix only if it is quick

comment:3 Changed 9 years ago by Roman Tolchenov

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

In [14780]:

This could fix #3748.

comment:4 Changed 9 years ago by Russell Taylor

  • Status changed from verify to verifying
  • Tester set to Russell Taylor

comment:5 Changed 9 years ago by Russell Taylor

In [14782]:

Rethrow exception when unable to connect to Orbiter. Prevents (a later) exception, which propagates all the way to the top of MantidPlot. Re #3748.

comment:6 Changed 9 years ago by Russell Taylor

  • Status changed from verifying to reopened
  • Resolution fixed deleted

My change above resolves issue 1 (for Orbiter, at least). None of the other problems noted above are solved. However, these are all edge cases and do not actually crash MantidPlot, so I'd be inclined to move this ticket to the next iteration.

comment:7 Changed 9 years ago by Roman Tolchenov

  • Milestone changed from Iteration 30 to Iteration 31

OK

comment:8 Changed 9 years ago by Roman Tolchenov

1,2, and 4 work for me. Thinking of a way to check 3.

comment:9 Changed 9 years ago by Nick Draper

  • Milestone changed from Iteration 32 to Iteration 33

Moved to iteration 33 at iteration 32 code freeze

comment:10 Changed 8 years ago by Nick Draper

  • Milestone changed from Release 2.1 to Release 2.2

Moved at end of release 2.1

comment:11 Changed 8 years ago by Nick Draper

  • Milestone changed from Release 2.2 to Release 2.3

Moved at the end of release 2.2

comment:12 Changed 8 years ago by Nick Draper

  • Milestone changed from Release 2.3 to Release 2.4

Moved to release 2.4

comment:13 Changed 8 years ago by Nick Draper

  • Milestone changed from Release 2.4 to Release 2.5

Moved at the code freeze for release 2.4

comment:14 Changed 7 years ago by Nick Draper

  • Milestone changed from Release 2.5 to Release 2.6

Moved to r2.6 at the end of r2.5

comment:15 Changed 7 years ago by Nick Draper

  • Component changed from Mantid to Framework

comment:16 Changed 7 years ago by Nick Draper

  • Milestone changed from Release 2.6 to Backlog

Moved to the Backlog after the code freeze for R2.6

comment:17 Changed 7 years ago by Nick Draper

  • Milestone changed from Backlog to Release 3.0

moved to Release 3.0 as these all seem to be active

comment:18 Changed 7 years ago by Roman Tolchenov

  • Description modified (diff)
  • Milestone changed from Release 3.0 to Backlog

comment:19 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 4595

Note: See TracTickets for help on using tickets.