Ticket #6428 (closed: fixed)

Opened 8 years ago

Last modified 5 years ago

Current load algorithm do not restore free spaces

Reported by: Alex Buts Owned by: Ian Bush
Priority: major Milestone: Release 3.3
Component: Framework Keywords:
Cc: Blocked By:
Blocking: Tester: Alex Buts

Description (last modified by Alex Buts) (diff)

File based workspace created using DiskBuffer can contain free spaces in it.

Current loadMD algorithm ignores the free spaces table so the file structure may become very sparse and inefficient with time.

Change History

comment:1 Changed 7 years ago by Alex Buts

  • Milestone changed from Release 2.5 to Release 2.6

comment:2 Changed 7 years ago by Nick Draper

  • Component changed from VATES to User Interface

comment:3 Changed 7 years ago by Nick Draper

  • Milestone changed from Release 2.6 to Backlog

Moved to backlog at the code freeze for R2.6

comment:4 Changed 7 years ago by Nick Draper

  • Status changed from new to assigned

Bulk move to assigned at the introduction of the triage step

comment:5 Changed 6 years ago by Alex Buts

  • Component changed from User Interface to Framework
  • Description modified (diff)

comment:6 Changed 6 years ago by Alex Buts

  • Owner changed from Alex Buts to Ian Bush
  • Description modified (diff)

I also believe that SaveMD algorithm does not save this information, so load does not restores it.

comment:7 Changed 6 years ago by Ian Bush

  • Status changed from assigned to inprogress

comment:8 Changed 6 years ago by Ian Bush

Refs #6428 Added method to DiskBuffer to set free space blocks (for loading). In getDiskBufferFileData() the free space blocks information is now set after reading the free_space_blocks group from the NeXus file.

Changeset: 5926feabdeda83d90ca7bf0593ac33cea078408b

comment:9 Changed 6 years ago by Ian Bush

Refs #6428 Added unit tests for DiskBuffer.

Changeset: 35e3c1225d8e89a46819e6587f50b353e2ffebcd

comment:10 Changed 6 years ago by Ian Bush

Refs #6428 Fix for test failure - if the free space block vector only contains an empty entry this should not be added to the map.

Changeset: e8c611b1d12e81ea28033779d531f20dd1358d23

comment:11 Changed 6 years ago by Ian Bush

Refs #6428 Added unit test for saving out and reading back the free space vector.

Changeset: 94ae7ed378e6e79c032a4a582b9ebfa40d8b8f22

comment:12 Changed 6 years ago by Ian Bush

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

comment:13 Changed 6 years ago by Alex Buts

  • Status changed from verify to verifying
  • Tester set to Alex Buts

comment:14 Changed 6 years ago by Alex Buts

  • Milestone changed from Backlog to Release 3.3

comment:15 Changed 6 years ago by Alex Buts

  • Status changed from verifying to reopened
  • Resolution fixed deleted

There are subtle things in the code worth improving (discussed)

comment:16 Changed 6 years ago by Ian Bush

  • Status changed from reopened to inprogress

Refs #6428 Removed unnecessary read only check. Could prevent issues where a file is changed from read only to not writable.

Changeset: d2272aea48a8a0921df132cb6762549566fb9ee3

comment:17 Changed 6 years ago by Ian Bush

Refs #6428 Replaced hardcoded string with appropriate variable.

Changeset: ac61d93e5c006f3a4da6a38c96842c2584d7b092

comment:18 Changed 6 years ago by Ian Bush

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

comment:19 Changed 6 years ago by Alex Buts

  • Status changed from verify to verifying

comment:20 Changed 6 years ago by Alex Buts

  • Status changed from verifying to closed

Merge remote-tracking branch 'origin/feature/6428_Load_algorithm_should_restore_free_spaces'

Full changeset: b55d91bf2da92a57cfbbe29c072196816e0b3e96

comment:21 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 7274

Note: See TracTickets for help on using tickets.