-
Notifications
You must be signed in to change notification settings - Fork 16
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
Range violation on big pbf file #96
Comments
Reproducing: Download archive with simple DUB project, .proto files and sample of data here: Archieve contains these files:
This is D file from that archive: void main(){}
import dproto.dproto;
import dproto.imports;
mixin(ParseProtoSchema("<none>", `option dproto_reserved_fmt = "%s_"; ` ~ import("fileformat.proto")).toD());
mixin(ParseProtoSchema("<none>", `option dproto_reserved_fmt = "%s_"; ` ~ import("osmformat.proto")).toD());
unittest
{
import std.file;
ubyte[] buff = cast(ubyte[]) read("PrimitiveBlock.pbf");
auto result = PrimitiveBlock(buff);
} For compile and execute just run I am sure on 90% what PrimitiveBlock.pbf contains valid protobuf data |
Is there any way you're able to reduce the .pbf file? As is, there's WAY too much data for me to be able to debug. |
This file is already reduced from biggest ~1.5 Mb official OpenStreetMap pbf file. This is maximum what I can do with it because dproto fails on parsing this PrimitiveBlock struct. |
@msoucy , hi! Sorry, but can I expect that you pay attention to this ticket? Many thanks! |
I checked this pbf file for errors by protoc tool and it isn't shows any error. $ protoc --decode=OSMPBF.PrimitiveBlock osmformat.proto < PrimitiveBlock.pbf |
Unfortunately, the real world has kept me very busy lately. I haven't had much time for any side projects. Since you know that the data is good, maybe you can find a subset of it for a smaller test case? |
No. It fails just at |
Archive with DUB project, .proto files and data sample reuploaded: |
Still reproduceable on 2.1.4 version
|
Plz add |
Previously it is worked well.
I'm not sure: this error in my code or in dproto code? dproto normally throws only its own exceptions?The text was updated successfully, but these errors were encountered: