Known Issues for Unwired Server

Learn about known issues and apply workarounds for Unwired Server.

Issue NumberDescription
N/A
Receive Error: 584 Message: Server public key verification failed when running the diagtool.exe tool.

Workaround: Resolve the issue by performing one of the following:

  • Run the diagtool.exe tool from another host.
  • Edit the registry on the machine where the diagtool.exetool is being run:
    • Remove the HKCU\Software\Sybase\Messaging Client registry key
    • Remove the HKCU\Software\Sybase\MessagingClientLib registry key
    Note: Use caution when editing the registry. Ensure that the key entries removed do not contain any currently used SUP applications (sub-entries).
CR 709892
Unwired Server records deployment errors in the domain log rather than in the Unwired Server logs.

Workaround: None. Deployment errors are in the domain log.

CR 708431
Data on the EIS, cache, and device is not in sync.

If a Create operation succeeds at the enterprise information system (EIS) back end, but its corresponding Entity Read operation fails at the back end, the back-end is updated but the cache database (CDB) is not. Error information may be reported in the Unwired Server log, but the error is not propagated to the device client. LogRecord shows 0 (zero), but findAll does not show the new record on the device.

Workaround: None. The change appears in the cache database and the device when the CDB is refreshed (for example, when the cache interval expires).

CR 707989
UserName appends @security in Application connection in manual registration.

Workaround: Set user name as "supAdmin@admin" in application connection if you set SecurityConfiguration in test code. The user names must match.

CR 705862
Device client cannot connect after it is restored. When a device MBO package database is re-created, and a backup containing the old device information is restored, the device does not receive any notifications or messaging-based messages, and no user error is visible.

Workaround: Reregister the device.

CR 704854
Receive Certificate Chain previously rejected when registering using HTTPS to Relay Server on Android 2.3.3 and Android 3.2.

Workaround: None. Works as designed. This is a platform limitation with Android 2.3.3 and Android 3.2.

CR 704253
During initial synchronization, the server updating the domainlog DB fails with a SQL Anywhere Error -638

Workaround: None. There is no impact from this error and it can be ignored.

CR 703612
Unable to properly update the CDB because the partition was improperly assigned when the row was initially inserted into the cache.
An MBO with a load/synchronization parameter, using an on-demand cache group interval greater than 0, and the load parameter does not have the "Propagate to Attribute" set:
  1. A record is created by the device and synchronized to the EIS.
  2. The record is deleted in the EIS.
  3. When the on-demand cache group interval expires, the next synchronization request from the device should correctly refresh the CDB and device. Although the newly created record has been deleted from the EIS, it still exists in the CDB and device where they remain.
Workaround:When designing the MBO, map its load parameter to a corresponding attribute with "Propagate to Attribute". If there is no corresponding attribute, add one, then map it. For example, the Customer MBO has this definition:
SELECT   id,
  fname,
  lname,
  address,
  city,
  state,
  zip,
  phone,
  company_name FROM sampledb.dba.customer
WHERE state = :state

Map the Customer MBO state load argument to the state "Propagate to Attribute" from the Load Arguments tab.

CR 703515

LDAP role/authentication search base cannot support special characters.

The following characters have special meaning when they appear in a name in LDAP: , (comma), = (equals), + (plus), < (less than), > (greater than), # (number sign), ; (semicolon), \ (backslash), and " (quotation mark)

LDAP providers do not currently handle these special characters in any of the names or DNs, including username, DefaultSearchBase, AuthenticationSearchBase, RoleSearchBase, AuthenticationFilter, and RoleFilter.

Workaround: None.

CR 701975
When deploying a package from Unwired WorkSpace or Sybase Control Center using UPDATE mode, the package's "onDemand" coherence window is not updated on Unwired Server.

Workaround: After deployment, adjust the "onDemand" coherence window from Sybase Control Center.

CR 699590
Large messages processed incorrectly on 32-bit runtime installations.

A 32-bit Unwired Server is not supported when developing messaging applications that process large messages. 32-bit servers run into memory issues and can potentially further result in incorrect data synchronizing with the Unwired Server cache.

Workaround: Install Unwired Platform runtime components on 64-bit hosts.

CR 699343
For native Object API applications, the upgrade process silently deletes composite orphans from the server cache.

Unwired Platform no longer allows composite orphans – MBO child entities within a composite relationship that have no parent entity. Depending on the system configuration, the upgrade may physically delete the orphans, or may only logically delete them, then physically delete them during a subsequent cache purge process. Either way, applications that use MBOs with composite orphans may not behave the same after migration.

Workaround: Before upgrading, eliminate composite orphans in native Object API applications:
  • Look for existing MBOs that generate composite orphans. Examine each MBO in Unwired WorkSpace, looking for any instance in which the application loads child entities before the related parent entity.
  • For any MBOs you find that generate composite orphans, change the data model in the MBO so that the application always loads parent entities before the related child entities. See the "Composite relationship behavior" row in the Relationship Guidelines and Restrictions topic, in the Sybase Unwired WorkSpace - Mobile Business Object Development guide.
  • Test any changes you make to ensure that the application still behaves as expected.
  • After you are satisfied that you have eliminated composite orphans from your MBOs, proceed with the upgrade to Unwired Platform version 2.1 ESD #3.

Additional Information on Composite Orphans

An example of a scenario in which parentless child entities can occur is a two MBO parent-child model integrated with JDBC for sales orders and line items. If the data model specifies that line items are inserted first, the application attempts to load child line items for a sales order that does not yet exist. Those line items disappear from the cache before the application can load the parent sales order.

To be sure that composite orphans do not cause problems in your migrated applications:
  • After migration, if you have mobile application projects that contain composite relationships and the child MBO load operation has no parameter dependencies on its parent, redeploy the package from Unwired WorkSpace using Update mode to generate the correct loadGroups for the deployed package.
  • Child load operations that do not depend upon parameters from the parent do not always generate orphans.

    Consider the case where the user wants to load all sales orders and line items created in the New York office. New York may be a load parameter for both parent and child that is bound to a personalization key and results in no orphans even though the child does not get any load parameters from the parent.

CR 698266
Synchronization fails when QUEUED_MESSAGES.adm file gets too large.

Workaround: Regularly run packtool.exe to defragment and reclaim unused space within tables and memo files used by the Advantage Database server.

CR 695671
Listview object query fails with error.

When performing a listview object query with very large data sets, the client returns an error code 571 or 1053, and the server becomes temporarily unavailable, or tries to restart. The mlsrv_err.log reports java.lang.OutOfMemoryError.

Workaround: Modify the maximum Java heap size to handle very large amounts of data in an object query. See Configuring Unwired Server Performance Properties in System Administration.

CR 693116 and CR 692218
Devices on 3G/4G network not able to connect to Unwired Server.

A connectivity issue may occur between the device and Unwired Server. The current client libraries use a protocol that supports HTTP chunked transfer-encoding only. 3G/4G traffic might, in some cases, be subject to content filtering and convert the messages from chunked transfer-encoding to fixed content-length if the communication is done via standard HTTP ports, which most commonly are 80 and 8080. Since the client application can support only chunked transfer-encoding, the communication cannot be established. In effect, a response cannot be sent back to the server indicating that the device is online.

Note: For devices on WiFi networks, the connection between a device and Unwired Server establishes without error.

Workaround: Use a nonstandard HTTP port (any port other than 80 or 8080) or an HTTPS port, that is, 443 for Unwired Server client communication from devices to the Relay Server or external load balancer, whichever one is used, in the DMZ.

CR 692374
Enabling compression incurs additional processing on the device and the server side to optimize the amount of data to be transferred over the network.

Workaround: Carefully evaluate whether the compression trade-off is appropriate in the deployment environment, and carefully size the server capacity to support it. If appropriate in a particular environment, follow the Sybase Unwired Platform Developer Guides to enable compression.

CR 691923
Existing client code not retrieving records.

Existing client code does not retrieve any records after you add sync parameters, and re-deploy the client.

Workaround: Update the MBO, and regenerate the code. Add the syncparamClass.save() method in the client code.

CR 691517
Adding new operations onto a mobile business object in a deployed package using the UPDATE deployment method may render client applications based on the previous package model version, nonfunctional.

Workaround: None.

CR 686043
In a disabled domain, messaging clients continue to receive messages from server.

Workaround: To disable any outbound activity to a client, lock the application connection associated with that client.

CR 576726
The full range of valid values is not supported if an attribute uses the default datatype (int) for a SQL Anywhere® database column of type unsigned int.

Workaround: To support the full range of valid values for an unsigned int attribute in the EIS, set the datatype for the corresponding MBO attribute as long.