Skip to content

Conversation

@singhpk234
Copy link
Contributor

@singhpk234 singhpk234 commented Oct 23, 2025

Preps the website for the 1.2 release notes and artifact yet to be published

Update (10/24): The artifacts have been released as of yesterday

Copy link
Contributor

@dimas-b dimas-b left a comment

Choose a reason for hiding this comment

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

Re: DO NOT MERGE - mark the PR as "draft"?

The realm-level feature flag `ALLOW_SETTING_SUB_CATALOG_RBAC_FOR_FEDERATED_CATALOGS` (default: true) controls whether this functionality can be enabled or modified at the catalog level.
- Added support for S3-compatible storage that does not have STS (use `stsUavailable: true` in catalog storage configuration)
- Added a Management API endpoint to reset principal credentials, controlled by the `ENABLE_CREDENTIAL_RESET` (default: true) feature flag.
- Added AWS CloudWatch Event Sink Implementation
Copy link
Contributor

Choose a reason for hiding this comment

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

Do we want to flag this as "beta"? If so, I think we can do that without re-releasing 1.2.0.

I do not recall if we discussed this before, so apologies for rocking the boat. Cf. https://lists.apache.org/thread/yx7pkgczl6k7bt4k4yzqrrq9gn7gqk2p

Copy link
Contributor Author

Choose a reason for hiding this comment

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

we can update the release notes in the website if we have concencus ? (post this pr as well, wdyt ?) we did that for 1.1 release

why do we wanna call it as beta though ? is it the interface gonna change or something ?

Copy link
Contributor

Choose a reason for hiding this comment

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

Hi @dimas-b, could you elaborate the reason here? I'm not sure I understanding the reason behind beta label and re-releasing?

Copy link
Contributor

Choose a reason for hiding this comment

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

The reason for "beta" is in the ML thread (linked above)... TL;DR: possible changes to binary / JSON representation.

Copy link
Contributor

Choose a reason for hiding this comment

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

If we're ok flagging persisted events as "beta" we could do this in the docs / release notes on the site, 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.

I also support flagging events as beta.

For a few reasons:

  • The API is still evolving, see this ML thread: https://lists.apache.org/thread/rl5cpcft16sn5n00mfkmx9ldn3gsqtfy
  • As the ML thread linked above shows, the SQL schema of the events table could evolve and require SQL migration.
  • Existing listeners are both incomplete:
    • JDBC: only processes after-create-table, after-create-catalog events, other events are ignored.
    • CloudWatch: only processes after-refresh-table events, other events are ignored.

As I already suggested a few times, a complete, general-purpose, production-ready event listener must either process all events equally, or expose a configuration option to select which events to process or ignore. See #2630 and #2836 (comment) for more discussions on this specific topic.

For all the above reasons, I think it would be nicer for our users to mark the events feature as beta/experimental, so that they don't accidentally rely on it prematurely in production-critical deployments.

Copy link
Contributor

@dimas-b dimas-b Oct 24, 2025

Choose a reason for hiding this comment

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

Another point for "beta": the current Polaris Evolution doc has stronger guarantees for persisted data than for java interfaces.

If events only had a java representation, it would be not necessary to flag them as "beta" now. However, given that events are persisted and their representation in the Polaris database is very likely to change per dev ML discussions, I think we ought to warn uses about foreseeable upgrade issues in this area with the help of the "beta" label (plus some brief explanation of the issue).

CC: @jbonofre : related to you comment in the main thread.

Copy link
Contributor

Choose a reason for hiding this comment

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

@singhpk234 singhpk234 marked this pull request as draft October 23, 2025 17:46
@singhpk234
Copy link
Contributor Author

heads up vote passed in IPMC :)

@singhpk234 singhpk234 marked this pull request as ready for review October 23, 2025 17:50
@dimas-b
Copy link
Contributor

dimas-b commented Oct 23, 2025

FYI: Hugo build is broken (on main) 😢

hugo_publish_apache-1  | ERROR [en] REF_NOT_FOUND: Ref "keycloak-idp.md": "/polaris/site/content/in-dev/unreleased/managing-security/external-idp/_index.md:254:95": page reference "keycloak-idp.md" is ambiguous
hugo_publish_apache-1  | ERROR [en] REF_NOT_FOUND: Ref "keycloak-idp.md": "/polaris/site/content/releases/1.2.0/managing-security/external-idp/_index.md:254:95": page reference "keycloak-idp.md" is ambiguous

@singhpk234
Copy link
Contributor Author

FYI: Hugo build is broken (on main) 😢

is it due to merging 1.2 in versioned-docs branch ? i just copied the in-dev/unreleased to release/1.2.0, hmm, any pointers ?

@dimas-b
Copy link
Contributor

dimas-b commented Oct 23, 2025

I'll start a dev ML thread... looks like a general CI issue 🤔

@dimas-b
Copy link
Contributor

dimas-b commented Oct 23, 2025

@singhpk234 : actually, I guess #2879 broke this... Would you mind rolling it back for now and we can redo it with more caution later? -- #2881

@flyrain
Copy link
Contributor

flyrain commented Oct 23, 2025

hugo_publish_apache-1  | ERROR [en] REF_NOT_FOUND: Ref "keycloak-idp.md": "/polaris/site/content/in-dev/unreleased/managing-security/external-idp/_index.md:254:95": page reference "keycloak-idp.md" is ambiguous
hugo_publish_apache-1  | ERROR [en] REF_NOT_FOUND: Ref "keycloak-idp.md": "/polaris/site/content/releases/1.2.0/managing-security/external-idp/_index.md:254:95": page reference "keycloak-idp.md" is ambiguous
hugo_publish_apache-1  | ERROR [en] REF_NOT_FOUND: Ref "creating-a-catalog": "/polaris/site/content/in-dev/unreleased/getting-started/using-polaris/_index.md:34:35": page reference "creating-a-catalog" is ambiguous
hugo_publish_apache-1  | ERROR [en] REF_NOT_FOUND: Ref "creating-a-catalog": "/polaris/site/content/releases/1.2.0/getting-started/using-polaris/_index.md:34:35": page reference "creating-a-catalog" is ambiguous
hugo_publish_apache-1  | ERROR [en] REF_NOT_FOUND: Ref "telemetry-tools": "/polaris/site/content/in-dev/unreleased/telemetry.md:196:44": page reference "telemetry-tools" is ambiguous
hugo_publish_apache-1  | ERROR [en] REF_NOT_FOUND: Ref "telemetry-tools": "/polaris/site/content/releases/1.2.0/telemetry.md:196:44": page reference "telemetry-tools" is ambiguous

Yeah, we need to use relative paths for them

jbonofre
jbonofre previously approved these changes Oct 24, 2025
Copy link
Member

@jbonofre jbonofre left a comment

Choose a reason for hiding this comment

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

I'm not convinced we should absolutely flagged any feature as beta. I'm more in favor of informing the community it's available, and fix/improve in next releases if needed.
If it works, it works as it is today (that's the purpose of open source projects).

@github-project-automation github-project-automation bot moved this from PRs In Progress to Ready to merge in Basic Kanban Board Oct 24, 2025
@adutra
Copy link
Contributor

adutra commented Oct 24, 2025

I'm not convinced we should absolutely flagged any feature as beta. I'm more in favor of informing the community it's available, and fix/improve in next releases if needed. If it works, it works as it is today (that's the purpose of open source projects).

But then we need to deal with angry users, we've seen this already: #2671.

I think being open and honest about the state of Polaris features is key in building a trust relationship with the community. For the events feature in particular, I think it's highly likely it will change substantially in the future.

@singhpk234
Copy link
Contributor Author

singhpk234 commented Oct 25, 2025

But then we need to deal with angry users, we've seen this already: #2671.

#2671 was caused due to a bug IMHO, which made user upgrade from 1.0.1 to 1.1.0 fail even without schema version upgrade. we do need to provide some automation for schema version upgrades !

I think being open and honest about the state of Polaris features is key in building a trust relationship with the community.

Agree with you on this ! but where are we being dishonest ? we are just saying hey this is something we have, try it out if you want to, if we put out a breaking change we should call it out in our release docs, reconsider that there is users using it and make change accordingly and this is true for any features we ship.

If the rationale is there is going to be breaking change for sure regarding events and the community agrees to (which my understanding is what your and @dimas-b feedback is). I propose i remove the CloudWatch sink from the release notes entirely (this will make this feature like NoSQL where parts of code is checked in but not complete / ready) and if we want we can mark CloudWatch sink or the whole EventListner in general as beta in the follow-up when we have concencus on thread @dimas-b started.
https://lists.apache.org/thread/xogjyozb7qqj5jjs330f5s6lw69ldptv

We already have release artifacts published in maven https://mvnrepository.com/artifact/org.apache.polaris/polaris-core as of (10/23), It would be great to move forward with this PR. Please let me know your thoughts ?

@adutra
Copy link
Contributor

adutra commented Oct 26, 2025

we are just saying hey this is something we have, try it out if you want to, if we put out a breaking change we should call it out in our release docs, reconsider that there is users using it and make change accordingly and this is true for any features we ship.

The above is not dishonest per se, but it's omitting two important messages:

  1. The API is still evolving, including the SQL schema.
  2. The implementation is currently incomplete.

I propose i remove the CloudWatch sink from the release notes entirely [...] if we want we can mark CloudWatch sink or the whole EventListner in general as beta in the follow-up.

AFAIK, both sinks (CloudWatch and SQL) are being introduced in 1.2.

Regardless of any mention in the changelog, this means that if we don't mark the API experimental now, they will be implicitly released as production-ready. It would be strange to downgrade this API from production-ready to beta in a future release imho.

@dimas-b
Copy link
Contributor

dimas-b commented Oct 27, 2025

I think we should try to make a complete message in the 1.2.0 docs / release notes upfront, reflecting the current status of features (specifically related to events). Updating these notices after they get published should be avoided from my POV, especially since we know about potential issues already.

Let's reach consensus on ML, and then revision the RNs: https://lists.apache.org/thread/xogjyozb7qqj5jjs330f5s6lw69ldptv

flyrain
flyrain previously approved these changes Oct 27, 2025
Copy link
Contributor

@flyrain flyrain left a comment

Choose a reason for hiding this comment

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

Thanks @singhpk234!

@singhpk234
Copy link
Contributor Author

singhpk234 commented Oct 27, 2025

As recommended flagged Events added additional notes on events getting dropped. I have used word preview instead of beta, we have been using the word Experimental till now in 1.0.0 and EventListener is already marked as Experimental as of 1.0.0, please let me know what you think.

please take another pass @dimas-b @adutra @jbonofre when you get some time.

- **Events Persistence (Preview)**: Introduced new event types and added support for persisting events to both Relational JDBC Persistence and AWS CloudWatch.

**Note**: This is a preview feature. The persistence schema is subject to change in future releases, and previously stored event data MAY become unreadable (i.e., dropped) after an upgrade.
- Generate Request IDs (if not specified) for all incoming requests to Polaris.
Copy link
Contributor

Choose a reason for hiding this comment

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

Automatic ID generation is removed by #2914 (assuming it gets merged).

I believe we should mention this as a "preview" too, and make a note that is may be removed in the next release.

Copy link
Contributor

Choose a reason for hiding this comment

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

I would not mind removing the Generate Request IDs point from the list of features completely. Per email discussion linked from #2914 it was not really intended to be a user-level feature.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

thats make sense, i think the general concecus as per linked is to use Quarkus OTEL ! I removed the auto request id generation

@dimas-b
Copy link
Contributor

dimas-b commented Oct 27, 2025

The text about events LGTM 👍

@singhpk234 singhpk234 merged commit 4e42502 into apache:main Oct 27, 2025
15 checks passed
@github-project-automation github-project-automation bot moved this from Ready to merge to Done in Basic Kanban Board Oct 27, 2025
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.

6 participants