JNetDirect Combine™ 6 New features list
Execution Modes

Combine 6.0 introduces two package execution modes:
- Traditional 'Sync' mode
- A new 'Async' mode
'Sync' mode
In this mode, scripts are executed synchronously and simultaneously on all databases, i.e. each script execution is started on all databases at the same time. Combine waits until each script is completed before executing the next script.
Timeline diagram for the 'Sync' mode
'Async' mode
In this mode, scripts are executed on each database without waiting for other databases. Combine starts the next script execution on each database immediately after the previous script is completed. This mode allows Combine to minimize wait time for small databases when the corresponding container consists of several databases of very different sizes (and very different script execution times).
Timeline diagram for the 'Async' mode
Set execution mode
'Sync'/'Async' modes are set for a package or any folder inside a package.
Selecting execution mode for a package
'Mixed' mode
If 'Async' mode is set for some folders (or for the entire package), then all sub-folders are executed in 'Async' mode regardless of their settings. So it is possible to create a series of synchronization points during package execution. To do so, users should create a corresponding number of folders and set their modes to 'Async' (the entire package should be in 'Sync' mode). Combine will then execute scripts inside each folder asynchronously, but when all scripts inside the folder are completed for one database, Combine will wait for the other databases before switching to the next folder execution. For example, the package will have the following structure:
Package structure example
The package is set to 'Sync' mode, while the folder is set to 'Async'. In this situation, the execution diagram will be as follows:
Timeline diagram for a 'Mixed' mode
In 'Async' mode, Combine does not stop for script execution errors. Depending on the option set for "Cancel Execution on Errored Databases," Combine either continues to execute scripts on all databases (if it is set to 'false') or only on error-free databases (if it is set to 'true').
Package Execution State
There are two ways to see package execution process:
- Execution Log
- Execution State Window
Execution Log
The Package Output window contains the execution log -- a list of all events that occurred during package execution.
Example of package execution log
Execution State Window
To open this window, users should choose the corresponding main menu item.
Opening package execution state window
The Execution state window contains a list of all databases and information about currently executing scripts, including script name (with a path inside the package) and current execution state.
Package execution state window
Possible states are:
- Waiting
- Executing
- ERROR!
- Cancelled
- Finished
Waiting: The script is waiting in the queue before the execution (for example, if the maximumnumber of server connections has been reached).
Executing: The script is currently executing.
ERROR!: There was an error during the corresponding script execution. Detailed error information can be found in the Execution Log or in 'Messages' items in the 'Package Result' window.
Cancelled: The script execution was cancelled by the user. The last window column contains a Cancel button. The user can cancel package execution on any particular database by pressing on the corresponding button. In that case, currently executing script is aborted, and all subsequent scripts are also cancelled (i.e. are not executed). This operation cannot be undone!
Finished: The current script execution is finished. If the entire package execution is not yet finished, this state means that the corresponding database is waiting for the next script to be executed (due to 'Sync' mode or server connection limits).
Use Encryption
Combine supports SSL encryption for SQL Server DB Instances, allowing users to encrypt connections between Combine and SQL Server DB Instances.
To use a SQL Server DB Instance over SSL, follow these general steps:
- Download the public key for the server where SQL Server DB is installed.
- Import the certificate into your Windows operating system.
For more information on importing a certificate, see How to Import a Trusted Root Certification Authority in Windows 7/Vista/XP (http://www.sqlservermart.com/HowTo/Windows_Import_Certificate.aspx) - Turn ON the "Use Encryption" check box in Combine for that server.
To display the encrypted status of your connection, run the following SQL query:
SELECT encrypt_option FROM sys.dm_exec_connections
WHERE session_id = @@SPID
To use SSL with Amazon servers, please read the "Using SSL with a SQL Server DB Instance" section on Amazon: http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html