AI Slop Code RIsk Monitor

neondatabase/neon

Neon: Serverless Postgres. We separated storage and compute to offer autoscaling, code-like database branching, and scale to zero.

5.6 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for neondatabase/neon, a Rust project with 23,186 GitHub stars. SynthScan examined 444,432 lines of code across 1505 source files, recording 1890 pattern matches distributed across 23 syntactic categories. The legacy adjusted pattern signal is 5.6 (Moderate pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

5.6
Adjusted Signal
5.6
Raw Pattern Score
100%
Time Factor
2026-08-31
Last Push
23.2K
Stars
Rust
Language
444.4K
Lines of Code
1.5K
Files
1.9K
Pattern Hits
2026-10-12
Scan Date
0.03
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 16.5/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 1486 finding(s).

Hallucinated Dependency & Supply Chain Risk 2.9/100 · LOW

Are imports declared and package/API names verified? 216 finding(s).

Agent Over-Engineering Ratio 11.5/100 · LOW

Are wrappers, guards, and repeated structures necessary? 734 finding(s).

PR Review Velocity Impact 24.2/100 · LOW

Which changes need focused human review? 1890 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 1HIGH 38MEDIUM 189LOW 1662

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 1890 distinct pattern matches across 23 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. 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 configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Over-Commented Block740 hits · 734 pts
SeverityFileLineSnippetContext
LOWrun_clippy.sh1#!/usr/bin/env bashCOMMENT
LOW.config/hakari.toml1# This file contains settings for `cargo hakari`.COMMENT
LOWtest_runner/websocket_tunnel.py1#!/usr/bin/env python3COMMENT
LOWtest_runner/regress/test_pg_regress.py61 # 9.5) is that all the regression tests that deal with unlogged tablesCOMMENT
LOWtest_runner/regress/test_tenant_relocation.py461 pageserver_http.configure_failpoints(("pageserver-wal-ingest-logical-message-sleep", "off"))COMMENT
LOWtest_runner/regress/test_tenant_relocation.py481#COMMENT
LOWtest_runner/regress/test_tenant_relocation.py501# The bug occurs if the child branch's walreceiver runs before theCOMMENT
LOWtest_runner/regress/test_tenant_relocation.py521# put_rel_creation:COMMENT
LOWtest_runner/regress/test_next_xid.py301 # run a workload that consumes a lot of multi-XIDs until we approach that, but thatCOMMENT
LOWtest_runner/regress/test_compatibility.py41# The path to the snapshot is configured by COMPATIBILITY_SNAPSHOT_DIR environment variable.COMMENT
LOWtest_runner/regress/test_compatibility.py61# ./scripts/pytest -k test_create_snapshotCOMMENT
LOWtest_runner/regress/test_compatibility.py81# # Build previous version of binaries and store them somewhere:COMMENT
LOWtest_runner/regress/test_compatibility.py101# export DEFAULT_PG_VERSION=17COMMENT
LOWtest_runner/regress/test_sharding.py681 # Assert on how many reconciles happened during the process. This is something of anCOMMENT
LOWtest_runner/regress/test_sharding.py1481 workload.validate()COMMENT
LOWtest_runner/regress/test_remote_storage.py41#COMMENT
LOWtest_runner/regress/test_timeline_detach_ancestor.py741COMMENT
LOWtest_runner/regress/test_timeline_detach_ancestor.py1921# TEST: 1. tad which partially succeeds, one returns 500COMMENT
LOWtest_runner/regress/test_hot_standby.py121# in protocol version v2 two LSNs were introduced: main request_lsn (apply LSNCOMMENT
LOWtest_runner/regress/test_download_extensions.py261# when the library is used in the query.COMMENT
LOWtest_runner/regress/test_tenant_detach.py141COMMENT
LOWtest_runner/regress/test_tenant_detach.py161# signal to all in-progress tasks associated with the tenant.COMMENT
LOWtest_runner/regress/test_pageserver_secondary.py161COMMENT
LOWtest_runner/regress/test_wal_acceptor.py1181 # Now recheck again flush_lsn and exit if it is goodCOMMENT
LOWtest_runner/regress/test_wal_acceptor.py1781 sk.http_client().timeline_digest(tenant_id, timeline_id, timeline_start_lsn, dst_flush_lsn)COMMENT
LOWtest_runner/regress/test_branch_and_gc.py21# Consider two LSNs `lsn1` and `lsn2` with some delta files as follows:COMMENT
LOWtest_runner/regress/test_branch_and_gc.py41# ...COMMENT
LOWtest_runner/regress/test_branch_and_gc.py101 )COMMENT
LOWtest_runner/regress/test_nbtree_pagesplit_cycleid.py81 "DECLARE foo NO SCROLL CURSOR FOR SELECT row_number() over () FROM t ORDER BY id ASC"COMMENT
LOWtest_runner/regress/test_nbtree_pagesplit_cycleid.py101 ses3t = threading.Thread(target=vacuum_freeze_t, args=(ses3, wait_evt))COMMENT
LOWtest_runner/regress/test_wal_restore.py201 assert restored.safe_psql("select count(*) from t", user="cloud_admin") == [(300000,)]COMMENT
LOWtest_runner/regress/test_wal_restore.py221# superuser_name = "databricks_superuser"COMMENT
LOWtest_runner/regress/test_wal_restore.py241# }COMMENT
LOWtest_runner/regress/test_wal_restore.py261# test_instance_name_1,COMMENT
LOWtest_runner/regress/test_wal_restore.py281COMMENT
LOWtest_runner/regress/test_wal_restore.py301COMMENT
LOWtest_runner/regress/test_replica_start.py341 # The transaction in primary has not committed yet.COMMENT
LOWtest_runner/performance/test_compaction.py141 compaction_mapped_rss = after - beforeCOMMENT
LOW…st_runner/performance/test_storage_controller_scale.py381 f.result()COMMENT
LOWtest_runner/performance/test_random_writes.py21 env = neon_with_baselineCOMMENT
LOWtest_runner/performance/test_compute_startup.py21# `ping localhost`COMMENT
LOWtest_runner/performance/test_compute_startup.py41 endpoint = NoneCOMMENT
LOWtest_runner/performance/test_write_amplification.py1# Demonstrate Write Amplification with naive oldest-first layer checkpointingCOMMENT
LOWtest_runner/performance/test_write_amplification.py41 cur.execute(f"create index on tbl{i} (i);")COMMENT
LOW…est_pageserver_max_throughput_getpage_at_latest_lsn.py181 0, 17COMMENT
LOWstorage_scrubber/src/lib.rs41const CLOUD_ADMIN_API_TOKEN_ENV_VAR: &str = "CLOUD_ADMIN_API_TOKEN";COMMENT
LOWsafekeeper/spec/modelcheck.sh41echo "" >> $outfileCOMMENT
LOWsafekeeper/src/control_file_upgrade.rs101 /// of last record streamed to everyone)COMMENT
LOWsafekeeper/src/control_file_upgrade.rs121 pub proposer_uuid: PgUuid,COMMENT
LOWsafekeeper/src/control_file_upgrade.rs161 /// Since which LSN safekeeper has (had) WAL for this timeline.COMMENT
LOWsafekeeper/src/control_file_upgrade.rs181 // Peers and their state as we remember it. Knowing peers themselves isCOMMENT
LOWsafekeeper/src/control_file_upgrade.rs201 /// for correctness, exists for monitoring purposes.COMMENT
LOWsafekeeper/src/control_file_upgrade.rs221 /// only by walproposer.COMMENT
LOWsafekeeper/src/control_file_upgrade.rs281 /// Unique id of the last *elected* proposer we dealt with. Not neededCOMMENT
LOWsafekeeper/src/control_file_upgrade.rs301 /// walproposer proto called 'truncate_lsn'. Updates are currently drivedCOMMENT
LOWsafekeeper/src/recovery.rs41 let cancel = tli.cancel.clone();COMMENT
LOWsafekeeper/src/timeline.rs601 self.cancel.cancel();COMMENT
LOWsafekeeper/src/timeline.rs641 Ok(dir_existed)COMMENT
LOWsafekeeper/src/pull_timeline.rs121/// Build a tokio_tar stream that sends encoded bytes into a Bytes channel.COMMENT
LOWsafekeeper/src/pull_timeline.rs281COMMENT
680 more matches not shown…
Hyper-Verbose Identifiers546 hits · 486 pts
SeverityFileLineSnippetContext
LOWtest_runner/regress/test_compute_http.py17def test_compute_no_scope_claim(neon_simple_env: NeonEnv):CODE
LOWtest_runner/regress/test_compute_http.py50def test_compute_admin_scope_claim(neon_simple_env: NeonEnv, audience: str | None):CODE
LOWtest_runner/regress/test_sni_router.py156def test_pg_sni_router_in_proxy(CODE
LOW…st_runner/regress/test_pageserver_metric_collection.py203def test_metric_collection_cleans_up_tempfile(STRING
LOW…st_runner/regress/test_pageserver_metric_collection.py329def iterate_pageserver_workdir(path: Path, prefix: str) -> PrefixPartitionedFiles:STRING
LOWtest_runner/regress/test_pg_regress.py420def test_tx_abort_with_many_relations(CODE
LOWtest_runner/regress/test_tenants_with_remote_storage.py102def test_tenants_attached_after_download(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_tenants_with_remote_storage.py199def test_tenant_redownloads_truncated_file_on_startup(STRING
LOWtest_runner/regress/test_tenant_relocation.py148def switch_pg_to_new_pageserver(CODE
LOWtest_runner/regress/test_tenant_relocation.py396def test_emergency_relocate_with_branches_slow_replay(CODE
LOWtest_runner/regress/test_tenant_relocation.py550def test_emergency_relocate_with_branches_createdb(CODE
LOWtest_runner/regress/test_disk_usage_eviction.py49def test_min_resident_size_override_handling(CODE
LOWtest_runner/regress/test_disk_usage_eviction.py169 def pageserver_start_with_disk_usage_eviction(CODE
LOWtest_runner/regress/test_disk_usage_eviction.py360def test_broken_tenants_are_skipped(eviction_env: EvictionEnv):CODE
LOWtest_runner/regress/test_disk_usage_eviction.py413def test_pageserver_evicts_until_pressure_is_relieved(CODE
LOWtest_runner/regress/test_disk_usage_eviction.py447def test_pageserver_respects_overridden_resident_size(CODE
LOWtest_runner/regress/test_disk_usage_eviction.py524def test_pageserver_falls_back_to_global_lru(eviction_env: EvictionEnv, order: EvictionOrder):CODE
LOWtest_runner/regress/test_disk_usage_eviction.py557def test_partial_evict_tenant(eviction_env: EvictionEnv, order: EvictionOrder):CODE
LOWtest_runner/regress/test_disk_usage_eviction.py734def test_statvfs_error_handling(eviction_env: EvictionEnv):CODE
LOWtest_runner/regress/test_disk_usage_eviction.py756def test_statvfs_pressure_usage(eviction_env: EvictionEnv):CODE
LOWtest_runner/regress/test_disk_usage_eviction.py807def test_statvfs_pressure_min_avail_bytes(eviction_env: EvictionEnv):CODE
LOWtest_runner/regress/test_disk_usage_eviction.py843 def more_than_min_avail_bytes_freed():CODE
LOWtest_runner/regress/test_disk_usage_eviction.py852def test_secondary_mode_eviction(eviction_env_ha: EvictionEnv):CODE
LOWtest_runner/regress/test_disk_usage_eviction.py900def test_import_timeline_disk_pressure_eviction(CODE
LOWtest_runner/regress/test_pageserver_catchup.py13def test_pageserver_catchup_while_compute_down(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_next_xid.py287def test_multixid_wraparound_import(CODE
LOWtest_runner/regress/test_compatibility.py214def test_backward_compatibility(CODE
LOWtest_runner/regress/test_compatibility.py243def test_forward_compatibility(CODE
LOWtest_runner/regress/test_compatibility.py506def test_historic_storage_formats(CODE
LOWtest_runner/regress/test_pageserver_api.py64def test_pageserver_http_get_wal_receiver_not_found(neon_simple_env: NeonEnv):CODE
LOWtest_runner/regress/test_pageserver_api.py113def test_pageserver_http_get_wal_receiver_success(neon_simple_env: NeonEnv):CODE
LOWtest_runner/regress/test_pageserver_api.py132def test_pageserver_http_api_client(neon_simple_env: NeonEnv):CODE
LOWtest_runner/regress/test_pageserver_api.py138def test_pageserver_http_api_client_auth_enabled(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_pageserver_api.py149def test_pageserver_http_index_part_force_patch(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_pageserver_api.py170def test_pageserver_get_tenant_visible_size(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_unstable_extensions.py12def test_unstable_extensions_installation(neon_simple_env: NeonEnv):CODE
LOWtest_runner/regress/test_neon_cli.py23def helper_compare_timeline_list(CODE
LOWtest_runner/regress/test_neon_cli.py69def helper_compare_tenant_list(pageserver_http_client: PageserverHttpClient, env: NeonEnv):CODE
LOWtest_runner/regress/test_neon_cli.py156def test_cli_start_stop_multi(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_neon_cli.py205def test_parse_project_git_version_output_positive():CODE
LOWtest_runner/regress/test_neon_cli.py225def test_parse_project_git_version_output_local_docker():CODE
LOWtest_runner/regress/test_neon_cli.py240def test_binaries_version_parses(neon_binpath: Path):CODE
LOWtest_runner/regress/test_layer_eviction.py260 def ensure_resident_and_remote_size_metrics():CODE
LOWtest_runner/regress/test_ddl_forwarding.py314def test_ddl_forwarding_invalid_db(neon_simple_env: NeonEnv):CODE
LOWtest_runner/regress/test_ddl_forwarding.py358def test_ddl_forwarding_role_specs(neon_simple_env: NeonEnv):CODE
LOWtest_runner/regress/test_event_trigger_extension.py23def neon_env_builder_event_trigger_extension(CODE
LOWtest_runner/regress/test_event_trigger_extension.py51def test_event_trigger_extension(neon_env_builder_event_trigger_extension: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_safekeeper_migration.py24def test_safekeeper_migration_simple(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_safekeeper_migration.py91def test_new_sk_set_validation(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_safekeeper_migration.py126def test_safekeeper_migration_common_set_failpoints(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_safekeeper_migration.py202def test_sk_generation_aware_tombstones(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_safekeeper_migration.py291def test_safekeeper_migration_stale_timeline(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_safekeeper_migration.py383def test_pull_from_most_advanced_sk(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_safekeeper_migration.py465def test_abort_safekeeper_migration(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_auth.py27def assert_client_not_authorized(env: NeonEnv, http_client: PageserverHttpClient):CODE
LOWtest_runner/regress/test_auth.py75def test_compute_auth_to_pageserver(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_auth.py94def test_pageserver_multiple_keys(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_auth.py148def test_pageserver_key_reload(neon_env_builder: NeonEnvBuilder):CODE
LOWtest_runner/regress/test_proxy_metric_collection.py43def proxy_with_metric_collector(CODE
LOWtest_runner/regress/test_proxy_metric_collection.py80async def test_proxy_metric_collection(CODE
486 more matches not shown…
Decorative Section Separators79 hits · 345 pts
SeverityFileLineSnippetContext
MEDIUMtest_runner/regress/test_pageserver_secondary.py611 # ==============================COMMENT
MEDIUMtest_runner/regress/test_pageserver_secondary.py626 # ===================================================================COMMENT
MEDIUMtest_runner/regress/test_pageserver_secondary.py659 # ==================================================================COMMENT
MEDIUMtest_runner/regress/test_pageserver_secondary.py691 # ========================COMMENT
MEDIUMtest_runner/regress/test_pageserver_secondary.py697 # ===================================COMMENT
MEDIUM⚡test_runner/performance/test_branching.py15# -----------------------------------------------------------------------COMMENT
MEDIUM⚡test_runner/performance/test_branching.py17# -----------------------------------------------------------------------COMMENT
MEDIUMtest_runner/performance/test_branching.py99# -----------------------------------------------------------------------COMMENT
MEDIUMtest_runner/performance/test_branching.py101# -----------------------------------------------------------------------COMMENT
MEDIUM⚡.github/workflows/random-ops-test.yml6 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/random-ops-test.yml7 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/random-ops-test.yml8 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/random-ops-test.yml9 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/random-ops-test.yml10 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/force-test-extensions-upgrade.yml5 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/force-test-extensions-upgrade.yml6 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/force-test-extensions-upgrade.yml7 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/force-test-extensions-upgrade.yml8 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/force-test-extensions-upgrade.yml9 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/ingest_benchmark.yml9 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/ingest_benchmark.yml10 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/ingest_benchmark.yml11 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/ingest_benchmark.yml12 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/ingest_benchmark.yml13 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/periodic_pagebench.yml6 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/periodic_pagebench.yml7 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/periodic_pagebench.yml8 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/periodic_pagebench.yml9 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/periodic_pagebench.yml10 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/large_oltp_growth.yml8 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/large_oltp_growth.yml9 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/large_oltp_growth.yml10 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/large_oltp_growth.yml11 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/large_oltp_growth.yml12 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/cloud-regress.yml5 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/cloud-regress.yml6 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/cloud-regress.yml7 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/cloud-regress.yml8 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/cloud-regress.yml9 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/large_oltp_benchmark.yml10 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/large_oltp_benchmark.yml11 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/large_oltp_benchmark.yml12 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/large_oltp_benchmark.yml13 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/large_oltp_benchmark.yml14 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/build_and_test_fully.yml6 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/build_and_test_fully.yml7 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/build_and_test_fully.yml8 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/build_and_test_fully.yml9 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/build_and_test_fully.yml10 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/cloud-extensions.yml5 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/cloud-extensions.yml6 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/cloud-extensions.yml7 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/cloud-extensions.yml8 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/cloud-extensions.yml9 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/benchbase_tpcc.yml6 # ┌───────────── minute (0 - 59)COMMENT
MEDIUM⚡.github/workflows/benchbase_tpcc.yml7 # │ ┌───────────── hour (0 - 23)COMMENT
MEDIUM⚡.github/workflows/benchbase_tpcc.yml8 # │ │ ┌───────────── day of the month (1 - 31)COMMENT
MEDIUM⚡.github/workflows/benchbase_tpcc.yml9 # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)COMMENT
MEDIUM⚡.github/workflows/benchbase_tpcc.yml10 # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)COMMENT
MEDIUM⚡.github/workflows/pg-clients.yml6 # ┌───────────── minute (0 - 59)COMMENT
19 more matches not shown…
Unused Imports196 hits · 194 pts
SeverityFileLineSnippetContext
LOWpre-commit.py3CODE
LOWtest_runner/conftest.py1CODE
LOWtest_runner/test_broken.py1CODE
LOWtest_runner/regress/test_read_validation.py1CODE
LOWtest_runner/regress/test_compute_http.py1CODE
LOWtest_runner/regress/test_lfc_prefetch.py1CODE
LOWtest_runner/regress/test_sni_router.py1CODE
LOW…st_runner/regress/test_pageserver_metric_collection.py1CODE
LOWtest_runner/regress/test_pg_regress.py4CODE
LOWtest_runner/regress/test_close_fds.py1CODE
LOWtest_runner/regress/test_tenants_with_remote_storage.py9CODE
LOWtest_runner/regress/test_ancestor_branch.py1CODE
LOWtest_runner/regress/test_lfc_resize.py1CODE
LOWtest_runner/regress/test_old_request_lsn.py1CODE
LOWtest_runner/regress/test_prefetch_buffer_resize.py1CODE
LOWtest_runner/regress/test_tenant_relocation.py1CODE
LOWtest_runner/regress/test_setup.py3CODE
LOWtest_runner/regress/test_disk_usage_eviction.py1CODE
LOWtest_runner/regress/test_s3_restore.py1CODE
LOWtest_runner/regress/test_pageserver_catchup.py1CODE
LOWtest_runner/regress/test_next_xid.py1CODE
LOWtest_runner/regress/test_compatibility.py1CODE
LOWtest_runner/regress/test_pageserver_api.py1CODE
LOWtest_runner/regress/test_logging.py1CODE
LOWtest_runner/regress/test_unstable_extensions.py1CODE
LOWtest_runner/regress/test_neon_cli.py1CODE
LOWtest_runner/regress/test_layer_eviction.py1CODE
LOWtest_runner/regress/test_ddl_forwarding.py1CODE
LOWtest_runner/regress/test_event_trigger_extension.py1CODE
LOWtest_runner/regress/test_attach_tenant_config.py1CODE
LOWtest_runner/regress/test_build_info_metric.py1CODE
LOWtest_runner/regress/test_safekeeper_migration.py1CODE
LOWtest_runner/regress/test_auth.py1CODE
LOWtest_runner/regress/test_proxy_metric_collection.py1CODE
LOWtest_runner/regress/test_basebackup_error.py1CODE
LOWtest_runner/regress/test_timeline_gc_blocking.py1CODE
LOWtest_runner/regress/test_readonly_node.py1CODE
LOWtest_runner/regress/test_neon_local_cli.py1CODE
LOW…unner/regress/test_physical_and_logical_replicaiton.py1CODE
LOWtest_runner/regress/test_basebackup.py1CODE
LOWtest_runner/regress/test_combocid.py1CODE
LOWtest_runner/regress/test_fsm_truncate.py1CODE
LOW…t_runner/regress/test_communicator_metrics_exporter.py1CODE
LOWtest_runner/regress/test_layers_from_future.py1CODE
LOWtest_runner/regress/test_truncate.py1CODE
LOWtest_runner/regress/test_sharding.py1CODE
LOWtest_runner/regress/test_multixact.py1CODE
LOWtest_runner/regress/test_remote_storage.py1CODE
LOWtest_runner/regress/test_recovery.py1CODE
LOWtest_runner/regress/test_subscriber_restart.py1CODE
LOWtest_runner/regress/test_compute_locales.py1CODE
LOWtest_runner/regress/test_compute_locales.py8CODE
LOWtest_runner/regress/test_compaction.py1CODE
LOWtest_runner/regress/test_compute_reconfigure.py1CODE
LOWtest_runner/regress/test_proxy_websockets.py1CODE
LOWtest_runner/regress/test_timeline_detach_ancestor.py1CODE
LOWtest_runner/regress/test_compute_termination.py1CODE
LOWtest_runner/regress/test_clog_truncate.py1CODE
LOWtest_runner/regress/test_tenant_tasks.py1CODE
LOWtest_runner/regress/test_fullbackup.py1CODE
136 more matches not shown…
Self-Referential Comments68 hits · 188 pts
SeverityFileLineSnippetContext
MEDIUM.config/hakari.toml1# This file contains settings for `cargo hakari`.COMMENT
MEDIUMtest_runner/regress/test_compute_http.py29 # Create an admin-scoped HTTP clientCOMMENT
MEDIUMtest_runner/regress/test_compute_http.py65 # Create an admin-scoped HTTP clientCOMMENT
MEDIUMtest_runner/regress/test_signed_char.py43 # Create a test tableSTRING
MEDIUMtest_runner/regress/test_signed_char.py45 # Create a GIN based indexSTRING
MEDIUMtest_runner/regress/test_disk_usage_eviction.py869 # Create a secondary mode location for the tenant, all tenants on one pageserver that will onlyCOMMENT
MEDIUMtest_runner/regress/test_compatibility.py594 # Create the timeline on safekeepers manually.COMMENT
MEDIUMtest_runner/regress/test_neon_cli.py50 # Create a branch for usCOMMENT
MEDIUMtest_runner/regress/test_neon_cli.py54 # Create a nested branchCOMMENT
MEDIUMtest_runner/regress/test_layer_eviction.py36 # Create a number of layers in the tenantCOMMENT
MEDIUMtest_runner/regress/test_rest_broker.py19 # Create the required roles for PostgREST authenticationCOMMENT
MEDIUMtest_runner/regress/test_rest_broker.py26 # Create the pgrst schema and configuration function required by the rest brokerCOMMENT
MEDIUMtest_runner/regress/test_layers_from_future.py97 # Create a number of layers in the tenantCOMMENT
MEDIUMtest_runner/regress/test_sharding.py1335 # Create a tenant with secondary locations enabledCOMMENT
MEDIUMtest_runner/regress/test_sharding.py2060 # Create a branch and write some dataCOMMENT
MEDIUMtest_runner/regress/test_recovery.py35 # Create a branch for usCOMMENT
MEDIUMtest_runner/regress/test_timeline_archive.py312 # Create a branch and archive itCOMMENT
MEDIUMtest_runner/regress/test_timeline_archive.py772 # Create a branch and write some additional data to the parentCOMMENT
MEDIUMtest_runner/regress/test_timeline_archive.py931 # Create a branch and archive itCOMMENT
MEDIUMtest_runner/regress/test_timeline_archive.py1046 # Create a branch and archive itCOMMENT
MEDIUMtest_runner/regress/test_timeline_archive.py1163 # Create a branchCOMMENT
MEDIUMtest_runner/regress/test_branching.py284 # Create a timeline whose creation will succeed. The tenant will need at least oneCOMMENT
MEDIUMtest_runner/regress/test_branching.py290 # Create a timeline whose upload to remote storage will be blockedCOMMENT
MEDIUMtest_runner/regress/test_gc_aggressive.py22# Create a table with {NUM_ROWS} rows, and perform {UPDATES_TO_PERFORM} randomCOMMENT
MEDIUMtest_runner/regress/test_branch_behind.py16# Create a couple of branches off the main branch, at a historical point in time.COMMENT
MEDIUMtest_runner/regress/test_subscriber_branching.py58 # Create a test user to avoid using superuserCOMMENT
MEDIUMtest_runner/regress/test_createuser.py26 # Create a branchCOMMENT
MEDIUMtest_runner/regress/test_wal_acceptor.py1520 # Create the environment in the test-specific output dirCOMMENT
MEDIUMtest_runner/regress/test_wal_acceptor.py2762 # Create a timeline and endpointCOMMENT
MEDIUM…_runner/regress/test_hadron_ps_connectivity_metrics.py55 # Create a tenant that has one primary and one secondary. Due to primary/secondary placement constraints,COMMENT
MEDIUMtest_runner/regress/test_twophase.py69 # Create a branch with the transaction in prepared stateCOMMENT
MEDIUMtest_runner/regress/test_storage_scrubber.py237 # Create an extra timeline, to ensure the scrubber isn't confused by multiple timelinesCOMMENT
MEDIUMtest_runner/regress/test_storage_scrubber.py261 # Create a timeline after split, to ensure scrubber can handle timelines that exist in child shards but not ancestorCOMMENT
MEDIUMtest_runner/regress/test_storage_scrubber.py395 # Create a second timeline so that when we delete the first one, child shards still have some content in S3.COMMENT
MEDIUMtest_runner/regress/test_vm_bits.py27 # Create a test table for a few different scenarios and freeze it to set the VM bits.COMMENT
MEDIUMtest_runner/regress/test_vm_bits.py150 # Create a test table and freeze it to set the all-frozen VM bit on all pages.COMMENT
MEDIUMtest_runner/regress/test_vm_bits.py234 # Create a test table and freeze it to set the all-frozen VM bit on all pages.COMMENT
MEDIUMtest_runner/regress/test_backpressure.py105 # Create a branch for usCOMMENT
MEDIUMtest_runner/regress/test_storage_controller.py384 # Create a tenant directly via pageserver HTTP API, skipping the storage controllerCOMMENT
MEDIUMtest_runner/regress/test_storage_controller.py2243 # Create a second timeline to ensure that import finds bothCOMMENT
MEDIUMtest_runner/regress/test_broken_timeline.py122 # Creating the timeline didn't finish. The other timelines on tenant should still be present and work normally.COMMENT
MEDIUMtest_runner/regress/test_broken_timeline.py174 # Creating the timeline didn't finish. The other timelines on tenant should still be present and work normally.COMMENT
MEDIUMtest_runner/regress/test_broken_timeline.py208 # Creating the timeline didn't finish. The other timelines on tenant should still be present and work normally.COMMENT
MEDIUMtest_runner/regress/test_tenant_delete.py425 # Create an unsharded tenant.COMMENT
MEDIUMtest_runner/regress/test_lsn_mapping.py292 # Create a new branchCOMMENT
MEDIUMtest_runner/regress/test_createdropdb.py35 # Create a branchCOMMENT
MEDIUMtest_runner/regress/test_relations.py23 # Create a relation in v1COMMENT
MEDIUM⚡test_runner/regress/test_relations.py65 # Create a relation in v2COMMENT
MEDIUMtest_runner/regress/test_ondemand_slru_download.py36 # Create a test tableCOMMENT
MEDIUMtest_runner/regress/test_ondemand_slru_download.py98 # Create a test tableCOMMENT
MEDIUMtest_runner/regress/test_ondemand_slru_download.py152 # Create a test tableCOMMENT
MEDIUMtest_runner/regress/test_replica_start.py87 # Create a replica. It should start up normally, thanks to the CLOG-scanningSTRING
MEDIUMtest_runner/regress/test_replica_start.py130 # Create a replica. It should start up normally, thanks to the CLOG-scanningSTRING
MEDIUMtest_runner/regress/test_replica_start.py212 # Create a replica. but before that, wait for the wal to be flushed toSTRING
MEDIUMtest_runner/regress/test_replica_start.py334 # Create a replica at this LSNSTRING
MEDIUMtest_runner/regress/test_replica_start.py472 # Create a replica. It should start up normally, thanks to the CLOG-scanningSTRING
MEDIUMtest_runner/regress/test_replica_start.py554 # Create a replica. It should start up normally, thanks to the CLOG-scanningSTRING
MEDIUMtest_runner/regress/test_replica_start.py629 # Create a replica. It should start up normally, thanks to the CLOG-scanningSTRING
MEDIUMtest_runner/regress/test_replica_start.py687 # Create a replica. It should start up normally, because of ignore policySTRING
MEDIUMtest_runner/regress/test_compute_monitor.py30 # Create a new databaseCOMMENT
8 more matches not shown…
Cross-File Repetition23 hits · 115 pts
SeverityFileLineSnippetContext
HIGH…st_runner/regress/test_pageserver_metric_collection.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_gc_aggressive.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_old_request_lsn.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_pageserver_catchup.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_timeline_size.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_layer_eviction.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_readonly_node.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_branch_behind.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_bad_connection.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_change_pageserver.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_tenant_detach.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_pageserver_restart.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGH…nner/regress/test_walredo_not_left_behind_on_detach.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_layer_writers_fail.py0insert into foo select 'long string to consume some space' || g from generate_series(1, 1000) gSTRING
HIGHtest_runner/regress/test_old_request_lsn.py0select setting::int * pg_size_bytes(unit) as shared_buffers, pg_relation_size('t') as tbl_size from pg_settings where naSTRING
HIGHtest_runner/regress/test_bad_connection.py0select setting::int * pg_size_bytes(unit) as shared_buffers, pg_relation_size('t') as tbl_size from pg_settings where naSTRING
HIGHtest_runner/regress/test_change_pageserver.py0select setting::int * pg_size_bytes(unit) as shared_buffers, pg_relation_size('t') as tbl_size from pg_settings where naSTRING
HIGHtest_runner/regress/test_pageserver_restart.py0select setting::int * pg_size_bytes(unit) as shared_buffers, pg_relation_size('t') as tbl_size from pg_settings where naSTRING
HIGH…nner/regress/test_walredo_not_left_behind_on_detach.py0select setting::int * pg_size_bytes(unit) as shared_buffers, pg_relation_size('t') as tbl_size from pg_settings where naSTRING
HIGHtest_runner/performance/test_seqscans.py0select setting::int * pg_size_bytes(unit) as shared_buffers, pg_relation_size('t') as tbl_size from pg_settings where naSTRING
HIGHtest_runner/regress/test_fullbackup.py0create table tbl as select g as id, 'long string to consume some space' || g from generate_series(1,{num_rows}) gSTRING
HIGHtest_runner/regress/test_import.py0create table tbl as select g as id, 'long string to consume some space' || g from generate_series(1,{num_rows}) gSTRING
HIGHtest_runner/regress/test_ondemand_download.py0create table tbl as select g as id, 'long string to consume some space' || g from generate_series(1,{num_rows}) gSTRING
Excessive Try-Catch Wrapping80 hits · 114 pts
SeverityFileLineSnippetContext
LOWtest_runner/websocket_tunnel.py61 except Exception as e:CODE
LOWtest_runner/websocket_tunnel.py74 except Exception as e:CODE
LOWtest_runner/websocket_tunnel.py98 except Exception as e:CODE
MEDIUMtest_runner/websocket_tunnel.py51def handle_tcp_to_websocket(tcp_reader, ws):CODE
MEDIUMtest_runner/websocket_tunnel.py65def handle_websocket_to_tcp(ws, tcp_writer):CODE
LOWtest_runner/regress/test_disk_usage_eviction.py975 except Exception:CODE
LOWtest_runner/regress/test_next_xid.py52 except Exception as error:CODE
LOWtest_runner/regress/test_import_pgdata.py364 except Exception:CODE
LOWtest_runner/regress/test_import_pgdata.py450 except Exception:CODE
LOWtest_runner/regress/test_import_pgdata.py678 except Exception as e:CODE
LOWtest_runner/regress/test_import_pgdata.py707 except Exception as e:CODE
LOWtest_runner/regress/test_recovery.py62 except Exception as err:CODE
LOWtest_runner/regress/test_compute_reconfigure.py141 except Exception as e:CODE
LOWtest_runner/regress/test_proxy_websockets.py236 except Exception as e:CODE
MEDIUMtest_runner/regress/test_proxy_websockets.py232def run_tunnel():CODE
LOWtest_runner/regress/test_timeline_archive.py638 except Exception as e:CODE
LOWtest_runner/regress/test_large_schema.py57 except Exception as error:CODE
LOWtest_runner/regress/test_tenant_detach.py52 except Exception as e:CODE
LOWtest_runner/regress/test_physical_replication.py167 except Exception as e:CODE
MEDIUMtest_runner/regress/test_wal_acceptor.py181def run(self) -> None:CODE
LOWtest_runner/regress/test_wal_acceptor.py414 except Exception as e:CODE
LOWtest_runner/regress/test_wal_acceptor.py1565 except Exception as e:CODE
LOWtest_runner/regress/test_wal_acceptor.py1649 except Exception as e:CODE
LOWtest_runner/regress/test_wal_acceptor_async.py381 except Exception as e:CODE
LOW…nner/regress/test_walredo_not_left_behind_on_detach.py98 except Exception as e:CODE
LOW⚡…_runner/regress/test_hadron_ps_connectivity_metrics.py16 except Exception as e:CODE
LOWtest_runner/regress/test_compute_metrics.py287 except Exception:CODE
MEDIUMtest_runner/regress/test_compute_metrics.py282def stop(self) -> None:CODE
LOWtest_runner/regress/test_storage_scrubber.py466 except Exception as e:CODE
LOWtest_runner/regress/test_timeline_delete.py513 except Exception:CODE
MEDIUMtest_runner/regress/test_timeline_delete.py505def first_call(result_queue):CODE
LOWtest_runner/regress/test_tenant_conf.py53 except Exception as e:CODE
LOW⚡test_runner/regress/test_pageserver_layer_rolling.py102 except Exception:CODE
LOWtest_runner/regress/test_backpressure.py87 except Exception as e:CODE
LOWtest_runner/regress/test_backpressure.py145 except Exception as e:CODE
MEDIUMtest_runner/regress/test_storage_controller.py3179def passed_split_abort():CODE
LOWtest_runner/regress/test_storage_controller.py3165 except Exception:CODE
LOWtest_runner/regress/test_storage_controller.py3185 except Exception:CODE
LOWtest_runner/regress/test_storage_controller.py3345 except Exception:CODE
LOWtest_runner/regress/test_wal_receiver.py53 except Exception as e:CODE
LOWtest_runner/regress/test_wal_receiver.py74 except Exception as e:CODE
MEDIUMtest_runner/regress/test_wal_receiver.py50def all_sks_in_wareceiver_state():CODE
MEDIUMtest_runner/regress/test_wal_receiver.py71def all_but_stopped_sks_in_wareceiver_state():CODE
LOWtest_runner/performance/test_ingest_insert_bulk.py101 except Exception as e:CODE
LOWtest_runner/performance/test_wal_backpressure.py283 except Exception as err:CODE
LOW…/performance/test_cumulative_statistics_persistence.py219 except Exception as e:STRING
LOWtest_runner/performance/test_physical_replication.py134 except Exception as e:CODE
LOWtest_runner/performance/test_physical_replication.py319 except Exception as e:CODE
MEDIUM⚡…e_tpc_c_helpers/upload_results_to_perf_test_results.py29 print(f"Error: Summary JSON file not found: {json_file_path}")CODE
MEDIUM⚡…e_tpc_c_helpers/upload_results_to_perf_test_results.py32 print(f"Error: Invalid JSON in file {json_file_path}: {e}")CODE
MEDIUM⚡…e_tpc_c_helpers/upload_results_to_perf_test_results.py35 print(f"Error loading JSON file {json_file_path}: {e}")CODE
MEDIUM⚡…e_tpc_c_helpers/upload_results_to_perf_test_results.py260 print(f"Error: CSV file not found: {csv_file_path}")CODE
MEDIUM⚡…e_tpc_c_helpers/upload_results_to_perf_test_results.py263 print(f"Error processing CSV file {csv_file_path}: {e}")CODE
MEDIUM…e_tpc_c_helpers/upload_results_to_perf_test_results.py223 print(f"Error: Missing required columns in CSV: {missing_columns}")CODE
MEDIUM…e_tpc_c_helpers/upload_results_to_perf_test_results.py344 print(f"Error parsing load log file {log_file_path}: {e}")CODE
MEDIUM…e_tpc_c_helpers/upload_results_to_perf_test_results.py445 print(f"Error: Summary JSON file does not exist: {args.summary_json}")CODE
MEDIUM…e_tpc_c_helpers/upload_results_to_perf_test_results.py449 print("Error: Either summary JSON or load log file must be provided")CODE
LOW⚡…e_tpc_c_helpers/upload_results_to_perf_test_results.py34 except Exception as e:CODE
MEDIUM⚡…e_tpc_c_helpers/upload_results_to_perf_test_results.py159 print(f"Error inserting metrics into database: {e}")STRING
LOW⚡…e_tpc_c_helpers/upload_results_to_perf_test_results.py262 except Exception as e:CODE
20 more matches not shown…
Deep Nesting63 hits · 60 pts
SeverityFileLineSnippetContext
LOW…st_runner/regress/test_pageserver_metric_collection.py36CODE
LOWtest_runner/regress/test_tenant_relocation.py46CODE
LOWtest_runner/regress/test_next_xid.py23CODE
LOWtest_runner/regress/test_compatibility.py405CODE
LOWtest_runner/regress/test_layer_eviction.py158CODE
LOWtest_runner/regress/test_ddl_forwarding.py34CODE
LOWtest_runner/regress/test_import_pgdata.py498CODE
LOWtest_runner/regress/test_import_pgdata.py619CODE
LOWtest_runner/regress/test_sharding.py887CODE
LOWtest_runner/regress/test_recovery.py16CODE
LOWtest_runner/regress/test_timeline_detach_ancestor.py79CODE
LOWtest_runner/regress/test_timeline_detach_ancestor.py1214CODE
LOWtest_runner/regress/test_compute_termination.py100CODE
LOWtest_runner/regress/test_timeline_archive.py417CODE
LOWtest_runner/regress/test_timeline_archive.py510CODE
LOWtest_runner/regress/test_hot_standby.py22CODE
LOWtest_runner/regress/test_hot_standby.py132CODE
LOWtest_runner/regress/test_neon_extension.py41CODE
LOWtest_runner/regress/test_large_schema.py20CODE
LOWtest_runner/regress/test_tenant_detach.py184CODE
LOWtest_runner/regress/test_tenant_detach.py194CODE
LOWtest_runner/regress/test_physical_replication.py16CODE
LOWtest_runner/regress/test_physical_replication.py52CODE
LOWtest_runner/regress/test_safekeeper_deletion.py150CODE
LOWtest_runner/regress/test_safekeeper_deletion.py175CODE
LOWtest_runner/regress/test_pageserver_secondary.py78CODE
LOWtest_runner/regress/test_pageserver_secondary.py165CODE
LOWtest_runner/regress/test_wal_acceptor.py496CODE
LOWtest_runner/regress/test_timeline_size.py74CODE
LOWtest_runner/regress/test_timeline_size.py155CODE
LOWtest_runner/regress/test_wal_acceptor_async.py311CODE
LOWtest_runner/regress/test_backpressure.py28CODE
LOWtest_runner/regress/test_backpressure.py103CODE
LOWtest_runner/regress/test_tenant_size.py685CODE
LOWtest_runner/regress/test_storage_controller.py3553CODE
LOWtest_runner/regress/test_storage_controller.py3970CODE
LOWtest_runner/regress/test_tenants.py454CODE
LOWtest_runner/regress/test_tenants.py486CODE
LOWtest_runner/logical_repl/test_debezium.py120CODE
LOWtest_runner/random_ops/test_random_ops.py433CODE
LOWtest_runner/performance/test_ingest_logical_message.py18CODE
LOWtest_runner/performance/test_sharded_ingest.py18CODE
LOWtest_runner/performance/test_ingest_insert_bulk.py28CODE
LOWtest_runner/performance/test_seqscans.py43CODE
LOWtest_runner/performance/test_bulk_insert.py22CODE
LOWtest_runner/performance/test_copy.py49CODE
LOWtest_runner/performance/test_compaction.py21CODE
LOWtest_runner/performance/test_compaction.py67CODE
LOWtest_runner/performance/test_hot_table.py22CODE
LOW…st_runner/performance/test_storage_controller_scale.py65CODE
LOW…_runner/performance/test_perf_ingest_using_pgcopydb.py163CODE
LOWtest_runner/performance/test_physical_replication.py54CODE
LOWtest_runner/performance/test_physical_replication.py143CODE
LOWtest_runner/performance/test_physical_replication.py180CODE
LOWtest_runner/performance/test_random_writes.py20CODE
LOWtest_runner/performance/test_gist_build.py15CODE
LOWtest_runner/performance/test_write_amplification.py23CODE
LOWtest_runner/performance/test_logical_replication.py107CODE
LOWtest_runner/performance/test_logical_replication.py207CODE
LOWtest_runner/performance/test_logical_replication.py306CODE
3 more matches not shown…
AI Slop Vocabulary18 hits · 40 pts
SeverityFileLineSnippetContext
LOWtest_runner/regress/test_bad_connection.py46 # shared_buffers, otherwise the SELECT after restart will just return answerCOMMENT
LOWtest_runner/regress/test_bad_connection.py105 # shared_buffers, otherwise the SELECT after restart will just return answerCOMMENT
LOWtest_runner/regress/test_bad_connection.py207 # shared_buffers, otherwise the SELECT after restart will just return answerCOMMENT
LOWtest_runner/regress/test_change_pageserver.py69 # shared_buffers, otherwise the SELECT after restart will just return answerCOMMENT
LOWtest_runner/regress/test_tenant_detach.py353 # shared_buffers, otherwise the SELECT after restart will just return answerCOMMENT
LOWtest_runner/regress/test_pageserver_restart.py40 # shared_buffers, otherwise the SELECT after restart will just return answerCOMMENT
LOWtest_runner/regress/test_pageserver_restart.py181 # shared_buffers, otherwise the SELECT after restart will just return answerCOMMENT
MEDIUMtest_runner/regress/test_pageserver_generations.py461 # Initially, the tenant will be attached to the first pageserver (first is default in our test harness)COMMENT
LOW…nner/regress/test_walredo_not_left_behind_on_detach.py59 # shared_buffers, otherwise the SELECT after restart will just return answerCOMMENT
MEDIUMtest_runner/regress/test_tenant_delete.py85 # may need to retry on some remote storage errors injected by the test harnessCOMMENT
MEDIUMtest_runner/regress/test_tenant_delete.py459 # The initial tenant created by the test harness should still be there.COMMENT
MEDIUMtest_runner/regress/test_replica_start.py357 # robust even if PGPROC_MAX_CACHED_SUBXIDS changes.STRING
LOW…r/performance/pageserver/test_page_service_batching.py111 # name is not a metric, we just use it to identify the test easily in the `test_...[...]`` notationCOMMENT
MEDIUMcompute_tools/src/communicator_socket_client.rs40 // it would be more robust if the data directory is moved around or unlinked forCOMMENT
MEDIUM⚡docker-compose/docker_compose_test.sh106 # We want to run the longest tests first to better utilize parallelization and reduce overall test time.COMMENT
MEDIUMpageserver/src/tenant/mgr.rs1629 // split operation less seamless for clients, as we will may detach the parentCOMMENT
MEDIUMpageserver/src/tenant/storage_layer.rs685 /// Absolutely read [`IoConcurrency::spawn_io`] to learn about assumptions & pitfalls.COMMENT
MEDIUMpageserver/src/tenant/remote_timeline_client.rs299/// Behavioral modes that enable seamless live migration.COMMENT
Empty Error Handlers6 hits · 30 pts
SeverityFileLineSnippetContext
HIGHtest_runner/regress/test_proxy_websockets.py255except asyncio.CancelledError:CODE
HIGHtest_runner/regress/test_timeline_detach_ancestor.py578except Empty:CODE
HIGHtest_runner/regress/test_compute_termination.py120except (requests.ConnectionError, requests.Timeout):CODE
HIGHtest_runner/regress/test_proxy.py680except requests.exceptions.ReadTimeout:CODE
HIGHtest_runner/regress/test_tenants.py510except requests.exceptions.ConnectionError:CODE
HIGHtest_runner/regress/test_role_grants.py24except psycopg2.errors.InsufficientPrivilege:CODE
Structural Annotation Overuse15 hits · 24 pts
SeverityFileLineSnippetContext
LOWdocs/rfcs/032-shard-splitting.md125#### Step 1: write new remote indicesCOMMENT
LOWdocs/rfcs/032-shard-splitting.md139#### Step 2: start new `Tenant` objectsCOMMENT
LOWdocs/rfcs/032-shard-splitting.md150#### Step 3: tear down parent `Tenant` objectCOMMENT
LOWstorage_controller/src/service.rs9799 // Step 1: collect all shards that we are required to migrate back to this node because their AZ preferenceCOMMENT
LOWstorage_controller/src/service.rs9850 // Step 2: also promote any AZ-agnostic shards as required to achieve the target number of attachmentsCOMMENT
LOWpageserver/src/tenant/timeline/compaction.rs2679 // Step 1: split history into len(retain_lsn_below_horizon) + 2 buckets, where the last bucket is for all deltasCOMMENT
LOWpageserver/src/tenant/timeline/compaction.rs2698 // Step 2: filter out duplicated records due to the k-merge of image/delta layersCOMMENT
LOWpageserver/src/tenant/timeline/compaction.rs2723 // Step 3: generate images when necessaryCOMMENT
LOWpageserver/src/tenant/timeline/compaction.rs3309 // Step 0: pick all delta layers + image layers below/intersect with the GC horizon.COMMENT
LOWpageserver/src/tenant/timeline/compaction.rs3511 // Step 1: construct a k-merge iterator over all layers.COMMENT
LOWpageserver/src/tenant/timeline/compaction.rs3612 // Step 2: Produce images+deltas.COMMENT
LOWpageserver/src/tenant/timeline/compaction.rs4075 // Step 3: Place back to the layer map.COMMENT
LOW⚡pageserver/src/tenant/secondary/downloader.rs481 // Step 1: identify some tenants that we may work onCOMMENT
LOW⚡pageserver/src/tenant/secondary/downloader.rs488 // Step 2: filter out tenants which are not yet elegible to runCOMMENT
LOWpageserver/src/tenant/secondary/downloader.rs524 // Step 3: sort by target execution time to run most urgent first.COMMENT
Magic Placeholder Names3 hits · 22 pts
SeverityFileLineSnippetContext
HIGH⚡test_runner/random_ops/README.md64NEON_API_KEY=your_api_key ./scripts/pytest test_runner/random_ops/test_random_ops.py -m remote_clusterCODE
HIGH⚡test_runner/random_ops/README.md70RANDOM_SEED=12345 NEON_API_KEY=your_api_key ./scripts/pytest test_runner/random_ops/test_random_ops.py -m remote_clusterCODE
HIGH⚡test_runner/random_ops/README.md76NUM_OPERATIONS=500 NEON_API_KEY=your_api_key ./scripts/pytest test_runner/random_ops/test_random_ops.py -m remote_clusteCODE
Verbosity Indicators13 hits · 21 pts
SeverityFileLineSnippetContext
LOWstorage_controller/src/persistence.rs506 // So we need to check if the node has lifecycle set to deleted.COMMENT
LOWstorage_controller/src/service.rs9799 // Step 1: collect all shards that we are required to migrate back to this node because their AZ preferenceCOMMENT
LOWstorage_controller/src/service.rs9850 // Step 2: also promote any AZ-agnostic shards as required to achieve the target number of attachmentsCOMMENT
LOWpageserver/src/tenant/timeline/compaction.rs2679 // Step 1: split history into len(retain_lsn_below_horizon) + 2 buckets, where the last bucket is for all deltasCOMMENT
LOWpageserver/src/tenant/timeline/compaction.rs2698 // Step 2: filter out duplicated records due to the k-merge of image/delta layersCOMMENT
LOWpageserver/src/tenant/timeline/compaction.rs2723 // Step 3: generate images when necessaryCOMMENT
LOWpageserver/src/tenant/timeline/compaction.rs3309 // Step 0: pick all delta layers + image layers below/intersect with the GC horizon.COMMENT
LOWpageserver/src/tenant/timeline/compaction.rs3511 // Step 1: construct a k-merge iterator over all layers.COMMENT
LOWpageserver/src/tenant/timeline/compaction.rs3612 // Step 2: Produce images+deltas.COMMENT
LOWpageserver/src/tenant/timeline/compaction.rs4075 // Step 3: Place back to the layer map.COMMENT
LOW⚡pageserver/src/tenant/secondary/downloader.rs481 // Step 1: identify some tenants that we may work onCOMMENT
LOW⚡pageserver/src/tenant/secondary/downloader.rs488 // Step 2: filter out tenants which are not yet elegible to runCOMMENT
LOWpageserver/src/tenant/secondary/downloader.rs524 // Step 3: sort by target execution time to run most urgent first.COMMENT
Cross-Language Confusion4 hits · 20 pts
SeverityFileLineSnippetContext
HIGHtest_runner/regress/test_layer_eviction.py193 cur.execute("create table a (id bigserial primary key, some_value bigint not null)")CODE
HIGHtest_runner/regress/test_sharding.py1872 # on 2024-03-05, the default config on prod was [15MB, 10GB, null]COMMENT
HIGHtest_runner/regress/test_timeline_detach_ancestor.py662 ep.safe_psql("create table integers (i bigint not null);")CODE
HIGHtest_runner/regress/test_ondemand_download.py606 cur.execute("create table a (id bigserial primary key, some_value bigint not null)")STRING
Redundant / Tautological Comments11 hits · 18 pts
SeverityFileLineSnippetContext
LOWtest_runner/regress/test_compaction.py916 # Check if there's a metric for our tenant and timeline that has value 1STRING
LOWtest_runner/regress/test_compute_termination.py117 # Check if it's in expected statusCOMMENT
LOWtest_runner/regress/test_compute_termination.py123 # Check if process has exitedCOMMENT
LOWtest_runner/regress/test_import.py194 # Check if the backup data contains multiple segment filesCOMMENT
LOW⚡test_runner/regress/test_relations.py53 # Check if both relations are still accessibleCOMMENT
LOW⚡test_runner/regress/test_relations.py61 # Check if both relations are still accessible again after restartCOMMENT
LOW⚡test_runner/regress/test_relations.py73 # Check if both relations are still accessibleCOMMENT
LOW⚡test_runner/regress/test_relations.py83 # Check if both relations are still accessible after restartCOMMENT
LOWtest_runner/regress/test_relations.py96 # Check if relations are still accessibleCOMMENT
LOWtest_runner/regress/test_relations.py113 # Check if the relation is still accessibleCOMMENT
LOWtest_runner/regress/test_feature_flag.py56 # Check if the properties existCOMMENT
Synthetic Comment Markers2 hits · 15 pts
SeverityFileLineSnippetContext
HIGHstorage_controller/src/service.rs7897 /// Configure in-memory and persistent state of a node as requestedCOMMENT
HIGHpageserver/src/tenant/upload_queue.rs1350 // For other operations, assert as requested.COMMENT
Fake / Example Data12 hits · 14 pts
SeverityFileLineSnippetContext
LOWtest_runner/regress/test_tenant_delete.py373 dummy_data = {CODE
LOWtest_runner/regress/test_tenant_delete.py389 return Response(json.dumps(dummy_data), content_type="application/json", status=200)CODE
LOW…r/performance/large_synthetic_oltp/insert_webhooks.sql31 '{"order_id": 987654, "customer": {"name": "John Doe", "email": "john.doe@example.com"}, "items": [{"product_id": 12CODE
LOW…r/performance/large_synthetic_oltp/insert_webhooks.sql32 '{"order_id": 987654, "customer": {"name": "John Doe", "email": "john.doe@example.com"}, "items": [{"product_id": 12CODE
LOW…_bge_small_en_v15-src/sql/basic_functions_enhanced.sql4SELECT rag_bge_small_en_v15.chunks_by_token_count('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmCODE
LOW…_bge_small_en_v15-src/sql/basic_functions_enhanced.sql4SELECT rag_bge_small_en_v15.chunks_by_token_count('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmCODE
LOW⚡…_small_en_v15-src/sql/embedding_functions_enhanced.sql6 vector_dims(rag_bge_small_en_v15.embedding_for_passage('Lorem ipsum dolor sit amet')) > 0 AS result;CODE
LOW⚡…_small_en_v15-src/sql/embedding_functions_enhanced.sql6 vector_dims(rag_bge_small_en_v15.embedding_for_passage('Lorem ipsum dolor sit amet')) > 0 AS result;CODE
LOW⚡…_small_en_v15-src/sql/embedding_functions_enhanced.sql15 vector_dims(rag_bge_small_en_v15.embedding_for_query('Lorem ipsum dolor sit amet')) > 0 AS result;CODE
LOW⚡…_small_en_v15-src/sql/embedding_functions_enhanced.sql15 vector_dims(rag_bge_small_en_v15.embedding_for_query('Lorem ipsum dolor sit amet')) > 0 AS result;CODE
LOW…r-compose/ext-src/pgrag-src/sql/chunking_functions.sql4SELECT rag.chunks_by_character_count('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incCODE
LOW…r-compose/ext-src/pgrag-src/sql/chunking_functions.sql4SELECT rag.chunks_by_character_count('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incCODE
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICALscripts/comment-test-report.js233 const branchName = context.payload.pull_request.head.ref.replace(/^refs\/heads\//, "")CODE
Slop Phrases4 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUMrun_clippy.sh7# If your text editor has rust-analyzer integration, you can also use this newCOMMENT
LOWlibs/postgres_versioninfo/src/lib.rs15 // !!! When you add a new PgMajorVersion, don't forget to update PgMajorVersion::ALLCOMMENT
MEDIUMpageserver/src/tenant/storage_layer/layer/tests.rs225 // this just updates the remote_physical_size for demonstration purposesCOMMENT
LOWpageserver/src/virtual_file/io_engine.rs242 // Don't forget to use retry_ecanceled_onceCOMMENT
TODO Padding3 hits · 4 pts
SeverityFileLineSnippetContext
LOWtest_runner/regress/test_compaction.py671 # TODO: implement eager layer cutting during compactionSTRING
LOWstorage_controller/src/service.rs7368 // TODO: implement force flag to remove a node even if we can't rescheduleCOMMENT
LOWscripts/force_layer_download.py199 # TODO: add error handling if tlids isinstance(Exception)COMMENT
Modern AI Meta-Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMdocs/rfcs/020-pageserver-s3-coordination.md71### Manual orchestrationCOMMENT
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWpageserver/src/page_cache.rs394 /// Example usage:COMMENT
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOWtest_runner/regress/test_wal_acceptor.py2350 def do_something():CODE