MobiLink server

New mlsrv10 features
  • Server name change to mlsrv10   The MobiLink server is now called mlsrv10. Previously, it was called dbmlsrv9.

  • New syntax for mlsrv10 -x   The mlsrv10 -x option, used for setting network protocol options for MobiLink clients, has changed.

    See -x option.

  • New -xo option for older clients   To connect the MobiLink server to version 8 or 9 clients, you should use the mlsrv10 -xo option, which is identical to the dbmlsrv9 -x option. You can support version 8 and 9 clients, as well as version 10 clients, from one instance of mlsrv10, but to do so you need to use two different ports.

    The -xo option for HTTP and HTTPS includes a new option, session_key, which is useful if you cannot use JSESSIONID for tracking connections.

    See -xo option.

  • Improved handling of cache   The MobiLink server no longer maintains separate pools of memory for different tasks. All cache memory is shared by all synchronizations. You set the cache size using the new mlsrv10 -cm option. Other options for setting cache sizes (-bc, -d, -dd, and -u) have been removed.

    See -cm option.

  • Ignore option now affects all streams   Now every host name or IP address that you specify to ignore is ignored on all -x streams. Previously (and still with -xo), the host was ignored only on the stream where it was specified.

    See "ignore" in -x option.

  • Forcing upload scripts   The mlsrv10 -zus option allows you to force the MobiLink server to call upload scripts for a table, even when there is no data to upload for that table.

    See -zus option.

  • New verbosity option   The new verbosity option e allows you to capture system event scripts. When -ve is specified, the MobiLink server shows all system event scripts that are used to maintain MobiLink system tables, as well as the SQL statements that define the upload stream.

    See -v option.

  • File transfer directory   A new option has been added that allows you to use a directory for file transfers.

    See -ftr option.

  • Set the maximum number of concurrent synchronizations   You can now improve performance by setting the maximum number of synchronizations that can be actively worked on.

    See -sm option.

  • Limit concurrent network connections   The new -nc option lets you specify a limit to the number of concurrent network connections.

    See -nc option.

  • mlsrv10 now uses ISO 8601 datetime format for message timestamps   Timestamps in informational, warning, and error messages now use the unambiguous ISO 8601 datetime format: {I|W|E}.yyyy-mm-dd hh:mm:ss message.

New MobiLink scripting features
  • Named script parameters   There are now names for MobiLink event parameters. Previously, you had to specify script parameters as question marks. Now, question marks are optional. You can choose from a set of predefined named parameters, or create your own, or both. User-defined named parameters are useful when your RDBMS does not support variables. You can specify the named parameters in any order, and use any subset of available parameters, unlike question marks. Also, in most cases you can use the same named parameter multiple times in the same script.

    See Script parameters.

  • New conflict detection event   There is a new event that you can script to detect conflicts at the column level. This is an alternative to the upload_fetch event, which detects conflicts at the row level.

    See upload_fetch_column_conflict table event.

  • Global script version   You can now create a global script version. You define the scripts associated with the global script version once and then they are automatically used in all synchronizations unless you specify a script for the same event in the script version you are using to synchronize. When you are using multiple script versions, this means that you can avoid duplicating connection level scripts.

    See ml_global script version.

Performance enhancements
  • Improved MobiLink architecture   The MobiLink server has been re-architected to improve throughput, flexibility, and maintainability. The internal MobiLink client/server protocol has been enhanced for the same reasons.

    See MobiLink performance.

Other server enhancements
  • Snapshot isolation   For SQL Anywhere version 10 and Microsoft SQL Server 2005 and later consolidated databases, snapshot isolation is now the default for downloads, and is an option for uploads. MobiLink server options are added to help you control this behavior.

    See:

  • Synchronization ID   Each synchronization is now identified by an integer that is between 1 and 4294967295. Each instance of the MobiLink server maintains its own synchronization IDs. When the MobiLink server is started, the ID is reset to 1. This ID is logged in the output file.

  • Improved MobiLink network layer   The network layer now includes compression, persistent connections (so you can synchronize multiple times on the same connection), IPv6 support, and improved error detection, liveness detection, and debugging.

MobiLink Monitor enhancements
  • Utility name change to mlmon   The MobiLink Monitor is now called mlmon. Previously, it was called dbmlmon.

    See Starting the MobiLink Monitor.

  • Multiple MobiLink Monitors   You can now connect multiple MobiLink Monitors to the same MobiLink server simultaneously. This allows multiple users to track synchronizations on the same server.

    See Starting the MobiLink Monitor.

  • Network options   The MobiLink Monitor now allows the same network options as MobiLink clients.

    See Starting the MobiLink Monitor.

  • New Utilization Graph   The Utilization Graph pane shows queue lengths within the MobiLink server.

    See Utilization Graph pane.

  • Viewing data in the Chart pane   In the Chart pane, you can still view data by user, or you can choose to view it in Compact view, which shows all active synchronizations in as few rows as possible. The Worker view has been removed because synchronization is no longer tied to a single worker thread.

    See Chart pane.

  • New Sample Properties window   The new Sample Properties shows data for a one-second interval or the average of all the one-second intervals in the selected period.

    See Sample properties.

  • Enhanced Session Properties window   Session properties now contains a detailed Statistics tab.

    See Session properties.

  • Ability to Monitor FIPS-enabled servers   The MobiLink Monitor can now monitor MobiLink servers that are running FIPS-approved encryption. Previously, it was not able to.

  • Changes to statistical properties   See "Changes to statistical properties" in MobiLink server changes.

MobiLink Redirector enhancements
  • Redirector supports groups of MobiLink servers   For some Redirectors, you can now create MobiLink server groups. Server groups can be used to support version 10 clients at the same time as version 8 or 9 clients through one Redirector, or for other purposes. For information about which Redirectors support server groups, see Supported platforms.

    See MobiLink server groups.

    The Redirectors that support server groups have other enhancements to their configuration settings. In addition, they use a new sample configuration file called redirector_server_group.config.

    See Configuring Redirector properties (for Redirectors that support server groups).

  • HTTPS support   In previous versions of SQL Anywhere, when HTTPS is used for the connection between a remote database and web server, the web server decrypts the HTTPS and sends HTTP to MobiLink via the Redirector. Now, for some web servers, the Redirector re-encrypts the stream as HTTPS and sends it to the MobiLink server. There is new syntax for the ML directive in the Redirector configuration file. For information on which web servers have HTTPS support, see Supported platforms.

    See Configuring Redirector properties (for Redirectors that support server groups).

Unix/Linux enhancements
  • MobiLink server messages window   Linux installations now have a messages window that shows log information for dbmlsync and mlsrv10.

    See -ux option and -ux option.

  • More consistent character conversions   There are improvements to the consistency of character conversions between Unix/Linux and Windows.