MCPcopy
hub / github.com/scality/cloudserver / metadataMarkMPObjectForCompletion

Function metadataMarkMPObjectForCompletion

lib/services.js:635–655  ·  view source on GitHub ↗

* Mark the MPU overview key with a flag when starting the * CompleteMPU operation, to be checked by "put part" operations * * @param {object} params - params object * @param {string} params.bucketName - name of MPU bucket * @param {string} params.objectKey - object key

(params, log, cb)

Source from the content-addressed store, hash-verified

633 * @return {undefined}
634 */
635 metadataMarkMPObjectForCompletion(params, log, cb) {
636 assert.strictEqual(typeof params, 'object');
637 assert.strictEqual(typeof params.bucketName, 'string');
638 assert.strictEqual(typeof params.objectKey, 'string');
639 assert.strictEqual(typeof params.uploadId, 'string');
640 assert.strictEqual(typeof params.splitter, 'string');
641 assert.strictEqual(typeof params.storedMetadata, 'object');
642 const splitter = params.splitter;
643 const longMPUIdentifier =
644 `overview${splitter}${params.objectKey}${splitter}${params.uploadId}`;
645 const multipartObjectMD = Object.assign({}, params.storedMetadata);
646 multipartObjectMD.completeInProgress = true;
647 metadata.putObjectMD(params.bucketName, longMPUIdentifier, multipartObjectMD,
648 {}, log, err => {
649 if (err) {
650 log.error('error from metadata', { error: err });
651 return cb(err);
652 }
653 return cb();
654 });
655 },
656
657 /**
658 * Returns if a CompleteMPU operation is in progress for this

Callers

nothing calls this directly

Calls 1

errorMethod · 0.80

Tested by

no test coverage detected