fix(xo-server): ova export with files bigger than 8.2GB (#7047)
Following 15f69a1
Updating tar-stream to latest version fixes support of files bigger than 8.2GB
This commit is contained in:
parent
c714bc3518
commit
90e0f26845
@ -16,6 +16,7 @@
|
|||||||
- [Backup/Restore] Fix `Cannot read properties of undefined (reading 'id')` error when restoring via an XO Proxy (PR [#7026](https://github.com/vatesfr/xen-orchestra/pull/7026))
|
- [Backup/Restore] Fix `Cannot read properties of undefined (reading 'id')` error when restoring via an XO Proxy (PR [#7026](https://github.com/vatesfr/xen-orchestra/pull/7026))
|
||||||
- [Google/GitHub Auth] Fix `Internal Server Error` (xo-server: `Cannot read properties of undefined (reading 'id')`) when logging in with Google or GitHub [Forum#7729](https://xcp-ng.org/forum/topic/7729) (PRs [#7031](https://github.com/vatesfr/xen-orchestra/pull/7031) [#7032](https://github.com/vatesfr/xen-orchestra/pull/7032))
|
- [Google/GitHub Auth] Fix `Internal Server Error` (xo-server: `Cannot read properties of undefined (reading 'id')`) when logging in with Google or GitHub [Forum#7729](https://xcp-ng.org/forum/topic/7729) (PRs [#7031](https://github.com/vatesfr/xen-orchestra/pull/7031) [#7032](https://github.com/vatesfr/xen-orchestra/pull/7032))
|
||||||
- [Jobs] Fix schedules not being displayed on first load [#6968](https://github.com/vatesfr/xen-orchestra/issues/6968) (PR [#7034](https://github.com/vatesfr/xen-orchestra/pull/7034))
|
- [Jobs] Fix schedules not being displayed on first load [#6968](https://github.com/vatesfr/xen-orchestra/issues/6968) (PR [#7034](https://github.com/vatesfr/xen-orchestra/pull/7034))
|
||||||
|
- [OVA Export] Fix support of disks with more than 8.2GiB of content (PR [#7047](https://github.com/vatesfr/xen-orchestra/pull/7047))
|
||||||
|
|
||||||
### Packages to release
|
### Packages to release
|
||||||
|
|
||||||
|
@ -123,7 +123,7 @@
|
|||||||
"stoppable": "^1.0.5",
|
"stoppable": "^1.0.5",
|
||||||
"subleveldown": "^6.0.1",
|
"subleveldown": "^6.0.1",
|
||||||
"syslog-client": "^1.1.1",
|
"syslog-client": "^1.1.1",
|
||||||
"tar-stream": "^2.0.1",
|
"tar-stream": "^3.1.6",
|
||||||
"tmp": "^0.2.1",
|
"tmp": "^0.2.1",
|
||||||
"unzipper": "^0.10.5",
|
"unzipper": "^0.10.5",
|
||||||
"uuid": "^9.0.0",
|
"uuid": "^9.0.0",
|
||||||
|
@ -22,7 +22,7 @@ import { decorateWith } from '@vates/decorate-with'
|
|||||||
import { defer as deferrable } from 'golike-defer'
|
import { defer as deferrable } from 'golike-defer'
|
||||||
import { limitConcurrency } from 'limit-concurrency-decorator'
|
import { limitConcurrency } from 'limit-concurrency-decorator'
|
||||||
import { parseDuration } from '@vates/parse-duration'
|
import { parseDuration } from '@vates/parse-duration'
|
||||||
import { PassThrough } from 'stream'
|
import { PassThrough, pipeline } from 'stream'
|
||||||
import { forbiddenOperation, operationFailed } from 'xo-common/api-errors.js'
|
import { forbiddenOperation, operationFailed } from 'xo-common/api-errors.js'
|
||||||
import { extractOpaqueRef, parseDateTime, Xapi as XapiBase } from '@xen-orchestra/xapi'
|
import { extractOpaqueRef, parseDateTime, Xapi as XapiBase } from '@xen-orchestra/xapi'
|
||||||
import { Ref } from 'xen-api'
|
import { Ref } from 'xen-api'
|
||||||
@ -743,9 +743,11 @@ export default class Xapi extends XapiBase {
|
|||||||
stream.resume()
|
stream.resume()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
const nodeStream = new PassThrough()
|
||||||
|
pipeline(stream, nodeStream, () => {})
|
||||||
const table = tables[entry.name]
|
const table = tables[entry.name]
|
||||||
const vhdStream = await vmdkToVhd(
|
const vhdStream = await vmdkToVhd(
|
||||||
stream,
|
nodeStream, // tar-stream stream are not node stream
|
||||||
table.grainLogicalAddressList,
|
table.grainLogicalAddressList,
|
||||||
table.grainFileOffsetList,
|
table.grainFileOffsetList,
|
||||||
compression[entry.name] === 'gzip',
|
compression[entry.name] === 'gzip',
|
||||||
|
Loading…
Reference in New Issue
Block a user