Skip to content

fix: Add missing fields to buffered-segments and ingest-spans #411

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
May 23, 2025

Conversation

jan-auer
Copy link
Member

@jan-auer jan-auer commented May 23, 2025

Adds fields that are present and required on buffered-segments, but have not
been included in its schema. The preceding ingest-spans topic already had
these fields included.

Also exposes MeasurementValue as a named type so we can import it in Sentry.

Ref VIEPF-5
Required by getsentry/sentry#92185

@jan-auer jan-auer requested review from a team as code owners May 23, 2025 08:42
@jan-auer jan-auer self-assigned this May 23, 2025
@jan-auer jan-auer requested a review from untitaker May 23, 2025 08:43
Copy link

github-actions bot commented May 23, 2025

versions in use:

The following repositories use one of the schemas you are editing. It is recommended to roll out schema changes in small PRs, meaning that if those used versions lag behind the latest, it is probably best to update those services before rolling out your change.

latest version: 1.3.5

changes considered breaking

schemas/buffered-segments.v1.schema.json

  • Added a new property, but the consumer has been ignoring additional properties so far. This is probably still fine, but please double-check that the producer does not already send this property with a different type in practice than you defined in this schema.

    {"path": ".spans.?", "change": {"PropertyAdd": {"lhs_additional_properties": true, "added": "data"}}}
    
  • Added a new property, but the consumer has been ignoring additional properties so far. This is probably still fine, but please double-check that the producer does not already send this property with a different type in practice than you defined in this schema.

    {"path": ".spans.?", "change": {"PropertyAdd": {"lhs_additional_properties": true, "added": "end_timestamp_precise"}}}
    
  • Added a new property, but the consumer has been ignoring additional properties so far. This is probably still fine, but please double-check that the producer does not already send this property with a different type in practice than you defined in this schema.

    {"path": ".spans.?", "change": {"PropertyAdd": {"lhs_additional_properties": true, "added": "start_timestamp_precise"}}}
    
  • {"path": ".spans.?", "change": {"RequiredAdd": {"property": "end_timestamp_precise"}}}
    
  • {"path": ".spans.?", "change": {"RequiredAdd": {"property": "start_timestamp_precise"}}}
    

⚠️ This PR contains breaking changes. Normally you should avoid that and make
your consumer backwards-compatible (meaning that updated consumers can still
accept old messages). There are a few exceptions:

  • If consumers already require these invariants in practice, and you're
    just adjusting the JSON schema to reality, ignore this warning.

  • If you know what you are doing, this change could potentially be rolled out
    to producers first, but that's not a flow we support.

@jan-auer jan-auer merged commit 39dedba into main May 23, 2025
17 of 18 checks passed
@jan-auer jan-auer deleted the feat/buffered-segments-fields branch May 23, 2025 08:55
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.

2 participants