I'm trying to remove TypedJson and replace it with Jackson. Unfortunately,
it appears that some of the behavior for limiting how much data a query
returns has leaked into the TypedJson class in the form of
"queryCollectionsDepth".

Both GFSH and Pulse use the following to limit how much a query returns...

  /**
   * Number of rows queryData operation will return. By default it will be
1000
   */
  private int queryResultSetLimit = ManagementConstants.DEFAULT_QUERY_LIMIT;

  /**
   * NUmber of elements to be shown in queryData operation if query results
contain collections like Map, List etc.
   */
  private int queryCollectionsDepth =
TypedJson.DEFAULT_COLLECTION_ELEMENT_LIMIT;

These are passed into:

QueryDataFunction.queryData(query, members, limit, false,
queryResultSetLimit, queryCollectionsDepth);

1) queryResultSetLimit is fed into the query itself as a LIMIT

2) queryCollectionsDepth is apparently fed into TypedJson as some sort of
limit involving depth of recursing a collection -- this should probably
move into the query in some way.

Does anyone understand querying enough to help me move this behavior to
some proper place such as a querying class? I'm completely unfamiliar with
the querying code so I'm not sure where to even begin on #2.

Thanks,
Kirk

Reply via email to