Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • T tracker-miners
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 61
    • Issues 61
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 18
    • Merge requests 18
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GNOME
  • tracker-miners
  • Merge requests
  • !370

Merged
Created Dec 24, 2021 by Carlos Garnacho@carlosgMaintainer

Use stable URNs for nie:InformationElement data

  • Overview 9
  • Commits 8
  • Pipelines 3
  • Changes 37

From the main commit:

libtracker-miners-common: Add API to get stable URNs for file content

This helper function works on top of G_FILE_ATTRIBUTE_ID_FILE which
based on the filesystem ID and inode. This shares the same lifetime
expectancies we have about our own URNs:

- It is unique system-wide.
- It is persistent as long as there are no file content changes
  (e.g. persists on attribute updates).
- It is persistent across file moves/renames too.

And extends the benefits a bit:

- It is persistent across reindexes.
- It is a stat() away, no need to insert a blank node and query for its
  name.

Add this piece of API that allows to generate one of these new
stable URNs for file content. Optionally, a suffix can be added,
for the cases where there will be multiple content entities for a
file data object (e.g. flac).

This new stable URN helper is used all over the place now for nie:InformationElement data that relates to file content.

In order to ensure these changes are picked up on update, the branch commits start by making TrackerMinerFiles methods part of the tracker:extractorHash machinery, and ensure these apply to folders as well.

Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: wip/carlosg/stable-content-urns