<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[S3 Backup - maximum number of parts]]></title><description><![CDATA[<p dir="auto">We use S3 swift proxy for swift storage and have built some infrastructure around it.</p>
<p dir="auto">When we tried S3 for backup we got this error<br />
<code>xo-server[144792]:   error: InvalidArgument: Part number must be an integer between 1 and 1000, inclusive</code></p>
<p dir="auto">Swift defaults to max number of parts of 1000, as do several commercial S3 implementations, and we have tried increasing but it caused instability in one of applications built around swift SLO.</p>
<p dir="auto">The solution I've implemented is to reduce the MAX_PART_NUMBER in<br />
<a class="plugin-mentions-category plugin-mentions-a" href="/forum/category/12/xen-orchestra" aria-label="Profile: xen-orchestra">@<bdi>xen-orchestra</bdi></a>/fs/dist/s3.js to 1000, but this be overwritten on each upgrade.</p>
<p dir="auto">Could an option be added into the AWS S3 parameters to set this? or even just being able to override the value in a configuration file somewhere.</p>
]]></description><link>https://xcp-ng.org/forum/topic/10587/s3-backup-maximum-number-of-parts</link><generator>RSS for Node</generator><lastBuildDate>Tue, 12 May 2026 18:13:18 GMT</lastBuildDate><atom:link href="https://xcp-ng.org/forum/topic/10587.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 07 Mar 2025 16:51:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to S3 Backup - maximum number of parts on Mon, 09 Mar 2026 16:24:13 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/florent" aria-label="Profile: florent">@<bdi>florent</bdi></a> That would be great.  Thanks again!</p>
]]></description><link>https://xcp-ng.org/forum/post/103294</link><guid isPermaLink="true">https://xcp-ng.org/forum/post/103294</guid><dc:creator><![CDATA[deligatedgeek]]></dc:creator><pubDate>Mon, 09 Mar 2026 16:24:13 GMT</pubDate></item><item><title><![CDATA[Reply to S3 Backup - maximum number of parts on Mon, 09 Mar 2026 16:12:19 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/deligatedgeek" aria-label="Profile: deligatedgeek">@<bdi>deligatedgeek</bdi></a> we will try to push this branch to master before the end of the month<br />
(we will have a lot of documentation to write on what is solves and what it don't solves)</p>
]]></description><link>https://xcp-ng.org/forum/post/103292</link><guid isPermaLink="true">https://xcp-ng.org/forum/post/103292</guid><dc:creator><![CDATA[florent]]></dc:creator><pubDate>Mon, 09 Mar 2026 16:12:19 GMT</pubDate></item><item><title><![CDATA[Reply to S3 Backup - maximum number of parts on Fri, 06 Mar 2026 17:45:01 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/florent" aria-label="Profile: florent">@<bdi>florent</bdi></a> I have tested in our dev environment backing up a 30GB VM, which compressed into 22GB and was uploaded in 739 parts of 40MB each.</p>
<p dir="auto">I will test a larger VM next week but I think this was successful test is already conclusive.</p>
<p dir="auto">Thank You</p>
]]></description><link>https://xcp-ng.org/forum/post/103264</link><guid isPermaLink="true">https://xcp-ng.org/forum/post/103264</guid><dc:creator><![CDATA[deligatedgeek]]></dc:creator><pubDate>Fri, 06 Mar 2026 17:45:01 GMT</pubDate></item><item><title><![CDATA[Reply to S3 Backup - maximum number of parts on Thu, 05 Mar 2026 08:37:29 GMT]]></title><description><![CDATA[<p dir="auto">I insist on the fact that this will only have impact on the FULL backups jobs , and not on the incremental ones</p>
]]></description><link>https://xcp-ng.org/forum/post/103206</link><guid isPermaLink="true">https://xcp-ng.org/forum/post/103206</guid><dc:creator><![CDATA[florent]]></dc:creator><pubDate>Thu, 05 Mar 2026 08:37:29 GMT</pubDate></item><item><title><![CDATA[Reply to S3 Backup - maximum number of parts on Wed, 04 Mar 2026 16:40:19 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/deligatedgeek" aria-label="Profile: deligatedgeek">@<bdi>deligatedgeek</bdi></a> would it be ok to do a quick iteration where you need to use the command line to add some magics to your backup repository settings ?</p>
<p dir="auto">first you will need to change your branch to feat_s3_part_settings ( if you are using xo from source)<br />
Then use xo-cli to update the settings of your remote :</p>
<p dir="auto"><code>xo-cli remote.getAll</code></p>
<p dir="auto">find the right one, then  <code>xo-cli remote.set id=&lt;the uuid you get at the previous step&gt; url='&lt;the previous url &gt;&amp;maxPartNumber=1000</code></p>
<p dir="auto">you can also add maxPartSize and minPartSize if needed</p>
]]></description><link>https://xcp-ng.org/forum/post/103185</link><guid isPermaLink="true">https://xcp-ng.org/forum/post/103185</guid><dc:creator><![CDATA[florent]]></dc:creator><pubDate>Wed, 04 Mar 2026 16:40:19 GMT</pubDate></item><item><title><![CDATA[Reply to S3 Backup - maximum number of parts on Tue, 03 Mar 2026 20:03:21 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/florent" aria-label="Profile: florent">@<bdi>florent</bdi></a> The actual problem we had to solve was that AWS S3 allows 10000 chunks, whereas other implementations by default only allow 1000, so s3 library calculates small chunk size.<br />
We tried configuring swift proxy multipart and swift S3 to 10000, but it causes other problems.<br />
We also ran into the same issue using Mender with Minio as a backend failure with files over 10G.</p>
<p dir="auto">Understanding this more now and the solution could simply be to specify someone a maximum number of chunks, which would be 10000 by default by could be set to 1000.</p>
<p dir="auto">We settled on our solution because of this code in the s3 js files</p>
<pre><code>chunk_size = max(MIN_PART_SIZE, ceil(file_size / 10000))
</code></pre>
<p dir="auto">It was easier to set MIN_PART_SIZE, than modify the code to have a parameter instead of 10000.  And we patch the code after each XO update.</p>
<p dir="auto">Either solution would work for us, thanks for following up on this.</p>
]]></description><link>https://xcp-ng.org/forum/post/103147</link><guid isPermaLink="true">https://xcp-ng.org/forum/post/103147</guid><dc:creator><![CDATA[deligatedgeek]]></dc:creator><pubDate>Tue, 03 Mar 2026 20:03:21 GMT</pubDate></item><item><title><![CDATA[Reply to S3 Backup - maximum number of parts on Tue, 03 Mar 2026 09:10:24 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/deligatedgeek" aria-label="Profile: deligatedgeek">@<bdi>deligatedgeek</bdi></a> are you modifying the chunk for delta or full backup ?<br />
because a lot of part in the incremental code assume that blocks are aligned to 2MB</p>
<p dir="auto">For full backup ( one big xva file per VM)  the  code should handle file with a size bigger than 4GB , by dynamically increasing the chunk size. We do not increase the chunk size by default because it also increase a lot the memory consumption. The minimum size of a chunk is given by MIN_PART_SIZE ( 5MB as per AWS doc )  and the maximum size is MAX_PART_SIZE ( 5GB) . The maximum file is 50TB , the biggest full backup I saw in the wild was a few hundred GB</p>
]]></description><link>https://xcp-ng.org/forum/post/103119</link><guid isPermaLink="true">https://xcp-ng.org/forum/post/103119</guid><dc:creator><![CDATA[florent]]></dc:creator><pubDate>Tue, 03 Mar 2026 09:10:24 GMT</pubDate></item><item><title><![CDATA[Reply to S3 Backup - maximum number of parts on Sat, 28 Feb 2026 20:33:51 GMT]]></title><description><![CDATA[<p dir="auto">That's very interesting, let me make sure <a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/florent" aria-label="Profile: florent">@<bdi>florent</bdi></a> got this</p>
]]></description><link>https://xcp-ng.org/forum/post/103084</link><guid isPermaLink="true">https://xcp-ng.org/forum/post/103084</guid><dc:creator><![CDATA[olivierlambert]]></dc:creator><pubDate>Sat, 28 Feb 2026 20:33:51 GMT</pubDate></item><item><title><![CDATA[Reply to S3 Backup - maximum number of parts on Fri, 27 Feb 2026 19:17:20 GMT]]></title><description><![CDATA[<p dir="auto">Hi <a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/olivierlambert" aria-label="Profile: olivierlambert">@<bdi>olivierlambert</bdi></a>,</p>
<p dir="auto">Finally got round to following up on this.</p>
<p dir="auto">I found a better solution using DEFAULT_CHUNK_SIZE, which is normally set to 4MB, with MAX_PART_NUMBER being 1000, this limits the largest object backed up to 3rd party S3 implementations as 4GB.</p>
<p dir="auto">Increasing the DEFAULT_CHUNK_SIZE in the S3 code, or having a setting in configuration, either file or web GUI would allow backups of VMs larger than 4GB, without the memory required to track several thousand object chunks.</p>
<p dir="auto">Regards,</p>
<p dir="auto">Mark</p>
]]></description><link>https://xcp-ng.org/forum/post/103068</link><guid isPermaLink="true">https://xcp-ng.org/forum/post/103068</guid><dc:creator><![CDATA[deligatedgeek]]></dc:creator><pubDate>Fri, 27 Feb 2026 19:17:20 GMT</pubDate></item></channel></rss>