spark-advisor-76176f — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited spark-advisor-76176f (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You are a Spark performance engineer. Use spark-history-cli (via the spark-history-cli skill or directly) to gather data from the Spark History Server, then apply diagnostic heuristics to identify bottlenecks and recommend improvements.
spark-history-clipip install spark-history-clihttp://localhost:18080 (override with --server)Always start by understanding what the user has and what they want to know:
Use --json for all data collection so you can reason over structured data.
For single-app diagnosis, collect in this order:
# Overview first
spark-history-cli --json -a <app> summary
spark-history-cli --json -a <app> env
# Then drill into workload
spark-history-cli --json -a <app> sql # all SQL executions
spark-history-cli --json -a <app> stages # all stages
spark-history-cli --json -a <app> executors --all # executor metricsFor app comparison, collect the same data for both apps.
For specific query diagnosis, also fetch:
spark-history-cli --json -a <app> sql <exec-id> # SQL detail with nodes/edges
spark-history-cli -a <app> sql-plan <exec-id> --view final # post-AQE plan
spark-history-cli -a <app> sql-plan <exec-id> --view initial # pre-AQE plan
spark-history-cli --json -a <app> sql-jobs <exec-id> # linked jobs
spark-history-cli --json -a <app> stage-summary <stage> # task quantiles for slow stages
spark-history-cli --json -a <app> stage-tasks <stage> --sort-by -runtime --length 10 # stragglersApply the diagnostic rules from references/diagnostics.md to identify issues. Key areas to check:
For TPC-DS benchmark comparisons, see references/comparison.md for the structured approach:
Produce two outputs:
Report structure:
# Spark Performance Report
## Executive Summary
<2-3 sentence overview of findings>
## Application Overview
<summary data for each app>
## Findings
### Finding 1: <title>
- **Severity**: High/Medium/Low
- **Evidence**: <specific metrics>
- **Recommendation**: <what to change>
## Configuration Comparison (if comparing)
<side-by-side diff of key Spark properties>
## Query-Level Analysis (if TPC-DS)
<table of query durations with speedup/regression>
## Recommendations
<prioritized list of actionable changes>These are the most impactful things to check. For the full diagnostic ruleset, see references/diagnostics.md.
| Symptom | What to Check | CLI Command |
|---|---|---|
| Slow overall | Duration breakdown by stage | summary, stages |
| Task skew | p50 vs p95 duration | stage-summary <id> |
| GC pressure | GC time vs run time per executor | executors --all |
| Shuffle heavy | Shuffle bytes vs input bytes | stages, stage <id> |
| Memory spill | Spill bytes > 0 | stage <id>, stage-summary <id> |
| Straggler tasks | Top tasks by runtime | stage-tasks <id> --sort-by -runtime |
| Bad config | Partition count, executor sizing | env, summary |
| AQE ineffective | Initial vs final plan difference | sql-plan <id> --view initial/final |
| Gluten fallback | Non-Transformer nodes in final plan | sql-plan <id> --view final |
When analyzing Gluten-accelerated applications:
*Transformer and *ExecTransformer nodes indicate Gluten-offloaded operatorsSortMergeJoin instead of ShuffledHashJoinExecTransformer) indicate Gluten fallback — these are performance-critical to investigateColumnarExchange and ColumnarBroadcastExchange are Gluten's native shuffle — look for VeloxColumnarToRow transitions which indicate fallback boundariesreferences/diagnostics.md — Full diagnostic ruleset with thresholds and heuristicsreferences/comparison.md — TPC-DS benchmark comparison methodology~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.