RuntimeService.getVariables(String, Collection) fetches all variables from DB

Description

This is somewhat related to, but not the same as, ACT-1331. When using getVariables(String, Collection) it does correctly return only the specified variables; however, behind the scenes it first grabs ALL variables from the database and loads them into memory. The same is true when getting a single variable via getVariable(String, String).

This could be a legitimate design decision. In our case it causes some grief because we have a number of very large values stored in some of the variables, so pulling ALL the variables from the DB turns out to be a significant performance hit.

A note in the JavaDoc for getLocalVariables(String) says, "consider using getVariablesLocal(String, Collection) for better performance." This might lead one to believe that it is intended that only that subset is being fetched.

Environment

Mac OSX/Linux, MySQL

Assignee

Joram Barrez

Reporter

David Wolverton

Labels

None

Components

Fix versions

Affects versions

Priority

Major
Configure