petrbroz / svf-utils

Utilities for working with the SVF file format used by Autodesk Platform Services.
https://petrbroz.github.io/svf-utils/
MIT License
127 stars 55 forks source link

What could cause an Error 413 on file convertion ? #32

Open KevinFournier opened 3 years ago

KevinFournier commented 3 years ago

Hello,

I have one file I cannot generate a gltf from. I get this error back when I try to: Unable to generate the glTF file: abort(Error: Request failed with status code 413).

I wont be surprised if this come from the model complexity. It’s the metal part of a reinforced concrete section. See below a lighter version of the model we managed to load.

image

(This generated glTF has ~250 item with ~75 metadata field attached to each)

I may be an isolated case but do you know what could trigger an error 413 during a model transformation ? Could it trigger the Forge rate limit, or a quota, or something else I’m not aware of ?

Thank you.

KevinFournier commented 3 years ago

UPDATE:

I found out it could be linked to either the request :urn/metadata/:guid or the request GET :urn/metadata/:guid/properties.

If this is the reason it may be because the metadata tree is too big (>20mb). That would not surprise me as it is a big model. In this case, maybe setting the forceget query string parameter to true could resolve the problem.

I’ll try to see what I can do on my side to test that.

Unbelivable how I always start to find lead to solve my problems only when I ask other people to help me.

KevinFournier commented 3 years ago

I found out what was the problem.

We were using getDerivative(…) instead of getDerivativeChuncked(…) as is it done in the exemple. So any metadata above 20mo would not be downloaded.

petrbroz commented 3 years ago

Hi Kevin, thanks for reporting this :+1: Yes, the 413 response typically indicates that a resource you're trying to download in one piece is too large and should be instead downloaded in chunks, and in this case it's most likely coming from the https://forge.autodesk.com/en/docs/model-derivative/v2/reference/http/urn-manifest-derivativeurn-GET endpoint.

I think the converter could probably use the "chunked" download by default, so let me reopen this issue to track that.

KevinFournier commented 3 years ago

Hi Petr

Glad to help.

I only have a limited control on which Revit model I have access to but if you need it I may be able to do some test if you need it.