Migrating from Sybase CEP R2, Coral8 5.5 or Coral8 5.6 to Sybase CEP R4

Migration steps for migrating from Sybase CEP R2, Coral8 5.5 or Coral8 5.6 to Sybase CEP R4.

Before starting your migration, familiarize yourself with these prerequisites and recommendations:

Migrating from Coral8 to Sub-capacity Environments

If you are migrating from Coral8 and need to run Sybase CEP on machines with a core capacity that exceeds your licensed cores, please contact Sybase Customer Service for assistance. Customer Service will confirm your eligibility to receive supplemental licenses permitting Sybase CEP to operate successfully in such an environment. Please note that you will be required to limit your use of Sybase CEP to the number of licensed cores specified in your Sybase contracts.

The Coral8 Engine can run on servers where the total number of cores exceeds the number of licensed cores. In such cases, the Coral8 Engine establishes an affinity to a subset of the server’s cores so that only the number of licensed cores is used. The Coral8 Engine determines the number of licensed cores from the Coral8 license file. Check your coral8-server.conf file to see if the ProcessorAffinity parameter is set. If it is, then this situation applies to you.

Sybase CEP license checking works differently than license checking in the Coral8 Engine. The Sybase CEP license check fails if it finds that the number of licensed cores falls below the total number of cores. Use the cpuinfo utility provided with Sybase CEP to determine the total number of actual cores and licenses expected by Sybase CEP. Refer to this sample output from the utility (emphasis added):

% $SYBASE_C8/server/SYSAM-2_0/bin/cpuinfo
Detected 32 logical processors, 8 cores, in 1 chip
On such a machine, Sybase CEP attempts to check out eight cores of licenses on startup. If the license check fails, Sybase CEP shuts down.
Note: Sybase CEP has a thirty day installation grace period which can mask license issues. During this period, Sybase CEP does not shut down upon failure of the license check, so review your Sybase CEP log file for license messages immediately following migration.

To proceed with a migration from Coral8 to a Sybase CEP environment that has a core capacity exceeding your licensed cores, first open a case with Sybase Customer Service to check your eligibility for supplemental licenses for your Sybase CEP products. If eligible, you will be provided with supplemental licenses that will enable the Sybase CEP license check to succeed.

Second, for compliance purposes, limit the actual number of cores Sybase CEP will use for processing to the number of cores specified in your license agreements with Sybase. To limit the cores Sybase CEP uses, configure the ProcessorAffinity parameter in the Sybase CEP c8-server.conf configuration file of each server. The parameter specifies which cores to leverage by number, starting with 0. Here is an example that restricts Sybase CEP to use just the first two cores on a machine for processing:

<preference name="ProcessorAffinity" value="0,1"/>

After setting the parameter, run a command such as top to verify that the c8_server processes only use the cores to which they are bound.

Configuration Files: Server

Compare your existing server configuration files to the new Sybase CEP R4 files. If you have made few modifications to your existing Coral8 5.5/Coral8 5.6/ Sybase CEP R2 files, you may edit the Sybase CEP R4 files to reflect the previous customizations and skip the steps below. Also, change preference paths from Coral8/... to C8/.... However, if the modifications to the server configuration files are significant, follow the steps below.

To retain your Server settings from Coral8 5.5/Coral8 5.6/Sybase CEP R2:

  1. Copy the files in the Coral8 5.5/Coral8 5.6/Sybase CEP R2 Server configuration directory (for example, C:\Program Files\Coral8\Server\conf) to a temporary location.
  2. Go to the temporary location and rename all the files from coral8-… to c8-….
  3. For each renamed file:
    1. Change any XML namespaces containing www.coral8.com to www.sybase.com, and schema.coral8.com to schema.sybase.com.
    2. Change configuration section names containing Coral8/… to C8/….
    3. Update directory paths referring to Coral8 to reflect the Sybase CEP R4 install directory.
    4. Change any service names starting with Coral8… to C8….
  4. Copy the updated configuration files to the Sybase CEP R4 Server configuration directory (C:\Program Files\SybaseC8\Server\conf) to overwrite the default configuration files.
    Important: Install Sybase CEP R4 the same as Coral8 5.5/Coral8 5.6 (container or manager). For example, if Coral8 was installed as a container, install Sybase CEP as a container also.

Configuration Files: Studio

Prerequisites
Installation of Sybase CEP R4 is complete.
Task

To retain your Studio settings from Coral8 5.5/Coral8 5.6/Sybase CEP R2:

  1. Locate the Coral8 Studio preferences file studio-preferences.xml (for example, C:\Documents and Settings\<user-name>\My Documents\Coral8 Repository\5.6) and copy it over to the Sybase CEP R4 repository (for example, C:\Documents and Settings\<user-name>\My Documents\SybaseC8Repository\4.0).
  2. Edit the copied preferences file:
    1. Change the XML namespace from http://schema.coral8.com/preference/2004/05 to http://schema.sybase.com/preference/2004/05.
    2. Update the preference name prefixes from Coral8/… to C8/….
    3. Update any preferences that reference the Coral8 repository path (for example, C:\Documents and Settings\<user-name>\My Documents\Coral8 Repository\5.6) to use the Sybase CEP R4 repository path (for example, C:\Documents and Settings\<user-name>\My Documents\SybaseC8Repository\4.0).
  3. To retain your workspace settings:
    1. Copy the files ending in “.cce” from the Coral8 repository (for example, C:\Documents and Settings\<user-name>\My Documents\Coral8 Repository\5.6) to the Sybase CEP R4 repository (for example, C:\Documents and Settings\<user-name>\My Documents\SybaseC8Repository\4.0).
    2. For each copied file, change the XML namespace from http://www.coral8.com/cpl/2004/04/ to http://www.sybase.com/cpl/2004/04/.
    Note that the migrated Studio and workspace settings may have dependencies on projects being migrated as well.

License File

The existing Coral8 5.5/Coral8 5.6/Sybase CEP R2 license files cannot be used with Sybase CEP R4. Obtain a new license file from the Sybase Product Download Center, and follow the provided installation instructions.

Projects

Prerequisites
Installation of Sybase CEP R4 is complete.
Task

Migrate your Coral8 5.5/Coral8 5.6/Sybase CEP R2 projects over to Sybase CEP R4:

  1. Locate your Coral8 5.5/Coral8 5.6/Sybase CEP R2 project directories (for example, C:\Documents and Settings\<user-name>\My Documents\Coral8 Repository\5.6) and copy these directories to the Sybase CEP R4 repository (for example, C:\Documents and Settings\<user-name>\My Documents\SybaseC8Repository\4.0).
  2. For each copied project, edit the .ccp file and change the XML namespace from http://www.coral8.com/cpl/2004/04/ to http://www.sybase.com/cpl/2004/04/.
  3. Repeat step 2 for any .ccl and .ccs files located in the modules and schemas subdirectories.
  4. Recompile the project to build new ccx so the project is ready for execution.
    Note: If your projects use custom adapters, refer to the section on SDK Applications and Adapters for additional steps required to migrate your custom adapters.

SDK Applications and Adapters

To facilitate migration, Sybase CEP R4 provides wrappers that allow applications and adapters written using the Coral8 5.5/Coral8 5.6/Sybase CEP R2 SDKs to function with Sybase CEP R4 without any code changes. The migration instructions for each SDK are given below.

SDK Applications and Adapters

Migration instructions for applications and adapters written using Coral8 5.5/Coral8 5.6/Sybase CEP R2 SDKs.

SDK Prerequisites Migration Instructions
C/C++ Installation of Sybase CEP R4 is complete.

Adapters and applications written using the /Coral8 5.6/ C/C++ SDK do not require any code changes to work with Sybase CEP R4. However, a recompile against the Sybase CEP R4 libraries is required.

For in-process adapters, a simple update of the .adl files is required.

  • Copy the .adl files for your custom adapters located in the /Coral8 5.6/ Studio plug-ins directory (for example, C:\Program Files\Coral8\Studio\plug-ins) over to the Sybase CEP R4 Studio plug-ins directory (for example, C:\Program Files\SybaseC8\Studio\plug-ins).
  • Edit each copied .adl file and change the XML namespace from http://www.coral8.com/adl/2005/07/ to http://www.sybase.com/adl/2005/07/, and http://www.coral8.com/cpx/2004/03/ to http://www.sybase.com/cpx/2004/03/.

Your custom in-process adapters are now listed in Sybase CEP R4 Studio.

Java 1.5 SDK Installation of Sybase CEP R4 is complete.

Adapters and applications written using the Coral8 5.5/ Coral8 5.6/Sybase CEP R2 Java 1.5 SDK do not require any code changes to work with Sybase CEP R4. However, a recompile against the Sybase CEP R4 libraries is required.

Ensure that your Java classpath is referring to the c8-sdk-java5.jar included with Sybase CEP R4.

Java 1.4 SDK Installation of Sybase CEP R4 is complete.

The Coral8 5.5/Coral8 5.6/Sybase CEP R2 Java 1.4 SDK is not supported by Sybase CEP R4. Adapters written using the Coral8 5.5/Coral8 5.6/Sybase CEP R2 Java 1.4 SDK need to be updated to call into the Sybase CEP R4 Java 1.5 SDK APIs.

However, a recompile against the Sybase CEP R4 libraries is required.

.NET 3.5 SDK Installation of Sybase CEP R4 is complete.

Adapters and applications written using the Coral8 .NET 3.5 do not require any code changes to work with Sybase CEP R4. However, a recompile against the Sybase CEP R4 libraries is required.

Ensure that your executable is referring to c8-4.0.0.dll included with Sybase CEP R4 instead of the Coral8 5.5/Coral8 5.6/Sybase CEP R2 Coral8.dll.

.NET 2.0 SDK Installation of Sybase CEP R4Sybase CEP R4 is complete.

The Coral8 5.5/Coral8 5.6/Sybase CEP R2 .NET 2.0 SDK is not supported by Sybase CEP R4. Adapters written using the Coral8 5.5/Coral8 5.6/Sybase CEP R2 .NET 2.0 SDK need to be updated to call into the Sybase CEP R4 .NET 3.5 SDK APIs.

Also, a recompile against the Sybase CEP R4 libraries is required.

Flex SDK Installation of Sybase CEP R4 is complete.

Applications written using the Coral8 5.5/Coral8 5.6/Sybase CEP R2 Flex SDK do not require any code changes to work with Sybase CEP R4. However, a recompile against the Sybase CEP R4 libraries is required.

Reference the Flex SDK source included with Sybase CEP R4.

Perl SDK Installation of Sybase CEP R4 is complete.

Applications written using the Coral8 5.6/Sybase CEP R2 do not require any code changes to work with Sybase CEP R4. However, a recompile against the Sybase CEP R4 libraries is required.

Reference the module (C8.pm) included with Sybase CEP R4.

Python SDK Installation of Sybase CEP R4 is complete.

Applications written using the Coral8 5.5/Coral8 5.6/Sybase CEP R2 Python SDK do not require any code changes to work with Sybase CEP R4. However, a recompile against the Sybase CEP R4 libraries is required.

Update the PYTHONPATH to refer to the Python SDK directory in the installation (for example, C:\Program Files\SybaseC8\Server\sdk\python).

Migrating User-Defined Functions

Prerequisites
Installation of Sybase CEP R4 is complete.
Task
To migrate user-defined functions (UDFs) written for Coral8 5.5/Coral8 5.6/Sybase CEP R2 SDK to work with Sybase CEP R4:
  1. Recompile your UDF code against the Sybase CEP R4 libraries, and copy the library files over to the Sybase CEP R4 Server "bin" directory.
  2. Copy the .udf files for your user-defined functions from the Coral8 5.5/Coral8 5.6/Sybase CEP R2 Studio “plugins” directory (for example, C:\Program Files\Coral8\Studio\plug-ins) over to the Sybase CEP R4 Studio “plugins” directory (for example, C:\Program Files\SybaseC8\Studio\plug-ins) and Sybase CEP R4 Server "plugins" directory.
  3. Edit each copied .udf file and change the XML namespaces from http://www.coral8.com/udf/2005/04/ to http://www.sybase.com/udf/2005/04/, and from http://www.coral8.com/cpx/2005/04/ to http://www.sybase.com/cpx/2005/04/.