iceberg icon indicating copy to clipboard operation
iceberg copied to clipboard

Proposal: IRC Events endpoint

Open c-thiel opened this issue 9 months ago • 6 comments

Proposal: https://docs.google.com/document/d/1WtIsNGVX75-_MsQIOJhXLAWg6IbplV4-DkLllQEiFT8/edit?usp=sharing

c-thiel avatar Mar 20 '25 09:03 c-thiel

There seems to be a bug in the updated datamodel-code-generator==0.28.5 that is used on main, which is why the pipeline fails. datamodel-code-generator==0.28.4 generates the discriminator correctly as discriminator='reference-type' (with -) while the updated version on main uses _ which I believe is wrong.

c-thiel avatar Apr 16 '25 12:04 c-thiel

This pull request has been marked as stale due to 30 days of inactivity. It will be closed in 1 week if no further activity occurs. If you think that’s incorrect or this pull request requires a review, please simply write any comment. If closed, you can revive the PR at any time and @mention a reviewer or discuss it on the [email protected] list. Thank you for your contributions.

github-actions[bot] avatar Jul 01 '25 00:07 github-actions[bot]

Summary of changes since early December 2025. Changes are motivated from discussions in this threads or learnings from the Rust request & response object implementations in https://github.com/apache/iceberg-rust/pull/1907:

  • Allow JSON Values for custom filter (change additionalProperties: type: String to additionalProperties: true in https://github.com/apache/iceberg/pull/12584/commits/7f17a42b4d274f495f6bb05c01f75e53145d8870
  • Make Actor an Object instead of a string in https://github.com/apache/iceberg/pull/12584/commits/3eeb95e7d0fdc4bc59cdb03804a98eac29d5b562. In most real-world szenarios an Actor will have more than one field. The new design is more extendable as we don't have to squish a JSON object into a string type, but can instead pass an extendable Object as actor.
  • Add missing updates field to CreateViewOperation
  • Rename EventsResponse to QueryEventsResponse
  • Rename CatalogObject to CatalogObjectIdentifier
  • Rename event-count in Event to request-event-count to be inline with request-id and hint a bit more that these are the events in a request and not the total events in the response
  • Rename page-token to continuation-token and make it required. For reasoning see Discussion in https://github.com/apache/iceberg/pull/12584/commits/178ed3ed9e0722cba2ca3eee173add06c89e5df1
  • Add missing type: string to OperationType - anyof - enum field in https://github.com/apache/iceberg/pull/12584/commits/c73e200627448df719b4f8c95581e082146962c4
  • Fix duplicate namespace field in CreateNamespaceOperation (via allOf and explicit) in https://github.com/apache/iceberg/pull/12584/commits/2f9b4db2e79f0f475c02b00700d336076428a070

Ping @stevenzwu @aheev

c-thiel avatar Dec 06 '25 15:12 c-thiel

Summary of changes since early December 2025. Changes are motivated from discussions in this threads or learnings from the Rust request & response object implementations in apache/iceberg-rust#1907:

  • Allow JSON Values for custom filter (change additionalProperties: type: String to additionalProperties: true in 7f17a42
  • Make Actor an Object instead of a string in 3eeb95e. In most real-world szenarios an Actor will have more than one field, and even if not, the Catalog can simply return {"id": "..."}, which IMO would still be clearer and more extendable than a plain string.
  • Add missing updates field to CreateViewOperation
  • Rename EventsResponse to QueryEventsResponse
  • Rename CatalogObject to CatalogObjectIdentifier
  • Rename event-count in Event to request-event-count to be inline with request-id and hint a bit more that these are the events in a request and not the total events in the response
  • Rename page-token to continuation-token and make it required. For reasoning see Discussion in 178ed3e
  • Add missing type: string to OperationType - anyof - enum field in c73e200
  • Fix duplicate namespace field in CreateNamespaceOperation (via allOf and explicit) in 2f9b4db

Ping @stevenzwu @aheev

Thanks a bunch :raised_hands: I was waiting for this. I will go ahead and apply in the other PR

aheev avatar Dec 06 '25 16:12 aheev

Make Actor an Object instead of a string in https://github.com/apache/iceberg/commit/3eeb95e7d0fdc4bc59cdb03804a98eac29d5b562. In most real-world szenarios an Actor will have more than one field, and even if not, the Catalog can simply return {"id": "..."}, which IMO would still be clearer and more extendable than a plain string.

@c-thiel do you want to allow JSON values for actor as well?

aheev avatar Dec 08 '25 11:12 aheev

Make Actor an Object instead of a string in 3eeb95e. In most real-world szenarios an Actor will have more than one field, and even if not, the Catalog can simply return {"id": "..."}, which IMO would still be clearer and more extendable than a plain string.

@c-thiel do you want to allow JSON values for actor as well?

Yes - I don't think we should restrict this further.

c-thiel avatar Dec 09 '25 08:12 c-thiel