Skip to content

Conversation

@dimas-b
Copy link
Contributor

@dimas-b dimas-b commented May 23, 2025

Remove the INFO log about calls to this method in Polaris, because users cannot do anything about these messages.

Phasing out old property names requires coordination with users (e.g. release notes), so it is not a matter of merely avoiding calls to that method in Polaris code.

Fixes #1666

adutra
adutra previously approved these changes May 26, 2025
@github-project-automation github-project-automation bot moved this from PRs In Progress to Ready to merge in Basic Kanban Board May 26, 2025
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still like unsafe because it suggests the unsafe nature of the method -- it's not clear to me what "legacy" means here. It's old, but, what's different about it?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Legacy here means previously used config names.

I'm ok keeping the "unsafe" name. Will rename.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

renamed back to catalogConfigUnsafe (with javadoc update)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know the alerts are annoying, but I think we need to get in the habit of marking things we want to remove as Deprecated and would like to keep the annotation

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure we want to remove this method. We may be able to remove it if we stop supporting the old config names at some point and never rename configs again 🤔

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That was definitely my intent when I made it -- to prohibit new usage and eventually phase out old usage. I think there's a comment to this effect, and the alerts are sort of "meant" to be annoying. We shouldn't have configs that are unsafe, I think.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's not to say we can't change our minds about this btw, just noting this is by design. Maybe bad design :)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Annoying to whom? ;) Right now they seems to be very visible to use users, who cannot do anything to "fix" it 🤷

Copy link
Contributor

@eric-maynard eric-maynard May 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only to users building from source. Otherwise, it's meant to be visible to developers -- a reminder & incentive to deprecate the method, not one to just yank the @Deprecated annotation.

If we're concerned about the verbosity of ./gradlew build, these warnings are a very small fraction of the output I see when building. There is lots of other output which is much lower-signal to users, such as all the split package warnings or the Hibernate Validator output.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As I noted in #1666 the concern is with log messages.

I'll restore the deprecation.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR only removes the INFO log message now. Description updated.

Copy link
Contributor

@eric-maynard eric-maynard May 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! Just want to flag that there is a surviving log here, but IMO we should keep that one because it tells users to stop using the config, rather than developers to stop building Polaris with a method call in place they can't actually remove.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The "surviving" log is quite appropriate IMHO. It informs the user that they ought to update their table's properties to use the new name.

dimas-b added 3 commits May 27, 2025 10:06
* Rename `catalogConfigUnsafe` to `legacyCatalogConfig`

* Remove deprecation, because this method has a purpose
  in allowing backward compatibility when properties are
  renamed.

* Remove the INFO log about calls to this method in Polaris,
  because users cannot do anything about these messages.

Phasing out old property names required coordination with
users (e.g. release notes), so it is not a matter of merely
avoiding calls to that method in Polaris code.

Fixes apache#1666
@dimas-b dimas-b changed the title Make the method supporting old config names "first class" code. fix: Remove info log about deprecated internal method from PolarisConfiguration May 27, 2025
@dimas-b dimas-b requested a review from eric-maynard May 27, 2025 14:08
Copy link
Contributor

@eric-maynard eric-maynard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@dimas-b dimas-b merged commit e5bc87e into apache:main May 27, 2025
9 checks passed
@github-project-automation github-project-automation bot moved this from Ready to merge to Done in Basic Kanban Board May 27, 2025
@dimas-b dimas-b deleted the config-msg branch May 27, 2025 16:46
snazy added a commit to snazy/polaris that referenced this pull request Jun 13, 2025
* fix: Remove duplicated code in IcebergCatalog (apache#1681)

* Fix SparkClient listGenericTable to use ListGenericTablesRESTResponse

ListTableResponse is the class used by iceberg endpoint, which is the same as ListGenericTablesRESTResponse. However, we are suppose to use ListGenericTablesRESTResponse to be correct

* fix: Remove info log about deprecated internal method from PolarisConfiguration (apache#1672)


Remove the INFO log about calls to this method in Polaris, because users cannot do anything about these messages.

Phasing out old property names requires coordination with users (e.g. release notes), so it is not a matter of merely avoiding calls to that method in Polaris code.

Fixes apache#1666

* Create a single binary distribution bundle (apache#1589)

* fix(quickstart): Correct Quickstart Instructions (apache#1673)

* Remove Java URI validations for Blob Storage providers (apache#1604)

This is a retry at apache#1586, which I'll close if this PR is on the right direction instead.

Java URI does not actually apply any normalization to URIs if we do not call URI.normalize() (which we currently do not). Additionally, blob storage providers like S3 and GCS can provide ".." and "." as valid fragments in URLs - which Java URI would attempt to normalize incorrectly. As a result, attempting to validate and/or normalize URIs for blob storage providers using the Java URI class is the incorrect behavior. While we may want to add location validation via regex later, removing it first should at least unblock the bug we see in apache#1545.

* Improve test coverage for invalid inputs in Policy APIs (apache#1665)

* Fix getting-started docker start by PR apache#1532 (apache#1687)

* Fix the manual test broken by PR apache#1532 (apache#1688)

* Fix credentials printing twice (apache#1682)

* main: Update dependency com.diffplug.spotless:spotless-plugin-gradle to v7.0.4 (apache#1690)

* INFO: last merged commit 493de03

---------

Co-authored-by: Alexandre Dutra <[email protected]>
Co-authored-by: gh-yzou <[email protected]>
Co-authored-by: Dmitri Bourlatchkov <[email protected]>
Co-authored-by: Yufei Gu <[email protected]>
Co-authored-by: Adnan Hemani <[email protected]>
Co-authored-by: William Hyun <[email protected]>
Co-authored-by: Christopher Lambert <[email protected]>
Co-authored-by: Mend Renovate <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Self-induced warnings about catalogConfigUnsafe

3 participants