NonStop SQL/MP Reference Manual
Table Of Contents
- What’s New in This Manual
- About This Manual
- A
- Access Options
- ADD DEFINE Command
- AGGREGATE Functions
- Alias
- ALLOCATE File Attribute
- ALTER CATALOG Statement
- ALTER COLLATION Statement
- ALTER DEFINE Command
- ALTER INDEX Statement
- ALTER PROGRAM Statement
- ALTER TABLE Statement
- ALTER VIEW Statement
- APPEND Command
- APPENDCANCEL Command
- APPENDRESTART Command
- AS Clause
- AS DATE/TIME Clause
- ASCII Character Set
- AUDIT File Attribute
- AUDITCOMPRESS File Attribute
- Audited Tables
- AVG Function
- B
- C
- CANCEL Command
- CASE Expression
- CAST Function
- CATALOG Command
- Catalogs
- CATALOGS Table
- CENTER_REPORT Option
- Character Data Types
- Character Expressions
- Character Sets
- CHAR_LENGTH Function
- CLEANUP Command
- CLEARONPURGE File Attribute
- CLOSE Statement
- Clustering Keys
- COLLATE Clause
- Collation Definitions
- Column Identifier
- Columns
- COLUMNS Table
- COMMENT Statement
- Comments
- COMMENTS Table
- COMMIT Option
- COMMIT WORK Statement
- Comparison Predicate
- COMPUTE_TIMESTAMP Function
- CONCAT Clause
- Concurrency
- Constraints
- CONSTRNT Table
- CONTINUE Statement
- CONTROL EXECUTOR Directive
- CONTROL QUERY Directive
- CONTROL TABLE Directive
- CONVERT Command
- CONVERTTIMESTAMP Function
- COPY Command
- Correlation Names
- COUNT Function
- CPRLSRCE Table
- CPRULES Table
- CREATE CATALOG Statement
- CREATE COLLATION Statement
- CREATE CONSTRAINT Statement
- CREATE INDEX Statement
- CREATE SYSTEM CATALOG Command
- CREATE TABLE Statement
- CREATE VIEW Statement
- CURRENT Function
- CURRENT_TIMESTAMP Function
- Cursors
- C89
- D
- Data Dictionary
- Data Types
- DATE Data Type
- DATE_FORMAT Option
- DATE-TIME Data Types
- DATE-TIME Functions
- DATE-TIME Literals
- DATEFORMAT Function
- DATETIME Data Type
- DAYOFWEEK Function
- DCL (Data Control Language) Statements
- DCOMPRESS File Attribute
- DDL (Data Definition Language) Statements
- Deadlocks
- DECIMAL_POINT Option
- DECLARE CURSOR Statement
- DEFAULT Clause
- DEFINEs
- DELETE DEFINE Command
- DELETE Statement
- DESCRIBE INPUT Statement
- DESCRIBE Statement
- Detail Alias
- DETAIL Command
- DISPLAY STATISTICS Command
- DISPLAY USE OF Command
- DISTINCT Clause
- DML (Data Manipulation Language) Statements
- DOWNGRADE CATALOG Command
- DOWNGRADE SYSTEM CATALOG Command
- DROP Statement
- DROP SYSTEM CATALOG Command
- DSL (Data Status Language) Statements
- DSLACK File Attribute
- DUP Command
- Dynamic SQL
- E
- F
- G
- H
- I
- ICOMPRESS File Attribute
- IF/THEN/ELSE Clause
- IN Predicate
- INCLUDE SQLCA Directive
- INCLUDE SQLDA Directive
- INCLUDE SQLSA Directive
- INCLUDE STRUCTURES Directive
- Index Keys
- INDEXES Table
- Indicator Variables and Indicator Parameters
- INFO DEFINE Command
- INITIALIZE SQL Command
- INSERT Statement
- INTERVAL Data Type
- INTERVAL Literals
- INVOKE Directive and Command
- ISLACK File Attribute
- J
- K
- L
- M
- N
- O
- P
- PAGE_COUNT Option
- PAGE FOOTING Command
- PAGE_LENGTH Option
- PAGE_NUMBER Function
- PAGE TITLE Command
- Parallel Index Loading
- Parameters
- PARTITION Clause
- Partitions
- PARTNS Table
- PERUSE Command
- Plans
- POSITION Function
- Predicates
- PREPARE Statement
- Primary Keys
- Print Item
- PROGID File Attribute
- Program Invalidation
- PROGRAMS Table
- Protection View
- PURGE Command
- PURGEDATA Command
- Q
- R
- RECLENGTH File Attribute
- RELEASE Statement
- REPORT FOOTING Command
- REPORT Option
- REPORT TITLE Command
- Report Writer
- Reserved Words
- RESET DEFINE Command
- RESET LAYOUT Command
- RESET PARAM Command
- RESET PREPARED Command
- RESET REPORT Command
- RESET SESSION Command
- RESET STYLE Command
- RESETBROKEN File Attribute
- RIGHT_MARGIN Option
- ROLLBACK WORK Statement
- ROWCOUNT Option
- S
- Sample Database
- SAVE Command
- Search Conditions
- SECURE Command
- SECURE File Attribute
- Security
- SELECT Statement
- SERIALWRITES File Attribute
- SET DEFINE Command
- SET DEFMODE Command
- SET LAYOUT Command
- SET PARAM Command
- SET SESSION Command
- SET STYLE Command
- SETSCALE Function
- Shorthand View
- SHOW CONTROL Command
- SHOW DEFINE Command
- SHOW DEFMODE Command
- SHOW LAYOUT Command
- SHOW PARAM Command
- SHOW PREPARED Command
- SHOW REPORT Command
- SHOW SESSION Command
- SHOW STYLE Command
- Similarity Checks
- SLACK File Attribute
- SPACE Option
- SQL Directive
- SQL Identifiers
- SQLCI
- SQLCI Commands
- SQLCODE
- SQLCOMP Command
- Standards Conformance
- Statements
- Static SQL
- Statistics
- Storage Management Foundation (SMF)
- String Functions
- String Literals
- Subqueries
- SUBSTRING Function
- SUBTOTAL Command
- SUBTOTAL_LABEL Option
- SUM Function
- Super ID
- Syskeys
- System Catalog
- SYSTEM Command
- System DEFINEs
- T
- U
- V
- W
- Z
- ! COMMAND
- =_AUDSERV_XSWAP_node DEFINE
- =_DEFAULTS DEFINE
- =_SORT_DEFAULTS DEFINE
- =_SQL_CAT_HEAP_LIMIT DEFINE
- =_SQL_CMP_DOUBLE_SBB_OFF DEFINE
- =_SQL_CMP_DOUBLE_SBB_ON DEFINE
- =_SQL_CMP_EQ_LIMIT DEFINE
- =_SQL_CMP_EVENT DEFINE
- =_SQL_CMP_EVENT_NO0 DEFINE
- =_SQL_CMP_NO_KS_MJOIN DEFINE
- =_SQL_cmp_node DEFINE
- =_SQL_EXE_DOUBLE_SHUTOFF DEFINE
- =_SQL_EXE_ESPS_CK_CMON DEFINE
- =_SQL_EXE_USE_SWAPVOL DEFINE
- =_SQL_MSG_node DEFINE
- =_SQL_RECGEN_node DEFINE
- =_SQL_TM_node_vol DEFINE
- Index

NonStop SQL/MP Reference Manual—142115
W-6
Considerations—WITH SHARED ACCESS
SQL reads catalog entries for existing objects involved in the operation (the
“source objects”) and creates any new objects for the operation with auditing
disabled. For CREATE INDEX operations, SQL also sets the
NOAUDITCOMPRESS file attribute for the table being indexed unless it is
already set. All this activity occurs in one transaction.
SQL then starts an audit fix-up process on each node that contains one or more
source objects for the operation and begins copying data from source objects to
target objects as needed. For CREATE INDEX, SQL transforms the data as
needed. All this activity occurs outside of a transaction. If EMS reporting is
turned on, the audit fix-up processes issue status messages throughout the load.
SQL starts each audit fix-up process as a named process running under the
process access ID of the user that started the WITH SHARED ACCESS
operation. However, audit fix-up processes switch to the super ID during
portions of their execution, then switch back to the initial user ID. (The audit
fix-up processes handle this change automatically, but you might notice that
these processes sometimes appear in lists of processes running under your user
ID and sometimes do not.)
After the load finishes, SQL executes a transaction that enables auditing, if it is
not already enabled, on the target objects, after which, you can take online
dumps of the target objects if necessary. (Online dumps are not necessary for
merge and move boundary requests.) If your operation uses EMS reporting, an
EMS message is issued.
2. Audit fix-up phase
The audit fix-up processes search TMF audit trails to find audit information for
the source objects and update the target objects to reflect any changes made
since the load of the corresponding records. When the updates are complete,
SQL is ready to commit the operation.
Though the target objects are audited, the changes made by the audit fix-up
processes during this phase do not occur within TMF transactions unless the
source objects have file-recovery protection (that is, if valid online dumps exist
for the source objects).
Depending on the COMMIT option in effect for the operation, SQL either
moves into the commit phase (the default), waits for the appropriate time
window in which to move into the commit phase, rolls back the operation and
terminates with an error because the time window has passed, or issues
warnings 1618 and 1619 to notify the user that the operation is ready to commit
and waits for the user to respond with a CONTINUE statement.
If the operation cannot move into the commit phase immediately (because it
must wait for a time window or a CONTINUE statement) the audit fix-up
Note. Some operations involve one source object and one target object, while others
involve many. For example, a simple move of a partition involves one source object
and one target object. However, if you create an index on a partitioned table, each
partition of the table is a source object for the operation; if the new index is itself
partitioned, each partition of the index is a target object for the operation.