(t *testing.T, name string)
| 851 | } |
| 852 | |
| 853 | func estimateRowSize(t *testing.T, name string) { |
| 854 | f, err := os.OpenFile(name, os.O_RDONLY, 0o600) |
| 855 | require.NoError(t, err) |
| 856 | |
| 857 | fi, err := f.Stat() |
| 858 | require.NoError(t, err) |
| 859 | |
| 860 | pf, err := parquet.OpenFile(f, fi.Size()) |
| 861 | require.NoError(t, err) |
| 862 | |
| 863 | r := parquet.NewGenericReader[*Trace](pf) |
| 864 | row := make([]*Trace, 1) |
| 865 | |
| 866 | totalProtoSize := int64(0) |
| 867 | totalTraceSize := int64(0) |
| 868 | for { |
| 869 | _, err := r.Read(row) |
| 870 | if err != nil { |
| 871 | if errors.Is(err, io.EOF) { |
| 872 | break |
| 873 | } |
| 874 | require.NoError(t, err) |
| 875 | } |
| 876 | |
| 877 | tr := row[0] |
| 878 | sch := parquet.SchemaOf(tr) |
| 879 | row := sch.Deconstruct(nil, tr) |
| 880 | |
| 881 | totalProtoSize += int64(estimateMarshalledSizeFromParquetRow(row)) |
| 882 | totalTraceSize += int64(estimateMarshalledSizeFromTrace(tr)) |
| 883 | } |
| 884 | |
| 885 | fmt.Println(pf.Size(), ",", len(pf.RowGroups()), ",", totalProtoSize, ",", totalTraceSize) |
| 886 | } |
| 887 | |
| 888 | func TestExtendReuseSlice(t *testing.T) { |
| 889 | tcs := []struct { |
no test coverage detected