Repository Analysis

apache/datafusion

Apache DataFusion SQL Query Engine

8.7 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of apache/datafusion, a Rust project with 8,974 GitHub stars. SynthScan v2.0 examined 917,387 lines of code across 2494 source files, recording 5528 pattern matches distributed across 17 syntactic categories. The overall adjusted score of 8.7 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

8.7
Adjusted Score
8.7
Raw Score
100%
Time Factor
2026-07-14
Last Push
9.0K
Stars
Rust
Language
917.4K
Lines of Code
2.5K
Files
5.5K
Pattern Hits
2026-07-14
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 2MEDIUM 963LOW 4563

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 5528 distinct pattern matches across 17 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Over-Commented Block4378 hits · 4080 pts
SeverityFileLineSnippetContext
LOW.asf.yaml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWCargo.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWCargo.toml241# - Debuggability: how much debug information is preserved for debugging and profilingCOMMENT
LOWlychee.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWrustfmt.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWrustfmt.toml21# ignore generated filesCOMMENT
LOWtaplo.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpre-commit.sh1#!/bin/bashCOMMENT
LOWlicenserc.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWrust-toolchain.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/Cargo.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/tpch.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/data_gen.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/data_gen.rs241/// use cases.COMMENT
LOWtest-utils/src/lib.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/lib.rs81/// multiple batchesCOMMENT
LOWtest-utils/src/string_gen.rs1use crate::array_gen::StringArrayGenerator;COMMENT
LOWtest-utils/src/tpcds.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/array_gen/decimal.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/array_gen/boolean.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/array_gen/binary.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/array_gen/mod.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/array_gen/string.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/array_gen/random_data.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWtest-utils/src/array_gen/primitive.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/Cargo.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/tests/cli_integration.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/examples/cli-session-context.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/print_format.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/exec.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/exec.rs461/// in the session context.COMMENT
LOWdatafusion-cli/src/command.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/lib.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/functions.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/functions.rs721/// a List of Structs, with one Struct for each object. DataFusion uses theseCOMMENT
LOWdatafusion-cli/src/object_storage.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/object_storage.rs321}COMMENT
LOWdatafusion-cli/src/cli_context.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/catalog.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/pool_type.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/main.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/highlighter.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/helper.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/print_options.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/object_storage/instrumented.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/object_storage/instrumented.rs581 summaries.sort_by_key(|s| s.operation);COMMENT
LOWdatafusion-cli/src/object_storage/stdin.rs1// Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdatafusion-cli/src/object_storage/stdin.rs41/// [`SessionConfig`]: datafusion::execution::context::SessionConfigCOMMENT
LOWdatafusion-cli/src/object_storage/stdin.rs61/// Utilities for exposing the process's standard input as an object store.COMMENT
LOWdatafusion-cli/src/object_storage/stdin.rs101COMMENT
LOWdatafusion-cli/src/object_storage/stdin.rs261 .await?;COMMENT
LOWci/scripts/rust_fmt.sh1#!/usr/bin/env bashCOMMENT
LOWci/scripts/check_asf_yaml_status_checks.py1#!/usr/bin/env python3COMMENT
LOWci/scripts/typos_check.sh1#!/usr/bin/env bashCOMMENT
LOWci/scripts/check_no_cargo_install_in_workflows.sh1#!/usr/bin/env bashCOMMENT
LOWci/scripts/rust_toml_fmt.sh1#!/usr/bin/env bashCOMMENT
LOWci/scripts/rust_clippy.sh1#!/usr/bin/env bashCOMMENT
LOWci/scripts/changed_crates.sh1#!/usr/bin/env bashCOMMENT
LOWci/scripts/changed_crates.sh21# Subcommands:COMMENT
LOWci/scripts/rust_example.sh1#!/usr/bin/env bashCOMMENT
4318 more matches not shown…
Decorative Section Separators922 hits · 3496 pts
SeverityFileLineSnippetContext
MEDIUMCargo.toml234# --------------------COMMENT
MEDIUMCargo.toml236# --------------------COMMENT
MEDIUMci/scripts/changed_crates.sh34# ── changed-crates ──────────────────────────────────────────────────COMMENT
MEDIUMci/scripts/changed_crates.sh62# ── semver-check ────────────────────────────────────────────────────COMMENT
MEDIUMci/scripts/changed_crates.sh75# ── main ────────────────────────────────────────────────────────────COMMENT
MEDIUMdatafusion/datasource/src/source.rs79/// ┌─────────────────────┐ -----► execute pathCOMMENT
MEDIUMdatafusion/datasource/src/source.rs80/// │ │ ┄┄┄┄┄► init pathCOMMENT
MEDIUMdatafusion/datasource/src/source.rs83/// └───────▲─────────────┘COMMENT
MEDIUMdatafusion/datasource/src/source.rs86/// ┌──────────▼──────────┐ ┌──────────-──────────┐COMMENT
MEDIUMdatafusion/datasource/src/source.rs90/// └───────▲─────────────┘ └─────────────────────┘COMMENT
MEDIUMdatafusion/datasource/src/source.rs92/// ┌───────────────┿──┴────────────────┐ ┊COMMENT
MEDIUMdatafusion/datasource/src/source.rs93/// | ┌┄┄┄┄┄┄┄┄┄┄┄┘ | ┊COMMENT
MEDIUMdatafusion/datasource/src/source.rs95/// ┌──────────▼──────────┐ ┌──────────▼──────────┐ ┊COMMENT
MEDIUMdatafusion/datasource/src/source.rs96/// │ │ │ │ ┌──────────▼──────────┐COMMENT
MEDIUMdatafusion/datasource/src/source.rs99/// └──────────────▲──────┘ └─────────────────────┘ | |COMMENT
MEDIUMdatafusion/datasource/src/source.rs100/// │ ┊ └─────────────────────┘COMMENT
MEDIUMdatafusion/datasource/src/source.rs103/// ┌──────────▼──────────┐ ┌──────────▼──────────┐COMMENT
MEDIUMdatafusion/datasource/src/source.rs105/// │ FileSource(trait) ◄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄│ ... │COMMENT
MEDIUMdatafusion/datasource/src/source.rs107/// └─────────────────────┘ └─────────────────────┘COMMENT
MEDIUMdatafusion/datasource/src/source.rs112/// ┌──────────▼──────────┐COMMENT
MEDIUMdatafusion/datasource/src/source.rs116/// └─────────────────────┘COMMENT
MEDIUMdatafusion/datasource/src/source.rs120/// ┌──────────▼──────────┐COMMENT
MEDIUMdatafusion/datasource/src/source.rs124/// └─────────────────────┘COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs48/// ┌─────────────────┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs53/// │ └─────────────────┘ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs55/// ┌─────────────────┐ ┌ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs56/// │ │ ┌─────────────────┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs61/// │ │ │ └─────────────────┘ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs62/// │ File A (7MB) │ ────────▶ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs64/// │ │ ┌─────────────────┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs69/// │ │ │ └─────────────────┘ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs70/// └─────────────────┘ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs71/// ┌─────────────────┐ ┌ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs72/// │ File B (1MB) │ ┌─────────────────┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs74/// └─────────────────┘ │ Range: 6-7MB │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs75/// │ └─────────────────┘ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs76/// ┌─────────────────┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs79/// │ └─────────────────┘ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs97/// ┌─────────────────┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs102/// ┌─────────────────┐ │ └─────────────────┘ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs105/// │ │ ┌─────────────────┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs109/// │ File A (6MB) │ ────────▶ │ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs110/// │ (ordered) │ │ └─────────────────┘ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs113/// │ │ ┌─────────────────┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs117/// └─────────────────┘ │ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs118/// ┌─────────────────┐ │ └─────────────────┘ │COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs121/// └─────────────────┘ ┌─────────────────┐COMMENT
MEDIUMdatafusion/datasource/src/file_groups.rs124/// │ └─────────────────┘ │COMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs87/// ┌───────────┐ ┌──────────COMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs88/// ┌──────▶ │ batch 1 ├────▶...──────▶│ Batch aCOMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs89/// │ └───────────┘ └──────────COMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs91/// ┌──────────┐ │ ┌───────────┐ ┌──────────COMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs92/// ┌───────────┐ ┌────────────┐ │ │ ├──────▶ │ batch a+1├────▶...──────▶│ Batch bCOMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs93/// │ batch 1 ├────▶...──────▶│ Batch N ├─────▶│ Demux ├────────┤ ... └───────────┘ └──────────COMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs94/// └───────────┘ └────────────┘ │ │ │COMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs95/// └──────────┘ │ ┌───────────┐ ┌──────────COMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs96/// └──────▶ │ batch d ├────▶...──────▶│ Batch nCOMMENT
MEDIUMdatafusion/datasource/src/write/demux.rs97/// └───────────┘ └──────────COMMENT
MEDIUM…usion/datasource/src/file_scan_config/sort_pushdown.rs541/// ┃ ┌───────────────┐ ┌──────────────┐ │COMMENT
MEDIUM…usion/datasource/src/file_scan_config/sort_pushdown.rs544/// │ └───────────────┘ │ │ └──────────────┘ ┃COMMENT
862 more matches not shown…
Structural Annotation Overuse73 hits · 121 pts
SeverityFileLineSnippetContext
LOWdatafusion/physical-plan/src/aggregates/mod.rs6262 // Step 1: Partial aggregation on partition 1COMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs6274 // Step 2: Partial aggregation on partition 2COMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs6296 // Step 3: PartialReduce — combine partial results, still producing stateCOMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs6323 // Step 4: Final aggregation on the PartialReduce outputCOMMENT
LOW…usion/physical-plan/src/aggregates/aggregate_stream.rs160 // Step 1: Update each partition's current boundCOMMENT
LOW…usion/physical-plan/src/aggregates/aggregate_stream.rs197 // Step 2: Sync the dynamic filter physical expression with reader,COMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1454 // Step 1: Create a test batch and measure its sizeCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1458 // Step 2: Configure file rotation to approximately 1 batch per fileCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1482 // Step 4: Verify initial disk usage reflects all filesCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1489 // Step 5: Read NUM_BATCHES - 1 batches (all but 1)COMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1515 // Step 7: Read the final batchCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1519 // Step 8: Drop writer first to signal no more data will be writtenCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1530 // Step 9: Drop reader to release all referencesCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1533 // Step 10: Verify complete cleanup - disk usage should be 0COMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs538 // Step 1: Lock shared state and check coordinationCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs563 // Step 2: Lazy-create reader stream if neededCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs588 // Step 3: Poll the reader stream (no lock held)COMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1469 // Step 3: Write NUM_BATCHES batches to create approximately NUM_BATCHES filesCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1503 // Step 6: Verify disk usage decreased but is not zero (at least 1 batch remains)COMMENT
LOWdatafusion/expr-common/src/interval_arithmetic.rs462 /// NOTE: This function only works with intervals of the same data type.COMMENT
LOWdatafusion/expr-common/src/interval_arithmetic.rs496 /// NOTE: This function only works with intervals of the same data type.COMMENT
LOWdatafusion/expr-common/src/interval_arithmetic.rs530 /// NOTE: This function only works with intervals of the same data type.COMMENT
LOWdatafusion/expr-common/src/interval_arithmetic.rs541 /// NOTE: This function only works with intervals of the same data type.COMMENT
LOWdatafusion/expr-common/src/interval_arithmetic.rs552 /// NOTE: This function only works with intervals of the same data type.COMMENT
LOWdatafusion/expr-common/src/interval_arithmetic.rs767 /// NOTE: This function only works with intervals of the same data type.COMMENT
LOWdatafusion/expr-common/src/interval_arithmetic.rs1394/// NOTE: This function only works with intervals of the same data type.COMMENT
LOWdatafusion/expr-common/src/interval_arithmetic.rs2175 /// NOTE: This function only works with intervals of the same data type.COMMENT
LOWdatafusion/functions-aggregate/src/array_agg.rs661 // Step 1: Count entries per group. For EmitTo::First(n), only groupsCOMMENT
LOWdatafusion/functions-aggregate/src/array_agg.rs673 // Step 2: Do a prefix sum over the counts and use it to build ListArrayCOMMENT
LOWdatafusion/functions-aggregate/src/array_agg.rs692 // Step 3: Scatter entries into group order using the counting sort. TheCOMMENT
LOWdatafusion/functions-aggregate/src/array_agg.rs714 // Step 4: Release state for emitted groups.COMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs132 // Step 1: Match FilterExec at the topCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs140 // Step 2: Extract limit from predicate (rn <= K, rn < K, etc.)COMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs143 // Step 3: Walk through optional ProjectionExec to find BoundedWindowAggExecCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs147 // Step 4: Verify col_idx references a supported window function output columnCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs159 // Step 5: Verify child of window is SortExecCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs163 // Step 6: Determine partition_prefix_len from the window expressionCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs182 // Step 7: Build PartitionedTopKExec using SortExec's expressionsCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs192 // Step 8: Rebuild window with new childCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs197 // Step 9: If ProjectionExec was between Filter and Window, rebuild itCOMMENT
LOWdatafusion/datasource-parquet/src/sort.rs590 // Step 1: Create PreparedAccessPlanCOMMENT
LOWdatafusion/datasource-parquet/src/sort.rs607 // Step 2: Reverse the plan (this is the production code path)COMMENT
LOWdatafusion/datasource-parquet/src/sort.rs808 // Step 1: Create PreparedAccessPlanCOMMENT
LOWdatafusion/datasource-parquet/src/sort.rs854 // Step 2: Reverse the plan (this is the production code path)COMMENT
LOWdatafusion/datasource-parquet/src/push_decoder.rs296 // Step 1: drain a batch from the active reader if any.COMMENT
LOWdatafusion/datasource-parquet/src/push_decoder.rs318 // Step 2: when the decoder is sitting on a row-group boundary,COMMENT
LOWdatafusion/datasource-parquet/src/push_decoder.rs372 // Step 3: drive the decoder.COMMENT
LOWdatafusion/spark/src/function/string/concat.rs122 // Step 1: Check for NULL mask in incoming argsCOMMENT
LOWdatafusion/spark/src/function/string/concat.rs133 // Step 2: Delegate to DataFusion's concatCOMMENT
LOWdatafusion/spark/src/function/string/concat.rs145 // Step 3: Apply NULL mask to resultCOMMENT
LOWdatafusion/sql/src/expr/mod.rs290 // NOTE: This function is called recursively, so each match arm body should be asCOMMENT
LOWdocs/source/contributor-guide/inviting.md49### Step 1: Start a Discussion ThreadCOMMENT
LOWdocs/source/contributor-guide/inviting.md75### Step 2: Formal VoteCOMMENT
LOWdocs/source/contributor-guide/inviting.md108### Step 3: Send Invitation to the CandidateCOMMENT
LOWdocs/source/contributor-guide/inviting.md126### Step 4: Announce and Celebrate the New CommitterCOMMENT
LOWdocs/source/contributor-guide/inviting.md289### Step 1: Start a Discussion ThreadCOMMENT
LOWdocs/source/contributor-guide/inviting.md313### Step 2: Formal VoteCOMMENT
LOWdocs/source/contributor-guide/inviting.md347### Step 3: Send invitation emailCOMMENT
LOWdocs/source/contributor-guide/inviting.md399### Step 4: Chair Promotes the Committer to PMCCOMMENT
LOWdocs/source/contributor-guide/inviting.md403### Step 5: Announce and Celebrate the New PMC MemberCOMMENT
13 more matches not shown…
Verbosity Indicators53 hits · 90 pts
SeverityFileLineSnippetContext
LOWdatafusion/physical-plan/src/aggregates/mod.rs6262 // Step 1: Partial aggregation on partition 1COMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs6274 // Step 2: Partial aggregation on partition 2COMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs6296 // Step 3: PartialReduce — combine partial results, still producing stateCOMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs6323 // Step 4: Final aggregation on the PartialReduce outputCOMMENT
LOW…usion/physical-plan/src/aggregates/aggregate_stream.rs160 // Step 1: Update each partition's current boundCOMMENT
LOW…usion/physical-plan/src/aggregates/aggregate_stream.rs197 // Step 2: Sync the dynamic filter physical expression with reader,COMMENT
LOW…plan/src/aggregates/group_values/multi_group_by/mod.rs1135 // In non-streaming case, we need to check if the `group index view`COMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1454 // Step 1: Create a test batch and measure its sizeCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1458 // Step 2: Configure file rotation to approximately 1 batch per fileCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1482 // Step 4: Verify initial disk usage reflects all filesCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1489 // Step 5: Read NUM_BATCHES - 1 batches (all but 1)COMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1515 // Step 7: Read the final batchCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1519 // Step 8: Drop writer first to signal no more data will be writtenCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1530 // Step 9: Drop reader to release all referencesCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1533 // Step 10: Verify complete cleanup - disk usage should be 0COMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs538 // Step 1: Lock shared state and check coordinationCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs563 // Step 2: Lazy-create reader stream if neededCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs588 // Step 3: Poll the reader stream (no lock held)COMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1469 // Step 3: Write NUM_BATCHES batches to create approximately NUM_BATCHES filesCOMMENT
LOWdatafusion/physical-plan/src/spill/spill_pool.rs1503 // Step 6: Verify disk usage decreased but is not zero (at least 1 batch remains)COMMENT
LOWdatafusion/functions-aggregate/src/array_agg.rs661 // Step 1: Count entries per group. For EmitTo::First(n), only groupsCOMMENT
LOWdatafusion/functions-aggregate/src/array_agg.rs673 // Step 2: Do a prefix sum over the counts and use it to build ListArrayCOMMENT
LOWdatafusion/functions-aggregate/src/array_agg.rs692 // Step 3: Scatter entries into group order using the counting sort. TheCOMMENT
LOWdatafusion/functions-aggregate/src/array_agg.rs714 // Step 4: Release state for emitted groups.COMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs132 // Step 1: Match FilterExec at the topCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs140 // Step 2: Extract limit from predicate (rn <= K, rn < K, etc.)COMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs143 // Step 3: Walk through optional ProjectionExec to find BoundedWindowAggExecCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs147 // Step 4: Verify col_idx references a supported window function output columnCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs159 // Step 5: Verify child of window is SortExecCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs163 // Step 6: Determine partition_prefix_len from the window expressionCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs182 // Step 7: Build PartitionedTopKExec using SortExec's expressionsCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs192 // Step 8: Rebuild window with new childCOMMENT
LOWdatafusion/physical-optimizer/src/window_topn.rs197 // Step 9: If ProjectionExec was between Filter and Window, rebuild itCOMMENT
LOWdatafusion/datasource-parquet/src/sort.rs590 // Step 1: Create PreparedAccessPlanCOMMENT
LOWdatafusion/datasource-parquet/src/sort.rs607 // Step 2: Reverse the plan (this is the production code path)COMMENT
LOWdatafusion/datasource-parquet/src/sort.rs808 // Step 1: Create PreparedAccessPlanCOMMENT
LOWdatafusion/datasource-parquet/src/sort.rs854 // Step 2: Reverse the plan (this is the production code path)COMMENT
LOWdatafusion/datasource-parquet/src/push_decoder.rs296 // Step 1: drain a batch from the active reader if any.COMMENT
LOWdatafusion/datasource-parquet/src/push_decoder.rs318 // Step 2: when the decoder is sitting on a row-group boundary,COMMENT
LOWdatafusion/datasource-parquet/src/push_decoder.rs372 // Step 3: drive the decoder.COMMENT
LOWdatafusion/spark/src/function/string/concat.rs122 // Step 1: Check for NULL mask in incoming argsCOMMENT
LOWdatafusion/spark/src/function/string/concat.rs133 // Step 2: Delegate to DataFusion's concatCOMMENT
LOWdatafusion/spark/src/function/string/concat.rs145 // Step 3: Apply NULL mask to resultCOMMENT
LOW…s/examples/custom_data_source/adapter_serialization.rs87 // Step 1: Create sample Parquet data in memoryCOMMENT
LOW…s/examples/custom_data_source/adapter_serialization.rs94 // Step 2: Set up session with custom adapterCOMMENT
LOW…s/examples/custom_data_source/adapter_serialization.rs120 // Step 3: Create physical plan with filterCOMMENT
LOW…s/examples/custom_data_source/adapter_serialization.rs129 // Step 4: Serialize with our custom codecCOMMENT
LOW…s/examples/custom_data_source/adapter_serialization.rs140 // Step 5: Deserialize with our custom codecCOMMENT
LOW…s/examples/custom_data_source/adapter_serialization.rs150 // Step 6: Execute and compare resultsCOMMENT
LOWbenchmarks/bench.sh1348 # Step 1: Write a single sorted file with small (100K-row) RGsCOMMENT
LOWbenchmarks/bench.sh1361 # Step 2: Redistribute RGs into 3 files with scrambled RG order.COMMENT
LOWbenchmarks/bench.sh1411 # Step 1: Write a single sorted file with small (100K-row) RGsCOMMENT
LOWbenchmarks/bench.sh1424 # Step 2: Redistribute into 5 files with scrambled RG order.COMMENT
AI Slop Vocabulary21 hits · 62 pts
SeverityFileLineSnippetContext
MEDIUM…afusion/physical-plan/src/joins/symmetric_hash_join.rs122/// Prune build side when the new RecordBatch comes to the probe side. We utilize interval arithmeticCOMMENT
MEDIUMdatafusion/physical-plan/src/joins/stream_join_utils.rs399/// we can utilize sorting information while traversing the filter expressionCOMMENT
MEDIUMdatafusion/physical-plan/src/windows/mod.rs478 // we might be able to leverage this property.COMMENT
MEDIUMdatafusion/physical-plan/src/windows/mod.rs482 // monotonicity, we can utilize it to introduce new orderings.COMMENT
MEDIUMdatafusion/physical-plan/src/windows/mod.rs508 // utilize set-monotonicity since the set shrinks as the frameCOMMENT
MEDIUMdatafusion/physical-plan/src/sorts/partitioned_topk.rs172/// cases, the sort-based plan is more robust. Therefore, this optimizationCOMMENT
MEDIUMdatafusion/physical-expr-common/src/physical_expr.rs251 /// Expressions (should) implement this function and utilize the independenceCOMMENT
MEDIUMdatafusion/core/tests/parquet/page_pruning.rs1073 // to be robust against future changes in defaults as requested by reviewers.COMMENT
MEDIUMdatafusion/core/src/lib.rs560//! If your system does not fully utilize either the CPU or network bandwidthCOMMENT
MEDIUMdatafusion/expr/src/udwf.rs233/// implemented directly. Instead, implement [`Eq`] and [`Hash`] and leverage theCOMMENT
MEDIUMdatafusion/expr/src/type_coercion/functions.rs842 // f64 is chosen since most of the math functions utilize Signature::numeric,COMMENT
MEDIUMdatafusion/common/src/config.rs1373 /// repartitioning to increase parallelism to leverage more CPU coresCOMMENT
MEDIUMdatafusion/physical-optimizer/src/join_selection.rs19//! accommodate infinite sources and utilize statistical information (if thereCOMMENT
MEDIUM…imizer/src/ensure_requirements/enforce_distribution.rs939 /// i.e. the operator can actually utilize parallelism.COMMENT
MEDIUMdatafusion/execution/src/config.rs418 /// add round robin repartition to increase parallelism to leverage more CPU cores.COMMENT
MEDIUMdatafusion/functions/src/regex/regexpreplace.rs619 // leverage it in order to determine whether the scalarityCOMMENT
MEDIUMdatafusion/sql/src/planner.rs244/// Struct to store the states used by the Planner. The Planner will leverage the statesCOMMENT
MEDIUMdatafusion-examples/examples/query_planning/expr_api.rs361/// This function shows how to think about and leverage the analysis APICOMMENT
MEDIUMdatafusion-examples/examples/dataframe/cache_factory.rs43/// This example demonstrates how to leverage [CacheFactory] to implement custom caching strategies for dataframes in DaCOMMENT
MEDIUM…xamples/examples/builtin_functions/function_factory.rs37/// This example shows how to utilize [FunctionFactory] to implement simpleCOMMENT
MEDIUMbenchmarks/bench.sh828# its native DATAFUSION_* config before invoking bench.sh -- the harness readsCOMMENT
Redundant / Tautological Comments24 hits · 38 pts
SeverityFileLineSnippetContext
LOWci/scripts/check_asf_yaml_status_checks.py67 # Check if pull_request trigger has path filtersCOMMENT
LOWci/scripts/check_asf_yaml_status_checks.py112 # Check if ALL workflows providing this job have path filtersCOMMENT
LOWdatafusion/optimizer/src/common_subexpr_eliminate.rs446 /// # Return valueCOMMENT
LOWdatafusion/expr/src/udwf.rs407 /// # Return valueCOMMENT
LOWdatafusion/expr/src/udaf.rs795 /// # Return valueCOMMENT
LOWdatafusion/expr/src/higher_order_function.rs675 /// # Return valueCOMMENT
LOWdatafusion/expr/src/higher_order_function.rs803 /// # Return valueCOMMENT
LOWdatafusion/expr/src/udf.rs1006 /// # Return valueCOMMENT
LOWdatafusion/expr/src/utils.rs1261/// # Return valueCOMMENT
LOWdatafusion/expr/src/utils.rs1288/// # Return valueCOMMENT
LOWdatafusion/expr/src/logical_plan/plan.rs621 /// # Return valueCOMMENT
LOWbenchmarks/bench.sh706 # Check if `web_site.parquet` exists in the TPCDS data directory to verify data presenceCOMMENT
LOWbenchmarks/bench.sh870 # Check if TPCDS data directory and representative file existsCOMMENT
LOWbenchmarks/bench.sh1033 # Check if required files existCOMMENT
LOWbenchmarks/queries/clickbench/update_queries.sh47# Check if download was successfulCOMMENT
LOWbenchmarks/queries/clickbench/update_queries.sh61# Read the file line by line and create individual query filesCOMMENT
LOWbenchmarks/queries/clickbench/update_queries.sh74 # Increment counterCOMMENT
LOWdev/release/add-branch-protection.sh40# Check if release number is providedCOMMENT
LOWdev/release/add-branch-protection.sh60# Check if .asf.yaml existsCOMMENT
LOWdev/release/add-branch-protection.sh67# Check if the branch exists in the official Apache DataFusion repositoryCOMMENT
LOWdev/release/add-branch-protection.sh80# Check if branch protection already exists for this releaseCOMMENT
LOWdev/release/add-branch-protection.sh89# Read the file and insert the new branch protection blockCOMMENT
LOWdev/release/add-branch-protection.sh115 # Check if this belongs to the last branch block by looking aheadCOMMENT
LOWdev/release/add-branch-protection.sh137# Check if awk succeededCOMMENT
Self-Referential Comments8 hits · 30 pts
SeverityFileLineSnippetContext
MEDIUMpre-commit.sh20# This file is git pre-commit hook.COMMENT
MEDIUMci/scripts/utils/tool_versions.sh20# This file defines centralized tool versions used by CI and development scripts.COMMENT
MEDIUMdatafusion/expr/src/logical_plan/plan.rs96/// ## Creating a LogicalPlan from SQL:COMMENT
MEDIUMdatafusion/expr/src/logical_plan/plan.rs100/// ## Creating a LogicalPlan from the DataFrame API:COMMENT
MEDIUMdatafusion/expr/src/logical_plan/plan.rs104/// ## Creating a LogicalPlan programmatically:COMMENT
MEDIUMdocs/scripts/update_committer_list.py165 # Create a map of existing committers by apache idCOMMENT
MEDIUMbenchmarks/bench.sh67# Create the datasets for all benchmarks in $DATA_DIRCOMMENT
MEDIUMdev/release/add-branch-protection.sh86# Create a temporary fileCOMMENT
Synthetic Comment Markers2 hits · 15 pts
SeverityFileLineSnippetContext
HIGHdatafusion/core/tests/parquet/page_pruning.rs1073 // to be robust against future changes in defaults as requested by reviewers.COMMENT
HIGHdocs/source/contributor-guide/index.md206### Why fully AI-generated PRs without understanding are not helpfulCOMMENT
Excessive Try-Catch Wrapping9 hits · 15 pts
SeverityFileLineSnippetContext
LOWdocs/scripts/update_committer_list.py63 except Exception as e:CODE
MEDIUMdocs/scripts/update_committer_list.py64 print(f"Error fetching ASF roster: {e}")CODE
LOWdocs/scripts/update_committer_list.py90 except Exception as e:CODE
MEDIUMdocs/scripts/update_committer_list.py91 print(f"Error fetching ASF people: {e}")CODE
MEDIUMdocs/scripts/update_committer_list.py153 print(f"Error: File {file_path} not found")CODE
MEDIUMdocs/scripts/update_committer_list.py219 print("Error: Could not find table markers in file")CODE
LOWdocs/scripts/update_committer_list.py237 except Exception as e:CODE
MEDIUMdocs/scripts/update_committer_list.py238 print(f"Error writing file: {e}")CODE
MEDIUMdocs/scripts/update_committer_list.py253 print(f"Error: Governance file not found at {governance_file}")CODE
TODO Padding9 hits · 14 pts
SeverityFileLineSnippetContext
LOWdatafusion/physical-plan/src/aggregates/mod.rs1095 // TODO: implement memory-limited path and remove this limitationCOMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs1108 // TODO: implement memory-limited path and remove this limitationCOMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs1121 // TODO: implement memory-limited path and remove this limitationCOMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs1136 // TODO: implement memory-limited path and remove this limitationCOMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs1149 // TODO: implement memory-limited path and remove this limitationCOMMENT
LOWdatafusion/physical-plan/src/aggregates/mod.rs1164 // TODO: implement memory-limited path and remove this limitationCOMMENT
LOWdatafusion/physical-expr/src/async_scalar_function.rs222 // TODO: implement this for scalar value inputCOMMENT
LOWdatafusion/expr-common/src/signature.rs1012 // TODO: implement for nested typesCOMMENT
LOWdatafusion/expr-common/src/interval_arithmetic.rs4092 // TODO: Add tests for non-exponential boundary aligned intervals too.COMMENT
Slop Phrases5 hits · 14 pts
SeverityFileLineSnippetContext
MEDIUM…ples/examples/custom_data_source/custom_file_format.rs94/// for demonstration purposes.COMMENT
MEDIUM…ples/examples/custom_data_source/custom_file_format.rs175/// for demonstration purposes.COMMENT
MEDIUMdatafusion-examples/examples/udf/advanced_udf.rs110 // For demonstration purposes we also implement the scalar / scalarCOMMENT
MEDIUMdatafusion-examples/examples/udf/advanced_udf.rs237 // we will return an error for demonstration purposesCOMMENT
LOW.github/workflows/rust.yml68 # date with the manifest. When this fails, please make sure to commitCOMMENT
Unused Imports6 hits · 6 pts
SeverityFileLineSnippetContext
LOWdocs/scripts/update_committer_list.py26CODE
LOWdocs/scripts/update_committer_list.py30CODE
LOWdocs/scripts/update_committer_list.py30CODE
LOWbenchmarks/compile_profile.py30CODE
LOWbenchmarks/compare.py19CODE
LOWbenchmarks/lineprotocol.py79CODE
Modern AI Meta-Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMbenchmarks/bench.sh21# etc and orchestrates gathering data and run the benchmark binary inCOMMENT
MEDIUMbenchmarks/queries/clickbench/update_queries.sh21# etc and orchestrates gathering data and run the benchmark binary inCOMMENT
Hyper-Verbose Identifiers5 hits · 5 pts
SeverityFileLineSnippetContext
LOWdocs/rustdoc_trim.py25def remove_hashtag_lines_in_rust_blocks(markdown_content):CODE
LOWdev/update_arrow_deps.py57def update_commit_dependencies(dependencies, new_sha):CODE
LOWdev/update_arrow_deps.py81def update_version_cargo_toml(cargo_toml, new_version):CODE
LOWdev/update_datafusion_versions.py78def update_datafusion_version(cargo_toml: str, new_version: str):CODE
LOWdev/update_datafusion_versions.py91def update_downstream_versions(cargo_toml: str, new_version: str):CODE
Example Usage Blocks3 hits · 4 pts
SeverityFileLineSnippetContext
LOWdatafusion/expr-common/src/interval_arithmetic.rs1376/// Example usage:COMMENT
LOWdatafusion/common/src/metadata.rs221 /// # Example usageCOMMENT
LOWdev/release/add-branch-protection.sh27# Usage:COMMENT
Fake / Example Data4 hits · 4 pts
SeverityFileLineSnippetContext
LOWdatafusion/catalog-listing/src/helpers.rs595 "John Doe",CODE
LOWdatafusion/catalog-listing/src/helpers.rs869 evaluate_partition_prefix(partitions, &[col("a").eq(lit("John Doe"))]),CODE
LOWdatafusion/catalog-listing/src/helpers.rs876 &[col("a").eq(lit("foo")).and(col("b").eq(lit("John Doe")))],CODE
LOWdev/release/README.md68(gpg --list-sigs "John Doe" && gpg --armor --export "John Doe") >> KEYSCODE
Deep Nesting4 hits · 4 pts
SeverityFileLineSnippetContext
LOWdocs/scripts/update_committer_list.py98CODE
LOWdev/update_arrow_deps.py81CODE
LOWdev/release/download-python-wheels.py35CODE
LOWdev/release/generate-changelog.py36CODE