singhpk234 commented on PR #14867: URL: https://github.com/apache/iceberg/pull/14867#issuecomment-3683989832
### Decision matrix : scan planning mode (required | optional | none) : | Client Config | Server Config | Supports REST? | Planning Outcome | | :--- | :--- | :---: | :--- | | **Required** | Required | Yes | **Server Planning** (Server overrides and fulfills requirement) | | **Required** | Optional | Yes | **Server Planning** (Client mandates, Server is flexible) | | **Required** | None | Yes | **Server Planning** (Client mandate takes priority for Server) | | **Optional** | Required | Yes | **Server Planning** (Server Required overrides Client Optional) | | **Optional** | Optional | Yes | **Server Planning** (Defaulted for REST efficiency) | | **Optional** | None | Yes | **Client Planning** (Server cannot, Client is flexible) | | **None** | Required | Yes | **Server Planning** (Server Required overrides Client None) | | **None** | Optional | Yes | **Client Planning** (Client mandate takes priority) | | **None** | None | Yes | **Client Planning** (Both agree on Client side) | ------------ ### Decision matrix : scan planning mode(client only | client preferred | catalog preferred | catalog only) | Client Config | Server Config | Supports REST? | Planning Outcome | | :--- | :--- | :---: | :--- | | **Client Only** | Client Only | Yes | **Local Planning:** Both agree on client-side implementation. | | **Client Only** | Client Preferred | Yes | **Local Planning:** Both Server and Client agree. | | **Client Only** | Catalog Preferred | Yes | **Local Planning:** Client ignores server optimization capabilities and chooses client only impl. | | **Client Only** | Catalog Only | Yes | **Server Planning:** Since its a MUST from the server side. | | **Client Preferred** | Client Only | Yes | **Local Planning:** Client preference aligns with server's strict client-only requirement. | | **Client Preferred** | Client Preferred | Yes | **Local Planning:** Both parties prefer local execution; negotiation defaults to Client. | | **Client Preferred** | Catalog Preferred | Yes | **Server Planning:** Both are flexible; Catalog is chosen to utilize REST efficiency. | | **Client Preferred** | Catalog Only | Yes | **Server Planning:** Server MUST plan; client yields its preference. | | **Catalog Preferred** | Client Only | Yes | **Local Planning:** Server MUST plan locally; client yields its preference. | | **Catalog Preferred** | Client Preferred | Yes | **Server Planning:** Negotiation favors client-side to minimize server-side overhead. | | **Catalog Preferred** | Catalog Preferred | Yes | **Server Planning:** Both parties prefer server-side; Catalog is chosen. | | **Catalog Preferred** | Catalog Only | Yes | **Server Planning:** Server MUST plan; client preference aligns. | | **Catalog Only** | Client Only | Yes | **Local Planning:** Client MUST adhere to Catalog; | | **Catalog Only** | Client Preferred | Yes | **Server Planning:** Server is flexible; Catalog MUST plan. | | **Catalog Only** | Catalog Preferred | Yes | **Server Planning:** Client MUST use Catalog; server agrees with preference. | | **Catalog Only** | Catalog Only | Yes | **Server Planning:** Strict agreement on server-side implementation. | -- 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]
