updateDataRepositoryAssociation method
Updates the configuration of an existing data repository association on an
Amazon FSx for Lustre file system. Data repository associations are
supported on all FSx for Lustre 2.12 and 2.15 file systems, excluding
scratch_1 deployment type.
May throw BadRequest.
May throw DataRepositoryAssociationNotFound.
May throw IncompatibleParameterError.
May throw InternalServerError.
May throw ServiceLimitExceeded.
Parameter associationId :
The ID of the data repository association that you are updating.
Parameter importedFileChunkSize :
For files imported from a data repository, this value determines the
stripe count and maximum amount of data per file (in MiB) stored on a
single physical disk. The maximum number of disks that a single file can
be striped across is limited by the total number of disks that make up the
file system.
The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 MiB (500 GiB). Amazon S3 objects have a maximum size of 5 TB.
Parameter s3 :
The configuration for an Amazon S3 data repository linked to an Amazon FSx
Lustre file system with a data repository association. The configuration
defines which file events (new, changed, or deleted files or directories)
are automatically imported from the linked data repository to the file
system or automatically exported from the file system to the data
repository.
Implementation
Future<UpdateDataRepositoryAssociationResponse>
updateDataRepositoryAssociation({
required String associationId,
String? clientRequestToken,
int? importedFileChunkSize,
S3DataRepositoryConfiguration? s3,
}) async {
_s.validateNumRange(
'importedFileChunkSize',
importedFileChunkSize,
1,
512000,
);
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target':
'AWSSimbaAPIService_v20180301.UpdateDataRepositoryAssociation'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'AssociationId': associationId,
'ClientRequestToken':
clientRequestToken ?? _s.generateIdempotencyToken(),
if (importedFileChunkSize != null)
'ImportedFileChunkSize': importedFileChunkSize,
if (s3 != null) 'S3': s3,
},
);
return UpdateDataRepositoryAssociationResponse.fromJson(jsonResponse.body);
}