Consultor Eletrônico



Kbase P94453: What are the limitations of Progress 6.x ?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   25/10/2004
Status: Unverified

GOAL:

What are the limitations of Progress 6.x ?

GOAL:

What are the system design limits on Progress version 6 ?

FACT(s) (Environment):

Progress 6.x

FIX:

The limits for Progress 6.x are dependent on the hardware and version of the operating system you are using.

Database

Maximum database size
200 gigabytes (GB)

Maximum number of files
Constrained by the maximum number of indexes because each file must have at least one index.

Indexes
- Maximum of 1023 per database. There is no explicit limit per file.
- Maximum of 10 fields per index.
- The total variable length storage requirements of all fields in an index entry must be less than 127 characters including storage overhead. The actual index key is limited to approximately 115 characters.

Records
Absolute maximum of 32,000 bytes per record. In practice, buffer and stack size limitations reduce the maximum record size to approximately 15,000 bytes.

Maximum number of fields
- No explicit maximum.
- The number per file constrained by record size.

Maximum number of record locks
- Machine dependent.
- At least 2000.

Work Files
Minimum record length is 64 bytes.

Data Values
Character
- Constrained by record size.
- If a field has more than 3000 characters, a custom dump/load procedure is required because the PROGRESS dump/load procedure cannot handle fields larger than 3000 characters.

Date
1/1/32768 BC through 12/31/32767 AD.

Decimal
- 50 digits total.
- Up to 10 decimal places.

Integer
-2,147,483,648 through 2,147,483,647.

Logical
true/false, yes
o

Number of Users Per Database
Single-user
Maximum 1 user

Multi-user
The maximum is machine dependent:
- For UNIX and VMS systems with shared memory the maximum is 2048, unless constrained by semaphore limits, process limits, or machine performance.
- For bsd 4.2 without shared memory, Version 7, UNIX System 3, and XENIX machines, the limit is the number of file descriptors per process minus 10. Typically, this means the maximum number of users is between 10 and 54.
- For BTOS/CTOS machines, the maximum number of users is 64.

Number of Simultaneous Transactions Per Database
One per user, up to the maximum number of users per database.

Editor
Number of Lines
- (Edit buffer size)/82. The edit buffer can be sized at 2K-63K on DOS, OS2, BTOS/CTOS, and XENIX 286 systems and at 2K-4GB for all other systems.
- Note that regardless of the size of the text in a procedure, its compiled .r version must be smaller than 63K. See also the Edit Buffer Size (-e) startup option.

Input/Output
Terminal Line Width
- UNIX, VMS, BTOS/CTOS: 80 to 132
- DOS, OS/2: 80

Printer Line Width
Up to 255 characters, unless constrained by printer limitations.

Export & Import files
- 3000 characters per field.
- 32K characters per record.

Streams
Maximum of 5 named streams per procedure.

Sorting Levels
Maximum of 10 fields or expressions.

Sorting key size
Maximum of 127 characters in the combined size of all fields being sorted together.

Names
Procedure Names
- UNIX: 1 - 12 characters.
- DOS, OS/2: 1 - 8 characters.
- VMS: 1 - 39 characters.
- BTOS/CTOS: 1 - 50 characters.

Files, fields, indexes and variables
- Up to 32 characters in length.
- Begin with a-z or A-Z.
- Consist of any combination of letters, numbers and the characters "#" "$" "%" "&" "-" and "_".
- The dash ("-") is illegal in PROGRESS/SQL.

Database
- UNIX: 1 - 11 characters.
- DOS, OS/2: 1 - 8 characters.
- VMS: 1 - 39 cha.racters.
- BTOS/CTOS: 1 - 12 characters.

Compiler
Variables
On DOS, OS2, XENIX 286 and BTOS/CTOS, all active records, variables (local, shared, global), and work files in all active procedures for a given user must fit in a buffer area of size 1K-63K bytes.
The buffer area can be up to 4GB on all other systems. (See also the Local Buffer Size (-l) startup option.)

Statements
- Maximum of 4000 characters per statement.
- Maximum of 1000 tokens per statement.
- Each word or special character (ie: left parenthesis, plus sign, minus sign)counts as one token.

Frames
Maximum width of 255 characters.

Nested Blocks
Maximum of 255 blocks, including called procedures. (See also the Nested Blocks (-nb) startup parameter.).