NTSB finding section · Aircraft › Aircraft power plant

Cases
60
In the probable cause
54 (90%)
Fatal cases
7
NTSB code
010579

NTSB has coded findings and defining events since 2008. Earlier cases used its older occurrence and cause codes, so they aren’t counted here.

When and where

In green, cases where NTSB made it part of the probable cause; in gray, a factor or other finding. Findings are coded with the final report, often a year or more after the event, so the latest years are incomplete.

Cases per year

2008In the probable causeFactor only2026
Cases with Eng oil sys (airframe furnish) per year: 60 cases
20086
20096
20106
20112
20124
20133
20143
20152
20161
20175
20182
20192
20202
20212
20223
20233
20247
20251
Query with SQL
duckdb -csv -c "SELECT year(c.\"eventDate\") AS year, count(DISTINCT f.case_mkey) AS cases,
    count(DISTINCT f.case_mkey) FILTER (WHERE f.\"inProbableCause\") AS in_probable_cause
  FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' f JOIN 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c ON c.\"mKey\" = f.case_mkey
  WHERE starts_with(f.\"findingCode\", '010579') AND c.\"eventDate\" >= DATE '2000-01-01'
  GROUP BY 1
  ORDER BY 1"

Prints the counts as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

Subsections · 8

Query with SQL
duckdb -csv -c "SELECT left(f.\"findingCode\", 8) AS code, max(f.\"tier4Name\") AS name,
    count(DISTINCT f.case_mkey) AS cases,
    count(DISTINCT f.case_mkey) FILTER (WHERE f.\"inProbableCause\") AS in_probable_cause
  FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' f
  WHERE starts_with(f.\"findingCode\", '010579') AND f.\"findingCode\" GLOB '[0-9][0-9]*'
  GROUP BY 1
  ORDER BY cases DESC, code"

Prints the counts as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

In the same cases

Query with SQL
duckdb -csv -c "WITH matched AS (SELECT DISTINCT case_mkey, aircrafts_position FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' WHERE starts_with(\"findingCode\", '010579'))
  SELECT * FROM (
  SELECT 'Defining event' AS kind, e.\"tier2Number\" AS code, max(e.\"eventTier2Name\") AS name, count(DISTINCT f.case_mkey) AS cases
  FROM matched f JOIN 'https://openairdocs.org/data/latest/ntsb_events.parquet' e ON e.case_mkey = f.case_mkey AND e.aircrafts_position = f.aircrafts_position AND e.\"isDefiningEvent\"
  WHERE e.\"tier2Number\" <> ''
  GROUP BY ALL
  UNION ALL
  SELECT 'Aircraft model', a.aircraft_model_code, any_value(concat_ws(' ', m.manufacturer, m.model)), count(DISTINCT f.case_mkey)
  FROM matched f JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = f.case_mkey AND a.position = f.aircrafts_position
  LEFT JOIN 'https://openairdocs.org/data/latest/faa_aircraft_model.parquet' m ON m.code = a.aircraft_model_code
  WHERE a.aircraft_model_code IS NOT NULL
  GROUP BY ALL
  UNION ALL
  SELECT 'Other finding', left(g.\"findingCode\", 8), max(g.\"tier4Name\"), count(DISTINCT g.case_mkey)
  FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' g
  WHERE g.case_mkey IN (SELECT case_mkey FROM matched) AND NOT starts_with(g.\"findingCode\", '010579') AND g.\"findingCode\" GLOB '[0-9][0-9]*'
  GROUP BY ALL
  )
  QUALIFY row_number() OVER (PARTITION BY kind ORDER BY cases DESC) <= 10
  ORDER BY kind, cases DESC"

Prints the counts as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

Newest cases · 60

NTSB ERA25LA157Accident · No injuriesClass 3 · LimitedFinal reportBeech E33 · Lenoir, NCThe mechanic’s inadequate annual inspection of the airplane and failure to comply with an applicable airworthiness directive, which resulted in a total loss of engine power due to oil starvation.Feb 25, 2025 · N7697N · Substantial damageNTSB CEN25FA056Accident · Serious injuriesClass 3 · FieldFinal reportZenith Zodiac CH601 · Columbia, ILThe pilot’s failure to secure the engine oil filter following maintenance, which resulted in oil starvation, a total loss of engine power, and impact with terrain.Dec 8, 2024 · N9853M · DestroyedNTSB CEN25LA053Accident · No injuriesClass 3 · LimitedFinal reportPiper PA-28R-200 · Boscobel, WIThe ice obstruction of the engine oil breather tube and alternate air outlet, which resulted in a failure of the crankcase oil seal and loss of engine oil. Contributing to the accident was the incorrect engine oil breather tube installed in the airplane by…Dec 2, 2024 · N41997 · Substantial damageNTSB ERA24LA289Accident · No injuriesClass 3 · LimitedFinal reportCessna 172 · Lewiston Woodville, NCThe obstruction of the engine’s cooling system by foreign object debris (residential-type insulation), which resulted in smoke, an elevated oil temperature, and a subsequent off-airport landing on unsuitable terrain.Jun 29, 2024 · N46118 · Substantial damageNTSB CEN24FA212Accident · 1 fatalClass 3 · FieldFinal reportBeech V35A · Arvada, COA total loss of engine power due to oil starvation as a result of loose turbocharger oil line fittings.Jun 7, 2024 · N150WR · DestroyedNTSB CEN24LA211Accident · No injuriesClass 3 · LimitedFinal reportCessna 172RG · Chandeleur Island, LAA fatigue failure of the engine oil pressure line, which resulted in the loss of engine oil during the flight and subsequent damage to the nose landing gear support structure during the precautionary landing.May 22, 2024 · N751DW · Substantial damageNTSB CEN24LA152Accident · No injuriesClass 4 · LimitedFinal reportBellanca 17-30A · Galveston, TXMaintenance personnel’s failure to properly secure the oil filter adapter when replacing the oil filter adapter gasket which resulted in the filter becoming loose, resulting in the loss of engine oil, and the subsequent total loss of engine power.Apr 5, 2024 · N9996V · Substantial damageNTSB WPR24LA098Accident · No injuriesClass 4 · LimitedFinal reportCessna 182A · Weippe, IDThe pilot’s failure to secure the oil filler cap during the preflight inspection, which resulted in a precautionary landing on the soft surface and subsequent nose over.Feb 22, 2024 · N6323B · Substantial damageNTSB DCA24LA330IncidentClass 2 · LimitedFinal reportBoeing 737-8 · Kenner, LAA partial loss of engine power due to bird ingestion in the No. 1 (left) engine, which resulted in the activation of the load reduction device to prevent vibration. The load reduction device activation resulted in smoke and fumes entering the cockpit.Dec 20, 2023 · N8830Q · Minor damageNTSB ERA23FA137Accident · 1 fatalClass 3 · FieldFinal reportPiper PA-28-161 · Lindenhurst, NYAn in-flight fire due to a compromised oil pressure line fitting, which resulted in a collision with terrain during a subsequent emergency landing.Mar 5, 2023 · N8149R · Destroyed
See all 60 cases
Query with SQL
duckdb -csv -c "SELECT c.\"ntsbNumber\", c.\"eventDate\", c.\"eventType\", c.\"eventCity\", c.\"eventStateOrRegion\", a.n_number, a.\"aircraftMake\", a.\"aircraftModel\", c.\"highestInjuryLevel\", c.\"totalFatal\", c.\"completionStatus\", c.report_url
  FROM 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c LEFT JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = c.\"mKey\" AND a.position = 1
  WHERE c.\"mKey\" IN (SELECT f.case_mkey FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' f WHERE starts_with(f.\"findingCode\", '010579'))
  ORDER BY c.\"eventDate\" DESC, c.\"ntsbNumber\" DESC"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.