nastra commented on code in PR #14480:
URL: https://github.com/apache/iceberg/pull/14480#discussion_r2493696342


##########
core/src/test/java/org/apache/iceberg/rest/RESTCatalogAdapter.java:
##########
@@ -429,6 +562,68 @@ public <T extends RESTResponse> T handleRequest(
     return null;
   }
 
+  /**
+   * Do all the planning upfront but batch the file scan tasks across plan 
tasks. Plan Tasks have a
+   * key like <plan ID - table UUID - plan task sequence> The current 
implementation simply uses
+   * plan tasks as a pagination mechanism to control response sizes.
+   *
+   * @param tableScan
+   * @param planId
+   */
+  private void planFilesFor(TableScan tableScan, String planId) {

Review Comment:
   I was thinking that we create a Singleton class that holds all the 
server-side planning state. For each request we would pass stuff to a method in 
`CatalogHandlers`, which would then do whatever needs to be done and return the 
response object. That way the adapter really just passes stuff to 
`CatalogHandlers`, which does the server-side reference implementation. 
   For example, for planning a table scan we'd have something like `public 
static PlanTableScanResponse planTableScan(Catalog catalog, TableIdentifier 
identifier, PlanTableScanRequest request)` defined in `CatalogHandlers`



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to