isc-patrick opened a new issue, #1148:
URL: https://github.com/apache/iceberg-python/issues/1148

   ### Feature Request / Improvement
   
   I think there are 2 issues with the SQLCatalog constructor:
   
   
https://github.com/apache/iceberg-python/blob/d587e6724685744918ecf192724437182ad01abf/pyiceberg/catalog/sql.py#L117
   
   1. The automatic creation of non-existent SQLCatalog tables is great for 
testing, but not something I would want in code that was being deployed and run 
even in a QA environ. Applying DDL should be part of a seperate process. 
Constructor should at least take a parameter that allows you to not create the 
tables automatically.
   2. The current method used for creating the tables in _ensure_tables_exists 
uses exceptions which means that the library is compatible with SQLite and 
Postgres simply because the except clause handles the errors these DB's throw 
when selecting from a non-existant DB. The logic here should just check for the 
existence of the tables through a standard SQLAlchemy method, which will also 
make the SQLCatalog work with most DBs
   
   I have made these changes on my local branch and can submit a PR but wanted 
to open up conversation to other opinions.


-- 
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: issues-unsubscr...@iceberg.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to