Ticket #3532 (closed: fixed)

Opened 9 years ago

Last modified 5 years ago

SaveMDEW: save the box data for a file-backed MDEventWorkspace

Reported by: Janik Zikovsky Owned by: Janik Zikovsky
Priority: major Milestone: Iteration 30
Component: Mantid Keywords:
Cc: Blocked By:
Blocking: Tester: Owen Arnold

Description

The file-based back end only updates the event data, not the box data.

Calling the SaveMDEW with a particular option should update the box data.

Perhaps another option to save anything that was not saved yet due to caching?

Change History

comment:1 Changed 9 years ago by Janik Zikovsky

  • Status changed from new to accepted

comment:2 Changed 9 years ago by Janik Zikovsky

In [13848]:

Refs #2265: Fix to NXS writeExtendibleData(). Refs #3532: Due to bad chunk size when making extendible data, this option is temporarily disabled, because it makes the files super slow. Am waiting on help from the NXS supercommittee. Refs #3316: Changed a field in the data file to conform to nexus_underscore_lowercase style.

comment:11 Changed 9 years ago by Janik Zikovsky

In [13856]:

Refs #3532: SaveMDEW can update the file in the back end of a MDEWorkspace.

comment:12 Changed 9 years ago by Janik Zikovsky

In [13857]:

Refs #3532: Fix NXS-related windows build failure

comment:13 Changed 9 years ago by Janik Zikovsky

In [13858]:

Refs #3532: String data fields changed to attributes so that they can be resized too.

comment:14 Changed 9 years ago by Janik Zikovsky

Also, this needs to save the list of free space blocks for later re-use.

comment:15 Changed 9 years ago by Janik Zikovsky

In [13897]:

Refs #3532: SaveMDEW has option to update the file-based back-end. When calling addEvent() on a disk-cached MDBox it does not require loading data from disk. Support for splitting a MDBox into a MDGridBox when using the DiskMRU. Refs #3467.

comment:16 Changed 9 years ago by Janik Zikovsky

In [13902]:

Refs #3532: Track box total signal whenever you save it to disk. Refs #3302: Hope to really fix warnings now.

comment:17 Changed 9 years ago by Janik Zikovsky

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

In [13904]:

Fixes #3532: You can save a MDEventWorkspace that is file-backed while it is open.

comment:18 Changed 9 years ago by Owen Arnold

  • Status changed from verify to verifying
  • Tester set to Owen Arnold

comment:19 Changed 9 years ago by Owen Arnold

  • Status changed from verifying to reopened
  • Resolution fixed deleted

I may have this wrong, but was expecting that both UpdateFileBackEnd and MakeFileBacked would result in a *.nxs file being created on save.

Only MakeFileBackend generated the file with the specified name in the specified location.

using UpdateFileBackEnd required filename/location, but did not result in a file being saved to that location.

comment:20 Changed 9 years ago by Janik Zikovsky

  • Status changed from reopened to accepted

comment:21 Changed 9 years ago by Janik Zikovsky

In [14786]:

Refs #3532: Clarified the algorithm properties

comment:22 Changed 9 years ago by Janik Zikovsky

  • Status changed from accepted to verify
  • Resolution set to fixed
  • UpdateFileBackEnd is used if you originally loaded a file with the FileBackEnd=True option (meaning that WS is file-backed). It then updates all the event and box data in the (already existing) .NXS file; the Filename parameter is then ignore.
  • MakeFileBackend: this both saves the workspace, and switches from it being fully in memory to being file-backed and caching to disk at the given filename.

I've updated the properties so that unused ones are disabled when appropriate.

comment:23 Changed 9 years ago by Owen Arnold

  • Status changed from verify to verifying

comment:24 Changed 9 years ago by Owen Arnold

  • Status changed from verifying to closed

I've given this a thorough test now using LoadMD -> SaveMD in a recursive way, under lots of different schenarios. Modified properties are controlling the algorithm in exactly the way I would expect.

comment:25 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 4379

Note: See TracTickets for help on using tickets.