(t *testing.T, name string)
| 441 | } |
| 442 | |
| 443 | func estimateRowSize(t *testing.T, name string) { |
| 444 | f, err := os.OpenFile(name, os.O_RDONLY, 0o600) |
| 445 | require.NoError(t, err) |
| 446 | |
| 447 | fi, err := f.Stat() |
| 448 | require.NoError(t, err) |
| 449 | |
| 450 | pf, err := parquet.OpenFile(f, fi.Size()) |
| 451 | require.NoError(t, err) |
| 452 | |
| 453 | r := parquet.NewGenericReader[*Trace](pf) |
| 454 | row := make([]*Trace, 1) |
| 455 | |
| 456 | totalProtoSize := int64(0) |
| 457 | totalTraceSize := int64(0) |
| 458 | for { |
| 459 | _, err := r.Read(row) |
| 460 | if err != nil { |
| 461 | if errors.Is(err, io.EOF) { |
| 462 | break |
| 463 | } |
| 464 | require.NoError(t, err) |
| 465 | } |
| 466 | |
| 467 | tr := row[0] |
| 468 | sch := parquet.SchemaOf(tr) |
| 469 | row := sch.Deconstruct(nil, tr) |
| 470 | |
| 471 | totalProtoSize += int64(estimateMarshalledSizeFromParquetRow(row)) |
| 472 | totalTraceSize += int64(estimateMarshalledSizeFromTrace(tr)) |
| 473 | } |
| 474 | |
| 475 | fmt.Println(pf.Size(), ",", len(pf.RowGroups()), ",", totalProtoSize, ",", totalTraceSize) |
| 476 | } |
| 477 | |
| 478 | func TestExtendReuseSlice(t *testing.T) { |
| 479 | tcs := []struct { |
no test coverage detected