Interface TransactionLogSynchronizer

All Known Implementing Classes:
AzureTransactionLogSynchronizer, GcsTransactionLogSynchronizer, NoIsolationSynchronizer, S3NativeTransactionLogSynchronizer

public interface TransactionLogSynchronizer
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Whether or not writes using this Synchronizer need to be enabled with the "delta.enable-non-concurrent-writes" config property.
    void
    write(ConnectorSession session, String clusterId, String newLogEntryPath, byte[] entryContents)
    Performs atomic write of transaction log entry file.
  • Method Details

    • write

      void write(ConnectorSession session, String clusterId, String newLogEntryPath, byte[] entryContents)
      Performs atomic write of transaction log entry file.
      Throws:
      TransactionConflictException - If file cannot be written because of conflict with other transaction
      RuntimeException - If some other unexpected error occurs
    • isUnsafe

      boolean isUnsafe()
      Whether or not writes using this Synchronizer need to be enabled with the "delta.enable-non-concurrent-writes" config property.
      Returns:
      False if collision detection for writes from multiple clusters is supported, else true.