首页 > 解决方案 > GEN_SIZE_INVALID,详细信息:传递的对象大小太大,无法处理

问题描述

当使用 autodesk-forge 的 web 服务通过资源“data/v1/projects/{PROJECT_ID}/versions?copyFrom={ESCAPED_VERSION_ID}”复制文件版本时,以下 HttpResponse-Content 的实际含义是什么?

{"jsonapi":{"version":"1.0"},
"errors":[{
"id":"3a6cb28b-6656-451c-acfb-1c68ddb24a45",
"status":"400",
"code":"ERR_BAD_INPUT",
"title":"The request has invalid header or body",
"detail":"GEN_SIZE_INVALID, details: The object size passed is too big for processing."
}]}

可以引用的版本数量或类似内容是否有限制?

这是带有虚拟值的有效负载:

{
  "jsonapi": {
    "version": "1.0"
  },
  "data": {
    "type": "versions",
    "relationships": {
      "refs": {
        "data": [
          {
            "type": "versions",
            "id": "{{VersionURNforLink1}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink2}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink3}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink4}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink5}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink6}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink7}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink8}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink9}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink10}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink11}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink12}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink13}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink14}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink15}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink16}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink17}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink18}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink19}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink20}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink21}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink22}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink23}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          },
          {
            "type": "versions",
            "id": "{{VersionURNforLink24}}",
            "meta": {
              "refType": "xrefs",
              "direction": "from",
              "extension": {
                "type": "xrefs:autodesk.core:Xref",
                "version": "1.1",
                "data": {
                  "nestedType": "overlay"
                }
              }
            }
          }
        ]
      }
    }
  }
}

标签: autodesk-forgeautodesk-model-derivative

解决方案


From all the data we've been able to gather so far: There is in fact a limit on how many files can be referenced directly, which seems to be 50.
The reason it occurred in so many places for us when we didn't have any files referencing nearly that amount of other plans, was how the "CopyFrom"-functionality works.

Example on how to reproduce the problem:
Given "plan A" and "plan B" ("B" referencing "A"), upload both files and create their initial items/versions. Now do the following:
1.) re-upload "A" and create a new version.
2.) use "CopyFrom" on the latest version of "B" and define the reference to the latest version of "A".

Since "CopyFrom" adds references instead of replacing them, version #2 of "B" now holds two references. One towards the initial version #1 of "A" and one to the latest version of "A". Repeat these steps enough times and you'll eventually run into this issue.

Solution:
Even though nothing except one reference has changed on "B", one needs to reupload the file defining all required references so version #N of "B" only references version #N of "A". (Be wary that this behaviour of course may change in the future!)


推荐阅读