Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
HP.com home
Jazz home  >  Papers & Training

IMAGE/SQL enhancements in g.1

» 

Jazz home

»

Software

»

Papers & Training

»

Java

»

HP Partners

»

News & Events

»

Register for more info

Content starts here
(including TurboIMAGE/XL Enhancements)

by: Image/SQL team, Commercial Systems Division

The following subjects are covered in this document:

IMAGE/SQL G.1 will be available on the MPE/iX 5.0 Express 3 release.

What is IMAGE/SQL?


IMAGE/SQL is the next generation of TurboIMAGE/XL, a database product suite that uses relational-access technology. It is an enhanced combination of TurboIMAGE/XL and what was formerly known as ALLBASE/Turbo CONNECT (ATC). IMAGE/SQL provides relational access to your TurboIMAGE/XL data using the industry-standard Structured Query Language (SQL). While ATC only provided read capability, IMAGE/SQL includes both read and write capability using ANSI standard functionality.

Closely tuned to the architecture of Hewlett-Packard computers, IMAGE/SQL gives you flexibility in designing and using new SQL database applications. At the same time, you can continue to use your existing TurboIMAGE/XL applications without noticeable differences. Note that with IMAGE/SQL, you do not have to convert, recompile, or make changes to your existing applications. Your TurboIMAGE/XL database can now be simultaneously accessed by SQL applications as well as your existing TurboIMAGE/XL applications. With IMAGE/SQL, you can continue to enhance your existing TurboIMAGE/XL applications or develop new ones.

IMAGE/SQL includes the Client/Server components ALLBASE/PC API and ALLBASE/NET. This means that PC-based client applications using industry-standard SQL can use IMAGE/SQL to access TurboIMAGE/XL data on an HP 3000 host system. With the increased usage of PCs and rapid adoption of Client/Server technology, IMAGE/SQL extends the availability of your TurboIMAGE/XL data to report writers, 4GLs, and other applications running on a PC network.

As an IMAGE/SQL user, you benefit by:

  • Leveraging your investment

    Your existing investment in TurboIMAGE/XL is preserved while you take advantage of relational technology.

  • Accessing new tools

    Available SQL Client/Server tools allow you to view data from TurboIMAGE/XL, ALLBASE/SQL, or third-party databases.

  • Increasing your productivity

    Because SQL uses a common interface to access TurboIMAGE/XL, ALLBASE/SQL, and third-party SQL databases, your productivity will improve.


Components of IMAGE/SQL


IMAGE/SQL includes TurboIMAGE/XL, a restricted version of ALLBASE/SQL, and a database administration tool called IMAGESQL (formerly known as ATCUTIL) that links them together. The following discussion describes the components of IMAGE/SQL in more detail.

TurboIMAGE/XL
A set of programs and procedures used to create, maintain, and access TurboIMAGE/XL databases.

ALLBASE/SQL
A set of programs and procedures used to create, maintain, and access relational database environments (also known as DBEnvironments). The SQL part of IMAGE/SQL is ALLBASE/SQL, with a restriction on the the amount of data you can store in user SQL tables. IMAGE/SQL includes components needed to provide relational access to TurboIMAGE/XL databases, including the following:

ISQL lets you enter SQL statements at the keyboard and observe query results, messages, and other information on a video display. ISQL is the main tool for IMAGE/SQL programmers and database administrators to create and modify DBEnvironments, load and unload data, and enter SQL queries.

SQLUtil is a database administrator's tool for maintaining relational database environments.

SQLGEN is a database administrator's tool used to generate commands to recreate all or part of an existing database environment.

SQLMON is an online diagnostic tool used to monitor the activity of a database environment.

Preprocessors are tools used to convert C, COBOL, FORTRAN, or Pascal source programs containing SQL statements into source code that can be compiled.

ALLBASE/SQL PC API is software that provides access from a Microsoft Windows based PC to ALLBASE/SQL and TurboIMAGE/XL databases residing on HP-PA RISC database servers. You need to use one of several available PC Client/Server or decision support tools to build your application or query.

ALLBASE/NET works in conjunction with ALLBASE/SQL PC API to connect users with databases residing on an HP 3000 server.

IMAGESQL (ATCUTIL)
A database administrator's tool used to manage TurboIMAGE/XL databases in a relational-access environment. IMAGESQL registers information about a TurboIMAGE/XL database into the system catalog of an ALLBASE/SQL DBEnvironment. In IMAGE/SQL, the TurboIMAGE data sets look like SQL tables, with one exception. SQL statements that update, insert, or delete data ultimately get routed to the TurboIMAGE storage manager when TurboIMAGE data sets are referenced.

As a result, the large suite of Client/Server tools that support ALLBASE/SQL now support TurboIMAGE/XL too!

In IMAGE/SQL, the size of your TurboIMAGE databases is not restricted in any way, but you can only store 12 MegaBytes (3000 4K pages) of data in user-defined SQL tables. For an unrestricted copy of ALLBASE/SQL, you must purchase ALLBASE/SQL.


How do I get IMAGE/SQL?


IMAGE/SQL can now be purchased by TurboIMAGE/XL users. Special pricing from $2,000 to $20,000 has been established for these users. This special price is dependent on the number of users on a system and will be in effect until November 1, 1995. You must have TurboIMAGE/XL on your support contract to be eligible to purchase IMAGE/SQL.

For more information, please call your sales representative or the sales office in your region.

Special considerations


If you are updating from an earlier release of IMAGE/SQL and you have created SQL data, you must perform the ALLBASE/SQL migration to migrate your DBEnvironment to the current G.1 format. For more information, refer to the "Special Considerations" section in the ALLBASE/SQL Enhancements in G.1 document or the ALLBASE/SQL Database Administration Guide (36216-90005).

Additional information


IMAGE/SQL can be automatically installed using HP AUTOINST. The manuals included with IMAGE/SQL are:

  • Getting Started With HP IMAGE/SQL (36385-90008)
  • HP IMAGE/SQL Administration Guide (36385-90001)
  • HP PC API Users Guide for ALLBASE/SQL and IMAGE/SQL (36216-90104)
  • ALLBASE/SQL Message Manual (36216-90009)
  • ISQL Reference Manual for ALLBASE/SQL and IMAGE/SQL (36216-90096)


IMAGE/SQL enhancements in g.1


The following enhancements to IMAGE/SQL are described in this section:

Indexed access in IMAGE/SQL


The ALLBASE/SQL Optimizer is now aware of TurboIMAGE search items (including packed and zoned), key items, and third-party indexes (Bradmark's Superdex and DISC's Omnidex). The Optimizer decides which indexes to use and the proper order of operations to ensure that the most efficient path is used. As a result, data is retrieved more efficiently when a mapped column represents a TurboIMAGE search item, key item, or a third-party index. Chained reads are used whenever possible for packed and zoned search items as well. Performance gain is also present for deletes as well as updates.

For this enhancement, the newest version of software that supports this enhancement is required from both third parties.

In order to make this enhancement, modifications were made to IMAGE/SQL, TurboIMAGE, ALLBASE/SQL, and the third-party software. The following changes are briefly described below:

IMAGESQL (atcutil)


The IMAGESQL commands ATTACH, DETACH, SPLIT, and UPDATE have been modified as follows:

ATTACH

TurboIMAGE master keys, detail search items:

ATTACH will trigger registration of all TurboIMAGE master keys and detail search items as unique and non-unique indexes respectively in the DBE specified by the SET SQLDBE statement. If your database is already attached, you will need to do DETACH and ATTACH. For registering TurboIMAGE keys/search items, the ATTACH command works with one DBE at-a-time.

Third-party keys:

If your database is configured for third-party indexes (TPI) and enabled for indexing, it will attempt to register the third-party indexes as non-unique B-tree indexes in all DBEs to which the database is attached. In other words, if your database is enabled for TPI, you do not need to issue the DETACH command. You may use a temporary DBE initially to attach to it, which will cause third-party indexes to be registered in all DBEs to which the database is attached. This means that with a single ATTACH (to a new or temporary DBE), you can register third-party indexes in all DBEs to which the database is attached.

NOTE: Registering in several DBEs is a complex task. When this design issue was discussed with users, two schools of thought emerged: some users decided for one DBE, others proposed that all DBEs should be handled. It was decided to register TurboIMAGE keys and search items in the specified DBE and third-party indexes in all DBEs to which the database is attached.

Example of ATTACH:

The following sample run illustrates how the enhancement works. The database "testdb" is already configured for TPI, however, it is not attached to any DBE.

   :RUN IMAGESQL.PUB.SYS

HP36385B B.G1.04 IMAGE/SQL Utility THU, JAN 2, 1995, 5:18 PM (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1993

>>turbo testdb >>dbe maindbe DBE does not exist, do you want to create one? [Y/N]: Y Creating DBE now ... >>attach Split 3 compound source field(s) (ATCWARN 32062). Mapped 74 source table/source field name(s) (ATCWARN 32062) >>exit

END OF PROGRAM

TurboIMAGE keys/search items, as well as the third-party indexes, are now registered in the ALLBASE/SQL system catalog.

DETACH

DETACH only affects the DBE named in the SET SQLDBE statement. Information about all tables, indexes, etc. is removed from the specified DBE. It works the same way for TPI as well as for a non-TPI database.

SPLIT

SPLIT drops the table, i.e., all information about the table including the indexes, is removed from the system catalog. Information about the table, TurboIMAGE keys/search items, and third-party indexes (if any) will be added again to the ALLBASE/SQL system catalog.

This command also only affects the DBE named in the SET SQLDBE statement. If you want a similar change in other DBEs, use the SET DBE command for another DBE and use the same SPLIT command. Note that if you split a TurboIMAGE master key or a search item, it will not be registered as an index.

UPDATE TYPE

This is similar to SPLIT, however, it may deal with one or more tables as the UPDATE command is applicable to either one table or all tables in the database that have the specific type. The UPDATE TYPE command only affects the DBE named in the SET SQLDBE statement.

Dbutil (for indexed access in IMAGE/SQL)


DBUTIL is enhanced for third-party indexes. The ENABLE, DISABLE, and SHOW statements have been modified for third-party index registration (not TurboIMAGE keys/search items registration) as follows:

ENABLE database FOR INDEXING

If your database is already attached to at least one DBE and you enable it for indexing (third-party indexes must be configured before you use this command), an attempt will be made to register the third-party indexes in all DBEs to which the database is attached. If the registration fails in one DBE, it will proceed to register in subsequent existing DBEs. If such an attempt fails in one or more DBEs, upon completion of the last attempt, a message will be displayed as follows.

   Registration of Third-Party Indexes failed from these
   HP SQL DBEnvironments

The names of DBEs in which the third-party registration failed will be listed.

DISABLE database FOR INDEXING

If the third-party indexes are registered in the ALLBASE/SQL system catalog, the DISABLE database for INDEXING command will trigger removal of the third-party indexes information from all DBEs to which the database is attached. If removal of this information fails in one DBE, it will proceed with subsequent existing DBEs. If such an attempt fails in one or more DBEs, upon completion of the last attempt, a message will be displayed as follows:

   Dropping of Third-Party Indexes failed from these HP SQL
   DBEnvironments

This is followed by names of DBEs in which the dropping of third-party indexes failed.

In this case, the database will still remain ATTACHed, however, the ALLBASE/SQL Optimizer will have no knowledge of the third-party indexes. Therefore, a serial scan will be selected for the queries utilizing third-party keys. This command will not impact TurboIMAGE keys/search items, which will remain known to the Optimizer.

In brief, DETACH (of IMAGESQL) only deletes information about third-party indexes from one DBE. DISABLE (of DBUTIL) attempts to remove information on third-party indexes from all DBEs to which the database is attached, nevertheless, the database remains ATTACHED.

SHOW database FLAGS or SHOW database ALL

If the third-party indexes are registered in one or more DBEs, the FLAGS option will display a message indicating that the third-party indexes are registered. The ALL option displays all DBEs to which the database is attached, as well as the DBEs in which the third-party indexes are registered.

New system catalog views (for indexed access in IMAGE/SQL)


Four new views have been added to the ALLBASE/SQL system catalog to enable the DBA and other users to view TurboIMAGE metadata used by the SQL Optimizer. The Optimizer determines the most efficient path to the desired data, such as which indexes to use and the proper order of operations. The DBA should periodically issue an UPDATE STATISTICS command on each TurboIMAGE data set to refresh the statistics that are displayed on these views and ensure that the Optimizer makes correct decisions. After all statistics have been updated, the DBA should issue VALIDATE commands to revalidate any stored sections that may exist on the data sets.

For example:

   isql=> update statistics for table music.albums;
   isql=> update statistics for table music.composers;
   ...
   isql=> validate all modules with autocommit;
   isql=> validate all procedures with autocommit;

For more information, please see the Maintenance chapter of the ALLBASE/SQL Database Administration Guide. The MPE/iX part number is 35216-90005.

SYSTEM.IMAGEKEY and CATALOG.IMAGEKEY

The DBA can view all TurboIMAGE keys associated with a database by examining SYSTEM.IMAGEKEY. Other users can view the TurboIMAGE keys to which they have access by examining CATALOG.IMAGEKEY. For example, the DBA can issue:

   isql => select * from system.imagekey;
   --------------------+--------------------+--------------------+------+----
   INDEXNAME           |TABLENAME           |OWNER               |UNIQUE| ...
   --------------------+--------------------+--------------------+------+----
   ALBUMCODE_M1        |ALBUMS              |MUSIC               |     1| ...
   COMPOSERNAME_M1     |COMPOSERS           |MUSIC               |     1| ...
   SELECTIONNAME_A1    |SELECTIONS_A        |MUSIC               |     1| ...
   ALBUMCODE_D1        |SELECTIONS          |MUSIC               |     0| ...
   SELECTIONNAME_D2    |SELECTIONS          |MUSIC               |     0| ...
   COMPOSERNAME_D3     |SELECTIONS          |MUSIC               |     0| ...
   ALBUMCODE_D1        |LOG                 |MUSIC               |     0| ...
   SELECTIONNAME_D2    |LOG                 |MUSIC               |     0| ...

The following columns exist in both SYSTEM.IMAGEKEY and CATALOG.IMAGEKEY (PRIMARIES, SCCCOUNT, and DCCCOUNT are not calculated or used in G.1):

INDEXNAME
Name of the TurboIMAGE item, plus a suffix.

The following suffixes are used by IMAGESQL:

  • _M1 is used when registering manual master keys.
  • _A1 is used when registering automatic master keys.
  • _Dn is used when registering search keys on detail data sets (where n can be 1 to 16, depending on the path number of keys.)

TABLENAME
Name of the TurboIMAGE data set on which the key is defined.

OWNER
Name of the TurboIMAGE database (or the owner name used during the ATTACH) on which the key is defined.

UNIQUE
Uniqueness indicator:
  • 0 if duplicates are allowed, i.e., the index is not unique.
  • 1 if duplicates are not allowed, i.e., the key is unique.

Keys on master data sets (both automatic and manual) are always unique, except keys defined on P and Z (decimal) data types. Search items on detail data sets are always non-unique.

NUMC
Number of columns in the index. NUMC is always 1.

COLNUMS
A vector of 16 SYSTEM.COLUMN entries, which identifies the column numbers that make up the key. In ISQL, each column number is displayed as a field of 4 hexadecimal digits.

NDISTINCT
Number of distinct key values.

PRIMARIES
Number of primary slots used.

SCCCOUNT
Synonym Chain Cluster Count, which is a measure of how well the data is clustered on pages as the synonym chain (also known as the secondary chain) is traversed.

DCCCOUNT
Detail Chain Cluster Count, which is a measure of how well the data is clustered on pages as the detail chain is traversed.

SYSTEM.TPINDEX and CATALOG.TPINDEX

The DBA can view all third-party indexes (TPIs) associated with a database by examining SYSTEM.TPINDEX. Other users can view the TPIs to which they have access by examining CATALOG.TPINDEX. For example, the DBA can issue:

   isql => select * from system.tpindex;
   --------------------+--------------------+--------------------+------+----
   INDEXNAME           |TABLENAME           |OWNER               |UNIQUE| ...
   --------------------+--------------------+--------------------+------+----
   ALBUMCODE_T1        |SELECTIONS          |MUSIC               |     0| ...

The following columns exist in both SYSTEM.TPINDEX and CATALOG.TPINDEX (NPAGES, NLEVELS, NLEAVES, NDISTINCT, NFIRST, NPERKEY, and CCOUNT are not calculated or used in G.1):

INDEXNAME
Name of the third-party index.

The following suffix is used by IMAGESQL when registering third-party indexes:

  • _Tn (Where n can be 1 to 400 depending on the TPIs that exist on the database.)

TABLENAME
Name of the data set on which the TPI is defined.

OWNER
Name of the TurboIMAGE database (or the owner name used during the ATTACH) on which the TPI is defined.

UNIQUE
Uniqueness indicator:
  • 0 if duplicates are allowed, i.e., the index is not unique.
  • 1 if duplicates are not allowed, i.e., the index is unique.

TPIs are always registered as non-unique.

CLUSTER
Clustering indicator:
  • 0 if the index is not a clustering index.
  • 1 if the index is a clustering index.

TPIs are always registered as non-clustering.

NUMC
Number of columns in the index.

COLNUMS
A vector of 16 SYSTEM.COLUMN entries, which identifies the column numbers that make up the index. In ISQL, each column number is displayed as a field of 4 hexadecimal digits.

NPAGES
Number of pages containing the index.

NLEVELS
Number of levels in the B-tree index.

NLEAVES
Number of leaf pages in the B-tree index.

NDISTINCT
Number of distinct key values.

NFIRST
Number of distinct first key values.

NPERKEY
Number of pages per key.

CCOUNT
Cluster count, which indicates how well the data of the index are sorted:
  • 0 before first UPDATE STATISTICS statement is processed.
  • n (efficiency of clustering). Best clustering if n=NPAGES of table indexed; Worst if n=NROWS of table indexed.

CTIME
Time of creation: yyyymmddhhsstt.

COLDIRS
A vector of 16 direction entries, which indicates the direction of the corresponding column in the index definition. In ISQL, each column number is displayed as a field of 4 hexadecimal digits.
  • 5 Ascending.
  • 6 Descending.

Security enhancements (IMAGE/SQL enhancements in g.1)


ADD USER and UPDATE USER

The ADD USER and UPDATE USER commands in the IMAGESQL utility have been enhanced to allow the user class as a parameter. This method allows any reserved word and/or special character including a semicolon to be used as the TurboIMAGE password. Password remains as an optional parameter for backward compatibility.

New syntax:

   AD[D] USER user[@account] WITH  {CLASS=classnumber} [,MODE=modenum]
                                   {PASS=password    }

   U[PDATE] USER user[@account] TO {CLASS=classnumber} |,...|
                                   {PASS=password    }
                                   {MODE=modenum     }

DISPLAY USER

The DISPLAY USER command has been enhanced to
  • display the OWNER NAME as in the DISPLAY MAP command.
  • allow a user who is not the database creator to show user information without displaying passwords. Passwords are displayed only for the database creator (DBC).

Other enhancements (IMAGE/SQL enhancements in g.1)


Predicate Level Locking

To promote a high level of concurrency, predicate level locking is used whenever possible. Only records containing qualified criteria are locked.

Packed Decimal

IMAGE/SQL has been enhanced to support IMAGE packed decimal from P16 to P28 data types.

TABLE as Database and Data Set Name

IMAGE/SQL has been enhanced to allow TABLE as the database name for the SET TURBODB command and as a data set name for the DISPLAY MAP command.

String Concatenation

String concatenation will be allowed by using two vertical bars between strings.

MULTI-CONNECT

The MULTI-CONNECT feature (available in ALLBASE/SQL) is now also available in IMAGE/SQL. This feature enables you to simultaneously connect to more than one database environment.


TurboIMAGE/XL enhancements


The MPE/iX 5.0 Express 3 release also includes significant enhancements to TurboIMAGE/XL, a major component of IMAGE/SQL. Many of these enhancements were requested by TurboIMAGE/XL users. The following enhancements are described in this section:

Jumbo data sets


This enhancement allows IMAGE users to create data sets greater than 4GBytes in size. A data set of this type, called a Jumbo data set, can span more than one MPE file. The naming convention uses POSIX extensions, e.g., a data set named SALES03 with four multiple files will result in a total of five files with the following filecodes and names:

   SALES03             filecode -408
   SALESO3.001         filecode -409
   SALESO3.002         filecode -409
   SALESO3.003         filecode -409
   SALESO3.004         filecode -409

SALES03 is the Chunk Control file. It has information about the other files, but no user data of its own. The remaining files in the data set are called Chunk Data files or chunks.

To specify a Jumbo data set, the $CONTROL JUMBO statement must be included in the schema before any data sets. Then any data set whose capacity is greater than 4GB will automatically become a Jumbo data set. If the $CONTROL JUMBO command is not specified, an error is generated for data sets exceeding the 4GB limit. The $CONTROL NOJUMBO command can be used for turning off the Jumbo feature in DBSCHEMA.

The impact of this enhancement on various utilities is described below:

DBUTIL

The DBUTIL command allows detaching a given database from all DBEs to which the database is attached. The SHOW command is used to indicate the presence of Jumbo data sets in a database. The CREATE command is used to create the required chunk control and chunk data files. The MOVE command enables the user to move either the chunk control file or a specific chunk data file to a different device. Also, the new command is DETACH dbname ALL.

DBSTORE

DBSTORE will not store a Jumbo data set. The STORE command must be used for this purpose. Also, POSIX names must be specified, e.g., STORE ./SALES@.

IMAGE Intrinsics

There is no impact on the externals of any IMAGE intrinsics other than new error codes generated by the Jumbo data set enhancement. There are two new DBINFO modes, 206 and 207. Mode 206 (short format) gives the number of chunks in a data set. Mode 207 (long format) identifies the size of each chunk in terms of IMAGE records in addition to providing the number of chunks.

DBINFO Buffer Layout

The following is the DBINFO buffer layout for the new modes:

DBINFO mode 206
-------------------------------------------------------------
Element | Contents
-------------------------------------------------------------
    1   | number of chunks in a Jumbo data set
-------------------------------------------------------------
Note: if the data set is not a Jumbo data set, the value is 0.

DBINFO mode 207
-------------------------------------------------------------
Element | Contents
-------------------------------------------------------------
    1   | number of chunks in a Jumbo data set
    2   | 0
   3-4  | Size of chunk 1 (# entries, not # of blocks!)
   5-6  | Size of chunk 2 (# entries, not # of blocks!)
   7-8  | . . .
 2n + 3 | Size of chunk n (# entries, not # of blocks!)
-------------------------------------------------------------
Total size: (n + 1) * 4 bytes.

If the data set is not a Jumbo data set, then zeros will be returned in the first 4 bytes of the buffer.

Backward Compatibility

Compatibility issues can only occur when Jumbo data sets are created. When Jumbo data sets exist, earlier versions of IMAGE will not be able to open the database. (IMAGE version less than C.06.00) The IMAGE database version, in the root file, for databases with Jumbo data sets will be C03, whereas the version will be C02 without Jumbo data sets.

Jumbo Data Sets and Dynamic Data Set Expansion

At the present time, Jumbo data sets do not work with Dynamic Data Set Expansion. DBSCHEMA has a check to prevent this. The requirement for these two to work together is recognized by HP.

Limits

The number of chunks is currently limited to 99. However, users are not likely to reach this limit unless chunks are very small. The maximum block number will be the main limiting factor for the number of chunks, as this limits the size of a Jumbo data set to approximately 40GB, or about 10 chunks. Under normal circumstances, each Chunk Data file, except the last one, will be about 4GB.

Error message enhancements (TurboIMAGE/XL enhancements)


Broken Chain Error
The existing error message is:

   BROKEN CHAIN - FORWARD AND BACKWARD POINTERS NOT CONSISTENT

The new error message is:

   BROKEN FORWARD CHAIN: SET # PATH # ENTRY # #
   BROKEN BACKWARD CHAIN: SET # PATH # ENTRY # #

Due to current restrictions on DBERROR, the 32-bit entry number will be split into two 16-bit numbers in the display. If the DBGET is first in the chain, the entry number will be 0 0.

The status register values are:

   Status 16-bit Word  0    -->  Condition Code
                       1    -->  Set Number
                       2-3  -->  Record #
                       4    -->  0 - Forward, 1 - Backward
                       5    -->  Path #
                       6-7  -->  Address of Base
                       8-9  -->  Forward or Backward Record #
                                 (Mode 5 - FWD, 6 - BWD)

Bad Record Pointer Error
This error is returned under the following circumstances:
  • DBGET mode 5 - when the user has just done a DBFIND and the forward chain pointer in the master record is invalid and outside of the detail data sets capacity.
  • DBGET mode 6 - when the user has just done a DBFIND and the backward chain pointer in the master record is invalid and outside of the detail data sets capacity.

The existing error message is:

   INTERNAL TURBOIMAGE ERROR RETURNED ( -0307 )

The new error message is:

   Bad record pointer for path 1 in set 3

The status register values are:

   Status 16-bit Word  0    -->  Condition Code
                       1    -->  Path #
                       2-3  -->  Record #
                       4    -->  0
                       5    -->  Acc. Mode, PCODE
                       6-7  -->  Address of Base
                       8    -->  Mode of Intrinsic
                       9    -->  Set #

No Chain Head Error
This error is returned under the following circumstances:
  • DBPUT into a detail with no corresponding manual master entry.
  • CIUPDATE into a chain with no corresponding manual master entry.

For DBPUT, the existing error message is:

   No chain head (master entry) for path 1
The new message is:
   No chain head (master entry) for path 1 in set 3

For DBUPDATE, the existing error message is:

   DBUPDATE: No chain head (master entry) for path 1
The new message is:
   DBUPDATE: No chain head (master entry) for path 1 in set 3.

The status register will have one change in each case:

For DBPUT,
   Previously unused, status word 1 = Set number

For DBUPDATE,
   Previously unused, status word 3 = Set number

Lost Space in Dataset (A TurboIMAGE Abort)
The existing error message is:

   LOST FREE SPACE IN DATA SET #.

The error message is unchanged for master data sets:

   LOST FREE SPACE IN DATA SET #.

But for detail data sets, the new error message is as follows:

   LOST FREE SPACE IN SET #, ENTRY # ACTIVE.

Other enhancements (TurboIMAGE/XL enhancements)


Enhanced Database Integrity

The DBPUT and DBUPDATE commands check the integrity of neighboring entries to detect possible data corruption before inserting into a chain.

DBUTIL

DBUTIL is now a native-mode program.

DBSCHEMA

DBSCHEMA is now a native-mode program.

DBRECOV

DBRECOV has been enhanced to support significantly larger logging cycles. Internal tables have been expanded to accommodate larger log cycles.

Page last updated on July 28, 1995
Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 2004 Hewlett-Packard Development Company, L.P.