当使用S3作为文件存储时,如何克服“您建议的上传超过了最大允许大小”的错误?
当使用S3作为文件存储时,有可能一个巨大的文件上传失败,并上传到S3, Artifactory将记录以下错误:2020-11-17T10:01:58.247Z [jfrt] [ERROR] [bdc07b2dbfb0ee42] [.c.]EventualDownstreamWorker:74] [-cluster-s3-worker-2] - EventualDownstreamWorker在操作sha1 801dae099bb63dbf4be20a3d9daab7248f747eda时捕获错误:二进制文件就会被卡在最终目录中,永远不会上传到S3。
com.amazonaws.services.s3.model。AmazonS3Exception:建议的上传超过最大允许大小(服务:AmazonS3;状态代码:400;错误码:EntityTooLarge;请求ID: CCA93A72B1AEA873;S3扩展请求ID: OPiD1kYBrpe4lFmg5Dv4MWGX4B8qaXFXB9t0JMCbC8mJYAuB8zsEwqxavEfoo/2xvKyLwoLYfeE=)
大多数情况下,如果在binarstore .xml中使用参数< usepresing>,这个< usepresing>参数当设置为“true”时,将限制上传到S3的对象的最大大小在5GB以下,请参考这个Amazon文档更多的见解,以及你可以在这里找到更多关于Amazon S3官方SDK模板的信息Wiki页面.
然而,当< usepresinging>被设置为false时,' multiPartLimit '文件大小阈值(以字节为单位)超过文件上传的分块和多线程,这将允许使用multipart upload上传部分对象,并且大文件大小应该被上传到S3。
要上传大于5GB的文件,请将binarstore .xml文件中的< usepresing>设置为falseJFROG_HOME美元/ artifactory / var / etc / artiafctory / binarystore.xml对于Artifactory v7。x和美元ARTIFACTORY_HOME / etc / binarystore.xml用于Artifactory v6。x, do a rolling restart of the cluster, and perform the upload again.
