Skip to content

feature - implement RFC 023 approximate functions (#40)#50

Closed
dannymeijer wants to merge 6 commits into
feature/39-rfc022-format-functionsfrom
feature/40-rfc023-approximate-functions
Closed

feature - implement RFC 023 approximate functions (#40)#50
dannymeijer wants to merge 6 commits into
feature/39-rfc022-format-functionsfrom
feature/40-rfc023-approximate-functions

Conversation

@dannymeijer

@dannymeijer dannymeijer commented May 26, 2026

Copy link
Copy Markdown
Member

Summary

  • completes RFC 023's portable approximate aggregate surface with approx_count_distinct(...) and approx_percentile(...)
  • carries approximate aggregate arguments through Prism/Substrait lowering, including percentile and accuracy for approx_percentile(...)
  • adds registry approximation metadata, aggregate modifier policy, Substrait extension mappings, and DataFusion adapter-boundary name rewrites for both helpers
  • records the sketch-state decision explicitly: sketch construction/merge/estimate/serialization names are delegated to new Draft RFC 025 instead of being exposed as untyped binary/string functions
  • marks RFC 023 Implemented with RFC 025 carrying the follow-up typed-sketch value design
  • adds RFC 025 for typed sketch logical values, links it to issue RFC 025: Typed sketch logical values #51, and links RFC 023/reference docs/release notes to that boundary
  • updates the RFC, function reference, aggregate-builder docs, and release notes so the PR no longer describes a first slice

Verification

  • git diff --check
  • make fmt
  • incan test tests/test_approximate_functions.incn
  • incan test tests/test_function_registry.incn
  • incan test tests/test_substrait_plan.incn
  • incan test tests/test_prism.incn
  • incan test tests/test_session_aggregates.incn
  • make fmt-check
  • make test-style
  • make registry-metadata
  • make build
  • make test
  • make smoke-consumer
  • make pre-commit

After the docs-only RFC 025 / RFC 023 status commits:

  • git diff --check

Stack / Merge Order

This PR is stacked after #49 and should merge only after:

#44 -> #45 -> #46 -> #47 -> #48 -> #49 -> this PR

Refs #40
Refs #51

@dannymeijer
dannymeijer force-pushed the feature/39-rfc022-format-functions branch from 4ebb788 to c786443 Compare May 28, 2026 07:10
@dannymeijer
dannymeijer force-pushed the feature/40-rfc023-approximate-functions branch from 9179ad1 to 50abc7a Compare May 28, 2026 08:06
@dannymeijer dannymeijer changed the title feature - implement RFC 023 approximate count distinct (#40) feature - implement RFC 023 approximate functions (#40) May 28, 2026
@dannymeijer
dannymeijer force-pushed the feature/40-rfc023-approximate-functions branch from 4f4249b to 8bda4bf Compare May 28, 2026 09:57
@dannymeijer
dannymeijer deleted the branch feature/39-rfc022-format-functions May 30, 2026 13:28
@github-project-automation github-project-automation Bot moved this to Done in @IncQL Jun 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant