Transaction lifecycle

  • Traditional C/S -- For each transaction object, a single database transaction typically spans the entire session.

  • PowerServer -- A transaction object may open and close multiple database transactions during application execution. When Autocommit = true, each operation is automatically committed by the runtime environment. When Autocommit = false, a transaction remains active until COMMIT or ROLLBACK is executed, or until the configured transaction timeout is reached.

    • For query operations (e.g., DataWindow Retrieve or Embedded SELECT), PowerServer automatically starts and closes the transaction.

    • For data updates (e.g., Update, Insert, Delete),

      1. when AutoCommit = true, PowerServer automatically starts and commits/closes the transaction;

      2. when AutoCommit = false, PowerServer starts a transaction that remains open until the command COMMIT or ROLLBACK is executed or the configured transaction timeout is reached.