Opened 6 years ago

Last modified 6 years ago

#8155 new enhancement

Implement hard links in datastore for storing duplicate files

Reported by: morgs Owned by: tomeu
Priority: normal Milestone: Future Release
Component: sugar-datastore Version: not specified
Keywords: Cc: skierpage, sayamindu, edmcnierney
Blocked By: Blocking:
Deployments affected: Action Needed: design
Verified: no

Description

In #6729, skierpage commented:

I noticed that every time I start Browse, visit OLPC Library > images > world maps and click Africa (a PDF), another full copy of the PDF is added to ~olpc/.sugar/default/datastore/store by Read activity 45. If I read this bug correctly, that behavior is a downside of this bug fix.

This could be improved by hard linking identical files with copy-on-write to break the links.

Change History (8)

comment:2 in reply to: ↑ 1 Changed 6 years ago by skierpage

comment:3 Changed 6 years ago by cscott

This bug has been added as an 8.2.1 blocker; next gen journal ideas are out. Is there a reasonable patch to our current 8.2 journal that does this?

comment:4 Changed 6 years ago by mstone

  • Milestone changed from 9.1.0 to 8.2.1

comment:5 Changed 6 years ago by marco

  • Cc sayamindu added

I think adding this feature to the current datastore is going to be too risky stability wise. Tomeu rewrite has it, but integrating it would mean to also ship a reimplementation of the usb sticks UI too.

Sayamindu has a patch to browse to open pdf inline, which would work around that case. That's by far the less risky approach, is it enough?

comment:6 Changed 6 years ago by edmcnierney

  • Keywords 8.2.1:+ added

comment:7 Changed 6 years ago by mchua

  • Keywords 8.2.1:+ removed

consensus from 8.2.1 meeting: push this ticket (general case) to a later release, unmadindu to make a new ticket with his patch for this specific case which will be in 8.2.1.

comment:8 Changed 6 years ago by cjb

  • Cc edmcnierney added
  • Milestone changed from 8.2.1 to Future Release

Pushing out of the 8.2.1 component.

Note: See TracTickets for help on using tickets.