HPlogo Communicator e3000 MPE/iX Express 1 Based on Release 7.0 > Chapter 6 Technical Articles

Limits in TurboIMAGE/iX

MPE documents

Complete PDF
Table of Contents
Index

By Shobha Pradeep, Nirmala
Commercial Systems Division

Overview

Customers have often expressed the need for increased capacity for some of the elements in TurboIMAGE/iX such as, number of items, number of datasets, number of paths, capacities, etc. This article describes the limits in TurboIMAGE/iX that have been increased.

The following sections describe which elements have increased limits and by how much.

Current Limitations
  1. Number of items that the user can currently define in a database - 1023

  2. Number of sets per database - 199

  3. Number of paths for each master to detail - 16

New Limits


IMAGE and IMAGE/SQL have been enhanced so that the new limits for the above elements are as follows:.
  1. Number of items - 1200

  2. Number of sets - 240
    Naming the datasets:
    Each database can contain up to 240 datasets. Each dataset is referenced by a unique dataset name. If the root file name is XXXX, the first dataset defined in schema will be XXXX01, the second dataset will be XXXX02, etc. up to XXXXO0. As earlier, any of these datasets can be a Jumbo dataset and any of these datasets can be expanded by using the capacity expansion in the schema, (if it is not Jumbo).

  3. Number of paths for master - 64
    The number of paths per master has been extended from 16 to 64. Note that this is only for master data sets.

Compatibility

Any new databases created will have the benefit of these increased limits. However the new limits will not be applicable for databases created prior to this version of TurboIMAGE/iX. Databases created prior to this will continue to function the same, as there is full forward compatibility.

DBSCHEMA changes:

A database with any one of the above new limits will have the 'root version' as C5.DBSchema has been enhanced to support the new limits.

DBUTIL changes:

New flag in DBUTIL, when enabled, will return an error message if the buffer returned in DBINFO exceeds the old limit. This flag is disabled by default, and is introduced mainly for debugging purposes. To enable this flag, use the enable command in DBUTIL >>ENABLE dbname FOR OLDINFOLIMITS

DBINFO changes:

DBINFO modes 103, 203, 204, 301 have been modified to add the following check. If the flag is enabled and if the limit exceeds the earlier limits, for instance in DBINFO mode 103, if the number of items > 1023 and flag in DBUTIL is enabled, an error message is displayed which says "Data returned by DBINFO may overrun the buffer of the application." So, before calling DBINFO modes 103, 203, 204, 301 be sure that the buffersize allocated is sufficient to hold the data returned in view of the increased limits. Or else, DBINFO buffer may be overwritten resulting in erroneous information. DBINFO has been modified to return information on various features used by the database. Now DBINFO Mode 406 will return in the buffer element # 17 the various features used in the database. The bit # needs to be interpreted as below:

Bit # Vaule/Description
09 1: Database uses new limits
(# of sets = 240, # of items =1200, # paths permaster = 64)

0: Database uses old limits
(# of sets = 199, # ofitems = 1023, #paths per master= 16)

DBCONTROL changes:

A new mode, 20, has been introduced in DBCONTROL, by which users can indicate to TurboIMAGE/iX that the application program is aware of increased buffer requirements for certain DBINFO calls on databases with new limits.

SYNTAX: DBCONTROL(base,qualifier,mode,status) where

baseis the name of the array used as the base parameter when opening the database. The first element of the array must contain the base ID returned by DBOPEN.
qualifierignored for mode 20
modeshould be 20 for the above mentioned functionality. Mode 20 tells TurboIMAGE/iX that the user is aware of increased buffer requirements for certain DBINFO modes (like 103,203,204,301) for databases with new limits.This mode would cause the above mentioned DBINFO modes to skip the check for database with new limits. This mode would be in effect for the current user only.
statusis the name of the array of 10 halfwords in which TurboIMAGE/iX returns status information.

If oldinfolimits flag is set through DBUTIL and you are sure that the buffer sizes are enough for the new limits, use dbcontrol mode 20 to disable the flag.

Usage


Creating the database and using it continues to be the same. The new definitions of items, sets, paths has to be in the schema after which a database is created using DBUTIL. The number of paths from master to detail alone can be up to 64 but from detail to master remains at 16 only. Sample schema processor output is shown below.

When a new database is created and the size of the buffer allocated in an application is not enough for DBINFO, it may return erroneous results.

A new flag has been set in DBUTIL which is disabled by default. If this flag is enabled, and if the buffer size passed to DBINFO is less than needed, an error message is returned which hints to the user to increase the buffer and try again.

Storing and restoring databases with new limits: no changes to DBSTORE and DBRESTORE utilities because of the increased limits.

IMAGE/SQL

IMAGE/SQL is now capable of attaching the database with increased limits to a dbe and performing the same kinds of manipulation as before.

When a user is moving from B.G2.xx or B.G3.xx to B.G4.04 version of IMAGE/SQL, the user needs to migrate. This can be done with the help of IMAGESQL.PUB.SYS MIGRATE command. For example:

>>IMAGESQL.PUB.SYS
>>SET SQLDBE mydbe
>>MIGRATE

Sample schema processor output

Sample schema processor summary information for a database with 240 sets, 1200 items and 64 paths. In this example, tma001 - tma174 are masters, tma025 is an Automatic master and the rest are manual masters, tma175 - tma240 are detail datasets. item025 in dataset tma025 is linked to item025 in datasets tma175 and tma176. item001 in dataset tma001 has 64 paths, i.e., from tma177 to tma240

 NAME              CNT  CT  LGTH  REC  CAPACITY        FAC  LGTH SPACE 
   TMA001            M  2    64  6     395  10          1    396  48
   TMA002            M  229  0   505   510  10          1    511  48
   TMA003            M  21   0   47    52   10          6    313  16
   TMA004            M  22   0   50    55   10          6    331  16
   TMA005            M  30   0   66    71   10          5    356  16
   TMA006            M  37   0   84    89   10          4    357  16
   TMA007            M  36   0   77    82   10          6    493  16
   TMA008            M  50   0   111   116  10          4    465  16
   TMA009            M  31   0   69    74   10          5    371  16
   TMA010            M  41   0   92    97   10          5    486  16
   .   .   .
   TMA025            A  1    2   1     18   100         28   506  32
   .   .   .
   TMA229            D  2    1   4     8    10          10   81   16
   TMA230            D  2    1   4     8    10          10   81   16
   TMA231            D  2    1   5     9    10          10   91   16
   TMA232            D  2    1   5     9    10          10   91   16
   TMA233            D  2    1   5     9    10          10   91   16
   TMA234            D  2    1   6     10   10          10   101  16
   TMA235            D  2    1   6     10   10          10   101  16
   TMA236            D  2    1   6     10   10          10   101  16
   TMA237            D  2    1   6     10   10          10   101  16
   TMA238            D  2    1   4     8    10          10   81   16
   TMA239            D  2    1   4     8    10          10   81   16
   TMA240            D  2    1   5     9    10          10   91   16
                               TOTAL DISC SECTORS INCLUDING ROOT: 4464

   NUMBER OF ERROR MESSAGES: 0
   ITEM NAME COUNT: 1200    DATA SET COUNT: 240
   ROOT LENGTH: 30568       BUFFER LENGTH: 511     TRAILER LENGTH: 505

   ROOT FILE LIMPT  CREATED.

   END OF PROGRAM
 

Availability

The following versions of TurboIMAGE/iX and IMAGE/SQL support the increased limits for datasets, items and paths and are available on MPE/iX version 6.5 Express2 and later.

TurboIMAGE/iX : C.09.02
IMAGE/SQL : B.G4.04




MPE/iX Release 6.5 Supports >3.75 GBs of Memory


Business BASIC and the TurboIMAGE/iX Limits Increase