Skip to content

V1.5.0 feat(parquet): grouped case class mapping for flat schemas#65

Merged
rchillyard merged 1 commit intomasterfrom
1_4_1
Mar 28, 2026
Merged

V1.5.0 feat(parquet): grouped case class mapping for flat schemas#65
rchillyard merged 1 commit intomasterfrom
1_4_1

Conversation

@rchillyard
Copy link
Copy Markdown
Owner

  • Add converter2-8 factory methods to ParquetCellConverter, with fields-tail threading to prevent re-reflection at each recursive level (mirrors cellParserN)
  • Add converterMap and groupedHelpers overridable vals to ParquetTableParser, threading through to StandardParquetRowParser and ParquetSchemaValidator
  • Fix getDeclaredFields → Reflection.extractFieldNames throughout to exclude Scala 2.13 synthetic productElementNames field (was causing MatchError)
  • Add YellowTaxiTripGrouped with TripIdentifiers, TripTiming, TripGeography, FareBreakdown, TripMetrics sub-case-classes as worked example
  • Add YellowTaxiTripGroupedSpec; refactor both Parquet specs to use key-based row lookup (find by puLocationId/doLocationId) to avoid ParIterable ordering non-determinism
  • Update design document to v1.5.0 with new Section 13 covering grouped mapping

- Add converter2-8 factory methods to ParquetCellConverter, with fields-tail
  threading to prevent re-reflection at each recursive level (mirrors cellParserN)
- Add converterMap and groupedHelpers overridable vals to ParquetTableParser,
  threading through to StandardParquetRowParser and ParquetSchemaValidator
- Fix getDeclaredFields → Reflection.extractFieldNames throughout to exclude
  Scala 2.13 synthetic productElementNames field (was causing MatchError)
- Add YellowTaxiTripGrouped with TripIdentifiers, TripTiming, TripGeography,
  FareBreakdown, TripMetrics sub-case-classes as worked example
- Add YellowTaxiTripGroupedSpec; refactor both Parquet specs to use key-based
  row lookup (find by puLocationId/doLocationId) to avoid ParIterable ordering
  non-determinism
- Update design document to v1.5.0 with new Section 13 covering grouped mapping
@rchillyard rchillyard merged commit ef9a959 into master Mar 28, 2026
2 checks passed
@rchillyard rchillyard deleted the 1_4_1 branch March 28, 2026 17:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant