Curious on the performance difference between the built in Entity Get action and an Aggregate when looking up a single entity attribute value by an id.  The conditions are the following:

  • The get attribute operation will be called multiple times.
  • The entity attribute value does not change for the given entity Id at runtime.
  • There is a small subset of Ids for the entity.

The Aggregate implementation will use the following properties:

  • Max. Records = 1
  • Cache in Minutes = non zero value

I could not find anything in the documentation on if the built in Entity Get uses caching or not.

Secondary question, are there any differences in the Entity Get operations between Entities and Static Entities?


Solution

Hi Erik,

The Get action will always return all attributes and will not be optimized by OutSystems to only retrieve from the database actually used attributes.

A static entity is also implemented as a table with records in the database and also returns all attributes.

Calls to static entities Get method are cached (see https://www.outsystems.com/forums/discussion/19919/is-the-get-entity-action-cached-for-static-entities/)

The Aggregate if not used in an isolated server action is optimized by OutSystems.

Regards,

Daniel


Solution