roshiiiz opened a new pull request, #6288:
URL: https://github.com/apache/texera/pull/6288

   ### What changes were proposed in this PR?
   This PR overhauls the static error validation and error messaging across 
Texera operators to drastically improve the experience for new users during 
workflow editing. 
   
   Previously, if a user dragged an operator (like `Projection`, `MySQL`, or 
`CSV File Scan`) onto the canvas without configuring it yet, the system would 
immediately throw intimidating and cryptic Java exceptions (e.g., 
`IllegalArgumentException`, `SQLException: No suitable driver found`, or 
`/texera (Is a directory)`). 
   
   Changes proposed:
   1. **Frontend Global Catch-all**: Updated the regex logic in 
`error-frame.component.ts` to cleanly strip internal Java prefixes (like 
`java.lang.IllegalArgumentException:` or `requirement failed:`) so the user 
only sees the human-readable part of the error message.
   2. **Projection Operator**: Updated `ProjectionOpDesc` to explicitly prompt 
the user to select an attribute.
   3. **Database Sources**: Updated `SQLSourceOpDesc` (and 
`AsterixDBSourceOpDesc`) to intercept empty database configuration fields and 
return actionable UI instructions (e.g., "Please enter a valid host name for 
the database in the properties panel").
   4. **File Scan Sources**: Updated all file scan operators (`ParallelCSV`, 
`JSONL`, `Arrow`, etc.) to gracefully catch directory selections and missing 
files before attempting physical reads, replacing IOExceptions with clear 
prompts to select a valid file from the right-hand panel.
   
   ### Any related issues, documentation, discussions?
   Issue#2735
   
   ### How was this PR tested?
   Tested manually by rebuilding the `workflow-compiling-service` and dragging 
every modified operator (Projection, MySQL, PostgreSQL, AsterixDB, CSV, JSONL, 
Arrow) onto a new workflow canvas. Verified that the Result Panel correctly 
displays the newly formatted, user-friendly instructions instead of raw Java 
exceptions.
   
   ### Was this PR authored or co-authored using generative AI tooling?
   Generated-by: Antigravity (DeepMind)
   
   **Tests:**
   <img width="890" height="560" alt="WhatsApp Image 2026-07-09 at 12 56 49" 
src="https://github.com/user-attachments/assets/4dd8f144-49c4-439f-be9b-89fbbfc6f8dd";
 />
   
-----------------------------------------------------------------------------------------------------------------------------------------------
   <img width="1143" height="811" alt="image" 
src="https://github.com/user-attachments/assets/463ec68b-636c-4ff9-ba65-f907f229c79d";
 />
   
-----------------------------------------------------------------------------------------------------------------------------------------------
   <img width="1544" height="639" alt="image" 
src="https://github.com/user-attachments/assets/923bc582-d825-4b15-8b00-6fff1f651642";
 />
   
-----------------------------------------------------------------------------------------------------------------------------------------------
   <img width="1397" height="709" alt="image" 
src="https://github.com/user-attachments/assets/731510a0-fba1-4a0f-86fd-12b2766e8e17";
 />
   
-----------------------------------------------------------------------------------------------------------------------------------------------


-- 
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]

Reply via email to