I’ve got a query that I am running, in which there are a large amount of Mirror columns. Previously, I was able to fetch all of this data using the text
field. However, introducing unravelling MirrorValue increases the time of this request from 2 seconds to 7.5 seconds while still only querying a single column. It looks like this continues to compound with more data and columns.
The data stored in the MirrorValue is required to resolve the value of the column.
Am I doing this completely wrong? This seems like a massive regression with the new API. In addition, since the pagination requires a cursor from the previous response, this drastically increases the net time to paginate through a board as concurrent queries are not possible.
In addition, it doesn’t look like I can actually grab the text values of Dropdowns at all with this new system.
Old Query (2 seconds):
"{boards(ids:[BOARD_ID]){items (limit: 50, page: 1) {name, group(){title} column_values(ids: [mirror1, dropdown, shift_days1, shift0, sample_column, mirror42, mirror82, mirror3, check4, data_catalog_id]) {id, title, text}}}}"
New Query, Single Column, No MirrorValue (2 seconds):
"{boards(ids:[BOARD_ID]){items_page (limit: 50) {cursor items { name column_values ( ids: [\"mirror1\"]){column {id} id type value }}}}}"
New Query, Single Column, Expand MirrorValue (11 seconds):
"{boards(ids:[BOARD_ID]){items_page (limit: 50) {cursor items { name column_values ( ids: [\"mirror1\"]){column {id} id type value ...on MirrorValue{ text: display_value} }}}}}"
New Query, All Columns, No MirrorValue (2 seconds):
"{boards(ids:BOARD_ID){items_page (limit: 50) {cursor items { name group {title} column_values ( ids: [\"mirror1\",\"dropdown\",\"shift_days1\",\"shift0\",\"sample_column\",\"mirror42\",\"mirror82\",\"mirror3\",\"check4\",\"data_catalog_id\"]){column {id} id type value }}}}}"
New Query, All Columns, Expand MirrorValue (40 seconds):
"{boards(ids:[BOARD_ID]){items_page (limit: 50) {cursor items { name group {title} column_values ( ids: [\"mirror1\",\"dropdown\",\"shift_days1\",\"shift0\",\"sample_column\",\"mirror42\",\"mirror82\",\"mirror3\",\"check4\",\"data_catalog_id\"]){column {id} id type value ...on MirrorValue{ display_value} }}}}}"