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]

Reply via email to