Hi all,

While reviewing #5856 (https://github.com/apache/polaris/pull/5856), I
noticed that we allow changing ALLOW_UNSTRUCTURED_TABLE_LOCATION from true
to false without checking existing table/view locations. This can break
tables that were valid under the previous setting.

For example:

   - Create ns1.t1 at its default location with the flag enabled.
   - Rename it to ns2.t2. The data stays under ns1.
   - Turn the flag off. Loading the table with credentials can now fail
   with a 403 because its location is outside ns2.

The catalog update succeeds, but the problem shows up when someone accesses
the table later.

I see two options:

   1. Verify every table/view before allowing the change, and reject it if
   any location is incompatible. This could be very expensive for large
   catalogs. We can consider it as phase 2.
   2. Block true → false altogether for now. This should also cover
   removing the property when that makes the effective value false. We can
   still allow false → true.

I’d lean toward option 2 for now. It seems better to reject the
configuration change than let it succeed and break existing tables
afterward.

Any concerns with this approach?

Reply via email to