Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG]: ParquetSerializer.DeserializeAsync (fasm.Field is null) #548

Open
brendanbignell opened this issue Sep 10, 2024 · 0 comments
Open

Comments

@brendanbignell
Copy link

Library Version

4.25

OS

Windows 11

OS Architecture

64 bit

How to reproduce?

I used the following to create a Parquet file from a List (same behaviour with a class).
await ParquetSerializer.SerializeAsync(sortedTicks, parquetFilePath);

However if I immediately try to load the file it appears full of default values.
IList ticksP = await ParquetSerializer.DeserializeAsync(parquetFilePath);

Tracing through the code in the debugger reveals an exception being thrown from ParquetSerializer:279 because this comparison returns false : fasm.Field.Equals(dataField).
I can see this is because the dataField.SchemaElement is set to a valid element, but in fasm.Field is null.

Here is a sample file which will trigger the error when read: https://1drv.ms/u/s!AhDUHssG2nbYmoM7f0vBU3Lm8-Thow?e=TPGsP9

The Floor app can display the file fine.


public struct Tick
{
private static int tickSize = 100000; // TODO - Look this up for the specific instrument

[ParquetRequired]
public long Timestamp { get; set;}

[ParquetRequired]
public float AskPrice { get; set; }

[ParquetRequired]
public float BidPrice { get; set; }

[ParquetRequired]
public float AskVolume { get; set; }

[ParquetRequired]
public float BidVolume { get; set; }

Failing test

No response

@brendanbignell brendanbignell changed the title [BUG]: [BUG]: ParquetSerializer.DeserializeAsync (fasm.Field is null) Sep 10, 2024
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

No branches or pull requests

1 participant