Class S3TransactionLogSynchronizer
java.lang.Object
io.trino.plugin.deltalake.transactionlog.writer.S3TransactionLogSynchronizer
- All Implemented Interfaces:
TransactionLogSynchronizer
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionS3TransactionLogSynchronizer(TrinoFileSystemFactory fileSystemFactory, io.airlift.json.JsonCodec<S3TransactionLogSynchronizer.LockFileContents> lockFileContentesCodec) -
Method Summary
Modifier and TypeMethodDescriptionbooleanisUnsafe()Whether or not writes using this Synchronizer need to be enabled with the "delta.enable-non-concurrent-writes" config property.static StringparseEntryFilename(String lockFilename) voidwrite(ConnectorSession session, String clusterId, org.apache.hadoop.fs.Path newLogEntryPath, byte[] entryContents) Performs atomic write of transaction log entry file.
-
Field Details
-
LOG
public static final io.airlift.log.Logger LOG
-
-
Constructor Details
-
S3TransactionLogSynchronizer
@Inject public S3TransactionLogSynchronizer(TrinoFileSystemFactory fileSystemFactory, io.airlift.json.JsonCodec<S3TransactionLogSynchronizer.LockFileContents> lockFileContentesCodec)
-
-
Method Details
-
isUnsafe
public boolean isUnsafe()Description copied from interface:TransactionLogSynchronizerWhether or not writes using this Synchronizer need to be enabled with the "delta.enable-non-concurrent-writes" config property.- Specified by:
isUnsafein interfaceTransactionLogSynchronizer- Returns:
- False if collision detection for writes from multiple clusters is supported, else true.
-
write
public void write(ConnectorSession session, String clusterId, org.apache.hadoop.fs.Path newLogEntryPath, byte[] entryContents) Description copied from interface:TransactionLogSynchronizerPerforms atomic write of transaction log entry file.- Specified by:
writein interfaceTransactionLogSynchronizer
-
parseEntryFilename
-