Upgrade Aggregate Storage Outline Version

These are the steps to perform to upgrade an aggregate storage outline to Essbase 21c.

Server-based upgrade steps

  1. Note that these steps can be performed only after importing the outline.
    1. Download platform-specific Essbase 21c ESSCMDQ from Download ESSCMDQ to your target Essbase system.
    2. Unzip the files directly to the same directory where ESSCMD is present in your installation.
    3. Make a copy of the existing script:
      ./Oracle/domains/esscs/esstools/bin/startESSCMD.sh
      as
      ./Oracle/domains/esscs/esstools/bin/startESSCMDQ.sh
      Within this newly created script, change the call from:
      <Essbase_Product_Home>/products/Essbase/EssbaseServer/bin/startESSCMD.sh
      to
      <Essbase_Product_Home>/products/Essbase/EssbaseServer/bin/startESSCMDQ.sh
    4. Make a copy of the script:
      <Essbase_Product_Home>/products/Essbase/EssbaseServer/bin/startESSCMD.sh
      as:
      <Essbase_Product_Home>/products/Essbase/EssbaseServer/bin/startESSCMDQ.sh
    5. Edit
      <Essbase_Product_Home>/products/Essbase/EssbaseServer/bin/startESSCMDQ.sh
      and change the last line from
      <EssbaseBasePath>/bin/ESSCMD
      to:
      <EssbaseBasePath>/bin/ESSCMDQ
    6. Create cube directory under the database directory.
      mkdir $ARBORPATH/client/{appname}/{cubename}/cube
    7. Just before this last line, add the following lines:
      export ESSCMDQ_UTF8MODE=1
      export ESSLANG=.UTF-8@Binary
  2. After launching this script:
    <Essbase_Product_Home>/products/Essbase/EssbaseServer/bin/startESSCMDQ.sh
    execute the following commands in ESSCMDQ:
    #Login to Essbase 21c instance
    login hostname username password;
    #Download outline to client directory location.
    qgetObject3 2 1 "appname" "cubename" "outlinename" $ARBORPATH/client/{appname}/{cubename}/cube/{outlinename}.otl;
    #Specify aggregate storage appname and cubename below
    select "appname" "cubename";
    
    #Update outline version
    openotl 1 1 "appname" "cubename" "outlinename" "y" "y" 0;
    setopgversion 0 "111241";
    writeotl 0 "appname" "cubename" "outlinename"
    lockobj 1 "appname" "cubename" "outlinename";
    qPutObject3 2 1 "appname" "cubename" "outlinename" $ARBORPATH/client/{appname}/{cubename}/cube/{outlinename}.otl N;
    restructotl 1;
    closeotl 0;
    unlockobj 1 "appname" "cubename" "outlinename";
    

Note:

  1. If you get the following error while running writeotl, it can be ignored.
    WriteOtl:
    Error: Invalid location => 0
    sts: 0
  2. While executing “qgetObject3” command, you must provide the full path, which can be downloaded from server.
    qgetObject3 2 1 asos Sample Sample /scratch/12cesscs/data/client/asos/Sample/Sample.otl