Overview and Limitations

  1. PDTT has limited support for Patterns versions prior to 5.8:

    • The source server and target server must be at least version 5.6.

    • When the source server is version 5.6 or 5.7, only tables can be transferred.

  2. Transferring from a higher version server to a lower version server is not supported.

    PDTT will not block such attempts, but it is not a supported use case and is likely to fail.

  3. Objects are never overwritten.

    To replace an object on the target server, it must first be deleted.

  4. PDTT only performs full transfers and will attempt to transfer all objects.

    Note: If the object already exists on the target server, and the -i option is specified, the object will be skipped.
  5. One transaction is used per object.

    If PDTT fails for any reason:

    • Objects that were completely transferred will remain on the target server.

    • Objects that were not completely transferred will be removed from the target server.

  6. Transfer of an object fails if the object already exists on the target server.

    This behavior can be changed with -i command-line option.

  7. Parallel transfer

    Tables can be very large. To minimize transfer time and memory usage, PDTT transfers tables in parallel. All other objects are transferred one at a time.

  8. Resource usage

    • Memory: PDTT typically uses less than 2 GB of memory.  Transferring large RLink Learn models requires up to an additional 6 GB of memory.

    • CPU: PDTT uses one thread per table. Transfer of other objects is single-threaded and takes place before transferring tables.

  9. Logging

    PDTT is compatible with Apache log4j2. This provides for setting the location of log output, log levels, and so on. The default log level is info.