Hi all,

With Apache Iceberg 1.12 released yesterday, the PR to update Polaris
to version 1.12 is now ready for review: [5360].

As you may recall, Iceberg 1.12 introduces an essential fix regarding
URL path segment encoding: [15989]. Some of you may be worried that
Iceberg 1.12 could break some clients once Polaris upgrades.

Short answer: it won't.

Iceberg 1.12 changes only the Java client, which now sends a space as
%20 instead of +. A regression is only possible for servers that
switch from RESTUtil.decodeString to RESTUtil.decodePathSegment.

Polaris, however, never used decodeString on paths. In Polaris, the
decoding is done by JAX-RS, which decodes @PathParams as per RFC 3986.
IOW, Polaris has always behaved "the right way".

What does change, though, is how Polaris produces URLs. It used to
advertise wrong URLs before because of the encoding bug, see [14263].
Now that PolarisResourcePaths has been updated to use the new, correct
encoders, this will not happen again.

And finally, this upgrade doesn't change persisted namespace encoding,
so no migration is needed on that front.

In short, upgrading shouldn't be a problem for the Polaris community,
and would fix the URL advertising issues already reported.

Thanks,
Alex

[5360]: https://github.com/apache/polaris/pull/5360
[14263]: https://github.com/apache/iceberg/issues/14263
[15989]: https://github.com/apache/iceberg/pull/15989

Reply via email to