************************************************************

IBM DB2 OLAP Server 7.1 
Fixpak 1 Release Notes

************************************************************
Patch file name: FIXPAK.HTM

Applies to: All platforms

Patch Date: August 2000

Identification: R6.0.0_P1
************************************************************

Important:

This fixpak is intended primarily for customers who use the multidimensional storage manger.  Users of the relational storage manger who install this fixpak might encounter problems during calculation.  If you use the relational storage manager, it is recommended that you do not install this fixpak.  The calculation problem will be fixed in a future fixpak.

If you are installing client products from a DB2 OLAP Server fixpak, you must install server products to the same fixpak level. For example, if you install a Fixpak 1 client, you must also install the Fixpak 1 server. Using older server versions with newer client versions is not recommended and is not supported.

Contents

Fixpak Installation Overview

Key

Patch Summary

Additional Support in 6.0.0 Patch 1

Problem Summary

Installing the Fixpak

Additional Documentation Copyright Information


Fixpak Installation Overview

This file describes problems corrected by one or more fixpaks for DB2 OLAP Server Version 7.1. Even if you have only one of the problems fixed in one of the patches, you need to perform a full fixpak installation. For instructions on downloading and installing the files in this fixpak, see Installing on UNIX or Installing on Windows, depending on your operating system. For more detailed information about installation, see the OLAP Setup and User's Guide.

Fixpak 1 for DB2 OLAP Server Version 7.1 is the equivalent of patch 1 for Hyperion Essbase Release 6.0.0. Hyperion Essbase patches are cumulative; each 6.0.0 patch contains new fixes, plus all the fixes for the previous patches.

This file also contains information regarding Hyperion Integration Server as it relates to DB2 OLAP Server.


Key

R6.0.0_P1 is Release 6.0.0 Patch 1 from Hyperion, which is in Fixpak 1 from IBM.

Patch Summary

Patch R6.0.0_P1

Patch 1 fixes problems on all server and client platforms.


Additional Support in 6.0.0 Patch 1

Following are the additional support that 6.0.0 Patch 1 provides:

Problem Summary

The following problems are fixed in Patch 1.

Server Ignores Formulas With Members which Contain a Dot in Their Names. (15758, P1)
The application log gives error 1200324, if you use a "." in the member name. Furthermore in Application Manager the Dimension Specification dialog box shows the error: "!!FORMULA NOT LOADED!!"

No Error Is Generated for Invalid Formulas. (15815, P1)
No Error Message is generated if member names with a dot are not quoted.

In a Calc Script, no Error Is Generated When there Is no Statement After an IF Clause. (17654, P1)
An IF statement not containing a semicolon is erroneous and the error should be reported.

Insufficient Rights to Various Essbase Tasks After Running "root.sh." (17830, P1)
After running the root.sh file, the ownership of many files are changed from "arbor" to "root." Also, some files cannot be opened; for example, the outline file.

If Multiple Threads Attempt to Use Essbase APIs Concurrently, the API May Become Unstable. (18117, P1)
Concurrent API calls may cause instability or crashes because the API is not thread safe.

In Spreadsheet Add-in, Repeat Member Labels Option May Cause Incorrect Retrieval. (18734, P1)
During retrievals the Repeat Member Labels Option, if set to true may change some of the column headers and retrieve incorrect data.

Cannot Pivot on Certain Members When Repeat Member Labels Option Is Set to True. (18738, P1)
When Repeat Member Labels option is set to true in the Spreadsheet Add-in, the pivot operation works only if mouse points to a specific cell in the target row. It gives an error for all other cells in the target row.

Incorrect Behavior if Repeat Member Labels Option Is Set to True. (18740, P1)
When the Repeat Member Labels option is set to true in the Spreadsheet Add-in, the Remove Only or Keep Only operations may not function correctly.

Status Is Returned to Cell on a Wrong Sheet After Flashback Is Called. (18802, P1)
The return value of Lotus Spreadsheet macro may be displayed on the wrong sheet after the Spreadsheet Add-in Flashback command is called.

Year-To-Date (Y-T-D) Changes When Order of Months Changes. (19073, P1)
In some cases, the Y-T-D data shown in the Spreadsheet Add-in retrieval differs when the presentation order of month columns is changed. This bug is a duplicate of 18147, Patch 11.

The Set Substitution Variable Scope Option in the Formula Editor Shows a Problem. (19160, P1)
An attempt to reconnect to the server after choosing set Substitution Variable Scope may result in an error message: "Invalid Login ID - request [List Applications] failed."

EssOtlQueryMembersEx Does not Handle Label Only Members Properly. (19207, P1)
The EssOtlQueryMembersEx API command does not return shared or label only members.

If a Member Name Is 0 in the Outline, Error: "Data item found before member" May be Displayed. (19291, P1)
While using the Spreadsheet Lock & Send feature with data set to 0 or #MISSING the error: "Data item found before member" occurs.

No Result When Member Has a Calc Script Formula that Contains Dynamic Member and Cross-Dimensional Operator. (19393, P1)
#MISSING is returned upon retrieval of a member if the value of the member is "fixed" by a calc script that contains a Dynamic Calc member. This bug is a duplicate of 17946, Patch 11.

Users who Are not Logged Into Application Manager Are not Logged Off. (19469, P1)
Users who log on to the Application Manager but do not log on to any applications are not automatically logged off after some timeout. This bug is a duplicate of bug 18482, P11.

Certain Foreign Characters May Cause the Spreadsheet Add-in to Freeze. (19479, P1)
If certain foreign characters are used in the worksheet or file name, the Spreadsheet Add-in freezes.

Using the Down Arrow Key in the Linked Reporting Objects (LRO) Causes the System to Crash. (19489, P1)
In the Spreadsheet Add-in, using the down arrow key in the LRO browser may cause the system to crash. This problem is specific to Lotus 1-2-3 R9.0 on Windows NT.

Running Currency Conversion Calc Script Crashes the Application. (19892, P1)
The Application Manager may crash when running a currency conversion calc script on a database that has attribute dimensions.

A Rules File that May Be Saved in Application Manager In DB2 OLAP Server 7.1 May not Work. (19950, P1)
When saved in DB2 OLAP Server Application Manager Release 7.1, rules file for SQL import failed.

Migrating the Database Index from DB2 OLAP Server Version 1 Format to Version 7 Format Failed with the Version 1 .PAG File Size Between 2 GB and 2 GB Minus 8 Kb. (20008, P1)
This is a boundary case that affected .pag files whose size is 2 Gb minus 8 Kb when being migrated from Version 1. Note that part of this fix imposes a maximum file size of 2147475456 bytes (2 Gb minus 8 Kb) for index and .pag files in Version 7.  Files migrated from Version 1 can be a full 2 Gb on NT and 2147483647 bytes (2 Gb - 1 byte) on UNIX.

Database Without Data May Take Long Time to Restructure. (20063, P1)
With the fix, if the database does not have data, Link Reporting Objects (LRO), or partitions defined on it, DB2 OLAP Server  will take no time to restructure.

CopyApp Command May not Function Correctly With Multibyte Characters. (20228, P1)
CopyApp command functions incorrectly if the source application name contains multibyte characters; for example, Japanese character sets such as Kanji.

If Advanced Online JFS Is not Installed, DB2 OLAP Server Will not Start on HPUX. (20319, P1)
If Essbase is using vxfs as its disk volumes and if advanced online JFS is not installed, then direct I/O will not be used, buffered I/O will be used instead. Otherwise, Direct I/O is used. This is a new behavior of DB2 OLAP Server Version 7.

Error 1200420 and 1200324: Compiler Errors on Member Formulas. (20325, P1)
Member formulas with IF, ELSEIF, and ENDIF statements may generate compilation errors and be ignored.

Performance Fixes for Formula Calculation Using Certain @IS* Functions. (20679, P1)
Fixed problem which caused performance degradation in formula calculator on cubes with large blocks; optimized @ISLev(dimName, levName | levNum),@ISGen(mbrName) functions and also, other functions from this family.

DB2 OLAP Server 7.1 May Freeze on UNIX Platforms. (20684, P1)
DB2 OLAP Server 7.1 may freeze on some faster UNIX platforms.

When the Spreadsheet Add-in Is Installed in Excel, Excel Is Unusable from Within Internet Explorer (IE) V5. (20688, P1)
When the Spreadsheet Add-in is not installed, Excel works fine within IE V5; but if the Spreadsheet Add-in is installed, basic Excel functionality does not work.

Occasionally the Server Crashes When Users Logout After Outline Synchronization. (20717, P1)
The server may occasionally crash with a "not responding" error when users logout after outline synchronization.

DB2 OLAP Server May Crash Doing CALC ALL on an Outline with Attribute Dimensions. (20727, P1)
CALC ALL on an outline with attribute dimensions may cause Hyperion Essbase to crash.


Installing the Fixpak

To install this fixpak, make sure your system has enough memory.  Then download the files that match your operating systems and national languages and begin the installation.  For complete installation instructions, see the OLAP Setup and User's Guide.

Physical Memory Requirements

When installing Hyperion Essbase OLAP Server 6.0, remember the following memory recommendations:
Minimum RAM 64 MB or greater (128 MB or greater for UNIX platform) base recommendation:

The base recommendation for running Hyperion Essbase and its sample applications is a 64 MB minimum. On UNIX platforms, base requirement is 128 MB of physical memory (256 MB recommended), and at least twice the MB of physical memory for swap space (when physical memory is less than .5 GB). Contact your system administrator or hardware vendor for optimum swap configuration. Start with the base amount of RAM for your platform, and then allocate additional memory to accommodate your applications.


Stopping Services on Windows NT before Installation

The installation program on Windows NT automatically stops the Window NT services for DB2 OLAP Server and its features before copying files.  In rare circumstances the install program might appear to freeze after displaying the message that it is stopping the services.  If this occurs, exit the installation and manually stop any DB2 OLAP Server services that are running.

To stop Windows NT services:

  1. Select Services from the Control Panel.
  2. From the Service list, select the service for DB2 OLAP Server and, if present, the service for DB2 OLAP Integration Server.
  3. Click Stop.



Installing on UNIX

To apply this fixpak, you need to download and install two files.  The first file contains upgrades for the server, SQL Interface, and API components for your UNIX operating system. The second file contains upgrades for the Application Manager, Spreadsheet Add-in, and other client components for your national language.

Downloading and Installing the UNIX Server

Download one of the following files, depending on which UNIX operating system you use, to a temporary directory on the UNIX machine on which you installed the server.
     
    Filename Contents
    aix.tar  AIX Server 
    AIX SQL Interface 
    AIX API 
    solaris.tar  Solaris Operating Environment Server 
    Solaris Operating Environment SQL Interface 
    Solaris Operating Environment API 
    hpux.tar HP-UX Server 
    HP-UX SQL Interface 
    HP-UX API 
To start the server installation:
  1. On your UNIX system, expand the server file by entering the following command:
    1. tar -xf filename.tar
    from the temporary directory containing the .tar file. This command extracts the files necessary to perform a complete installation.
  2. Run setup.sh to launch the installation program.  Follow the installation instructions in the OLAP Setup and User's Guide.
  3. After the files are expanded, you can delete the .tar file.

Downloading and Installing the Windows Client

Download one of the following files, depending on your national language, to the Windows machine on which you have installed the clients.
     
    Filename Contents National
    Languages
    wincd1.zip Application Manager 
    Spreadsheet add-in for Excel 
    Spreadsheet add-in for Lotus 1-2-3 
    SQL Drill Through 
    Japanese
    Korean
    Simplified Chinese
    Traditional Chinese 
    wincd2.zip Application Manager 
    Spreadsheet add-in for Excel 
    Spreadsheet add-in for Lotus 1-2-3 
    SQL Drill-Through 
    English
    French
    German
    Italian
    Spanish
    Brazilian Portuguese
    wincd3.zip Application Manager 
    Spreadsheet add-in for Excel 
    Spreadsheet add-in for Lotus 1-2-3 
    SQL Drill-Through 
    Danish
    Finnish
    Norwegian
    Swedish
    Czech
    Hungarian
    Russian
To start the installation:
  1. command prompt, or by double-clicking the file.
  2. Run SETUP.EXE to launch the installation program.  Follow the installation instructions in the OLAP Setup and User's Guide.  Use the Custom option to install only the clients you want.
  3. After the files are expanded, you can delete the zip file.

Installing on Windows

To apply this fixpak, you need to download one file that contains both the server and client components.  If you run your servers and clients on different machines, you can download the same file to each machine.

Downloading the Fixpak

1.  Download one of the following files, depending on your national language, to the Windows machine on which you have installed the server.  If you have installed clients on other machines, you need to download the file to those machines, too.
     
    Filename Contents National
    Languages
    wincd1.zip Application Manager 
    Spreadsheet add-in for Excel 
    Spreadsheet add-in for Lotus 1-2-3 
    SQL Drill-Through 

    Windows NT Server 
    Windows SQL Interface 
    Windows API 

    Japanese
    Korean
    Simplified Chinese
    Traditional Chinese 
    wincd2.zip Application Manager 
    Spreadsheet add-in for Excel 
    Spreadsheet add-in for Lotus 1-2-3 
    SQL Drill-Through 

    Windows NT Server 
    Windows SQL Interface 
    Windows API 

    English
    French
    German
    Italian
    Spanish
    Brazilian Portuguese
    wincd3.zip Application Manager 
    Spreadsheet add-in for Excel 
    Spreadsheet add-in for Lotus 1-2-3 
    SQL Drill-Through 

    Windows NT Server 
    Windows SQL Interface 
    Windows API 

    Danish
    Finnish
    Norwegian
    Swedish
    Czech
    Hungarian
    Russian

Starting the Installation

  1. Expand the executable file by typing the name of the file (without the extension) from a command prompt, or by double-clicking the file.
  2. Run SETUP.EXE to launch the installation program.  Follow the installation instructions in the OLAP Setup and User's Guide.  Use the Custom option to install only the server or clients you want.
  3. After the files are expanded, you can delete the zip file.

Additional Documentation

The documentation that follows refers to Hyperion Essbase instead of DB2 OLAP Server.  This is consistent with the user documentation written by Hyperion Solutions.
 

Basic Amount of RAM Needed for Most Applications

With Hyperion Essbase 6.0, you should consider starting with 0.5-1.0 GB of physical memory on the server per processor or per 50-75 concurrent users. This number can vary depending on number of users, number of concurrent batch processes, and use of memory-intensive features. See Database Administrator's Guide; Volume I, Chapter 15, "Estimating Disk and Memory Requirements for a Database ."

Memory Problems

If memory is low, the following unpredictable problems can occur: When one of the above situations occur:

Compiling Solaris Operating Environment API Programs

Solaris Operating Environment customers must create soft links to libessapi.so.1 and libessotl.so.1 in order to compile Grid API programs:


@CALCMODE Function

Function

The @CALCMODE function tells Hyperion Essbase to use the block calculation mode or the cell calculation mode when calculating formulas containing certain functions (in particular the @ISMBR function). Using block calculation mode is faster, but may introduce data dependency issues.

Using block calculation mode, Hyperion Essbase groups the cells within a block, and simultaneously calculates the cells in each group. Block calculation mode is fast, but you must carefully consider data dependencies within the block to ensure that the resulting data is accurate.

Using cell calculation mode, Hyperion Essbase calculates each cell sequentially, following the calculation order, which is based on the order of the dense dimensions in the outline. For more information on calculation order, see the Hyperion Essbase Database Administrator's Guide.

For more information on which mode Hyperion Essbase uses and on the data dependency issues, see Notes.
Syntax

@CALCMODE (CELL|BLOCK)
CELL Turns on the cell calculation mode.
BLOCK Turns on the block calculation mode.

Notes

Knowing Which Calculation Mode Hyperion Essbase Uses

Understanding Data Dependency Issues With Block Calculation Mode Data Dependency Issues With IF/ELSE and IF/ELSEIF Other Data Dependency Issues

Data dependencies can occur in formulas that do not contain IF/ELSE conditions. See Example 3 for an example of data dependency in a formula containing the @PRIOR function.

Example 1

Consider a database with two dense dimensions, Time and Accounts. The following formula is placed on the Budget Sales member of the Accounts dimension. As this is a formula containing @ISMBR applied to a dense dimension member (Budget Sales), by default Hyperion Essbase would use the cell calculation mode. However we use the @CALCMODE(BLOCK) function to specify the block calculation mode for this formula.

@CALCMODE(BLOCK);
IF(@ISMBR(Feb))
   "Budget Sales"=100;
ELSE
   "Budget Sales"=Feb+10;
According to the above formula, we expect that if the member being calculated is Feb, the Budget Sales value is 100. If the member being calculated is not Feb, the Budget Sales value is 100+10 (the value for Feb + 10).

Assume that we load the values 10, 20, and 30 into the Budget Sales data block for January (Jan), February (Feb), and March (Mar), as follows:
Jan Feb Mar
Budget Sales 10 20 30

Using block calculation mode, Hyperion Essbase calculates the members satisfying the IF condition first. In this example, Feb is the only member that satisfies the IF condition. After calculating Feb, Hyperion Essbase calculates the members Jan and Mar. In this example, the results are as expected:
Jan Feb Mar
Budget Sales 110 100 110

Example 2

Now consider the same database as in Example 1, but we place the following formula on the Budget Sales member of the Accounts dimension. As in Example 1, as this is a formula containing @ISMBR applied to a dense dimension member (Budget Sales), by default Hyperion Essbase would use the cell calculation mode. However we use the @CALCMODE (BLOCK) function to specify the block calculation mode for this formula.

@CALCMODE(BLOCK);
IF(@ISMBR(Mar))
   "Budget Sales"=Feb+20;
ELSEIF(@ISMBR(Jan))
   "Budget Sales"=Feb+10;
ELSE
   "Budget Sales"=100;
According to this formula, we want the Jan and Mar Budget Sales values to be calculated based on the Feb Budget Sales value, which is 100. We want to see the following results:
Jan Feb Mar
Budget Sales 110 100 120

Assume that we load the values 10, 20, and 30 into the Budget Sales data block for Jan, Feb, and Mar, as follows:
Jan Feb Mar
Budget Sales 10 20 30

Using block calculation mode, Hyperion Essbase calculates the members satisfying the IF condition first, followed by the members satisfying the ELSEIF condition, followed by the members satisfying the ELSE condition. In this example, Hyperion Essbase calculates the members in the following order: Mar, Jan, Feb. The results are not as we want, because the calculation of Jan and Mar is dependent on the calculation of Feb. However, Feb is calculated after Jan and Mar. The results are as follows:
Jan Feb Mar
Budget Sales 30 100 40

Example 3

The following formula calculates the members Opening Inventory and Ending Inventory using the @PRIOR function. There is a data dependency between Opening Inventory and Ending Inventory. The formula is placed on the Opening Inventory member. The example shows the results for Jan, Feb, and Mar.

@CALCMODE(BLOCK)
"Opening Inventory"=@PRIOR("Ending Inventory")+10;
"Ending Inventory"="Opening Inventory";
Before the calculation there is no data for these members (the data is #MISSING or #MI):
Jan Feb Mar
Opening Inventory #MI #MI #MI
Ending Inventory #MI #MI #MI

Using block calculation mode, Hyperion Essbase calculates the members simultaneously, taking the previous month's Ending Inventory #MISSING value as 0 for all member combinations and adding 10. This is not the required result.
Jan Feb Mar
Opening Inventory 10 10 10
Ending Inventory 10 10 10

The following formula on the Opening Inventory member causes Hyperion Essbase to use the cell calculation mode (the default for formulas containing the @PRIOR function):

"Opening Inventory"=@PRIOR("Ending Inventory")+10;
"Ending Inventory"="Opening Inventory";
The results are as follows:
Jan Feb Mar
Opening Inventory 10 20 30
Ending Inventory 10 20 30


Event 28

If your calculation performance does not improve even after tagging some dense stored (regular) members in your outline as dynamic-calc-non-store, then look for formulas in your outline or calculation script. If at least one formula contains a regular stored member that depends on a dynamic-calc-non-store member, then it is possible that EVENT 28 in the ESSBASE.CFG file can help improve the calculation times. However some of the calculation results may not be backward compatible, so your results may not match those in earlier Essbase versions.

To use this option, add the line EVENT 28 to Hyperion ESSBASE.CFG and restart Essbase.


Event 29

Essbase assumes (or implies) a shared member relationship in two situations:
  1. A parent has only one child
  2. A parent has only one child that consolidates to the parent
If you are calculating a database whose outline has implied share members and the calculation involves formulas, then in some cases implied share member values may be incorrect. If you notice such a situation you have two choices:
  1. Mark the parent as NEVER SHARE. This will trigger a dense restructure. Essbase will no longer assume the implied share relationship after the restructure.
  2. Use EVENT 29 as follows:
Upon restart, Essbase internally eliminates the implied share optimization so your formulas will return the correct results.


Copyright Information

(c) Copyright International Business Machines Corporation 1998, 2000. All Rights Reserved.
(c) Copyright 1991-2000 Hyperion Solutions Corporation. All Rights Reserved.