The main parameter I have updated is the last one corresponding to the parameter ‘elementsOnly’. Setting this to true means it should not include each elements Parents / Children in the query.
If I understand you right, you are proposing to remove the hierarchical entries from our response.
But currently we dont have any. In the response that I get now in the browser from the /api/dimensions request there is no hierarchy.
its a flat list like this:
I dont think the connection between the browser and Canvas Server Side is our bottleneck.
I believe Canvas is taking so long, because
a. it is asking TM1 to evaluate all our String Rules that apply for the 1500 Elements in the }ElementAttributes Cubes and
b. loads them from TM1 to Canvas Server Side.
Just to give more details on this, the root cause of this was due to the attributes having space. And because of that, getting specific attributes were not doable, and therefore Canvas reverted to retrieving all attributes instead
So should you want a workaround, you can try to create a copy of the attributes needed, just make sure that the attribute names has alphanumeric characters only.
Though with TM1 it usually is space and case insensitive, it is a bit different though, through TM1’s REST API. In particular through the OData specification that they are trying to adapt to.
I adjusted our dimensionElements call.
Now I specfify the attribute names without spaces.
Now in the request from Canvas Application Server to the TM1 REST API the Attributes are specified explicitly in the URL.
The Reponse from TM1 to Canvas Application Server didnt change though! TM1 still evaluates ALL String rules in the }ElementAttribute Cube and then returns all of them to Canvas Application Server.
That should make it more and more likely a bug with TM1’s REST API. As it was clear that the response received was for a request that only specify a few attributes via the @odata.context, yet it sent over all the other attributes.
We will report this over to them. In the meantime, which TM1 version did you work this out with?