Opened 16 months ago

Last modified 15 months ago

#2307 closed enhancement

Implement an API for simple and fast loading of annotation values — at Initial Version

Reported by: Nicklas Nordborg Owned by: everyone
Priority: major Milestone: BASE 3.19.10
Component: core Version:
Keywords: Cc:

Description

The regular API for loading annotation values is very slow since each value require several SQL queries against the database. The Snapshot API improve things a lot, but the values need to be cached before there is a big improvement.

In some cases we are only interested in getting the values for a single annotation type for a lot (=several thousands) of items. SQL-wise this could be implemented as a single query against the database and this would probably be very quick to execute. To keep things simple we should only load raw values as they are, which means:

  • No unit conversions are applied (this has to be done in the calling code)
  • Annotation types that support multiple values for a single item are not returned as lists, but as multiple entries in the result.
  • No sorting or filtering
  • For annotation types that support project-specific values only default values and values for the currently active project are returned

Change History (0)

Note: See TracTickets for help on using tickets.