Sequence Limits

jeephabit3

New Member
Does anyone know if the sequence limits have been changed or removed in version 12?

Starting in the Progress 9.x product, the number of unique sequences supported in a database is determined by Block Size, the formula is:

Maximum Sequence Number = 250 * (Block Size / 1024)

In other words, an application that uses more than 250 sequences will not work on all database block sizes. The number of sequences per database block size are listed below.

Maximum Number Of Sequences

Database Block Size Maximum Number of Sequences

1024 bytes (1K) 250
2048 bytes (2K)) 500
4096 bytes (4K)) 1000
8192 bytes (8K)) 2000
 

TomBascom

Curmudgeon
Offhand I don't know. I do know that Rich has talked about supporting multiple sequence blocks. But it isn't anything that I've needed to worry about and I've not seen it mentioned in any release notes. OTOH I haven't been looking for it.

Also - nobody should be using block sizes less than 4096.
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
The article that mentions those numbers is fairly old. It doesn't mention OE 11, though it shows as last updated in 2015 (11.5ish).

I tested in 11.7.3 that I can create 1001 sequences in an 8 KB database but not in a 4 KB database. I haven't tested in yet 12. I'll let you know when I do. I believe OE 12 brought a change to sequence definitions, that they are int64 by default. I haven't heard talk of increasing the maximum number of definitions.

Do you really need more than 2,000 sequences?
 

jeephabit3

New Member
We are currently getting close to 1000 sequences but the database servers are running under Windows currently with a 4K block size from what I understand. It looks like you can do an 8k block size on a 16TB-32TB NTFS file system under Windows so that may be an option but being an App Developer and not a Windows admin I am not sure what the issues with that type of configuration might be.
 

TomBascom

Curmudgeon
Your database block and your filesystem block do not have to be the same size. It is, however, strongly recommended that the db block not be smaller than the fs block -- so a db block of 8k and an fs block of 4k is ok.
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
Linux 64
12.0.0

I created a .df with sequences named "s0001" through "s2001" and loaded it into an 8K database. This was the result:
Code:
┌──────────────────── Error ─────────────────────┐
│     ** Error during ADD SEQUENCE s2001 **      │
│                                                │
│ Maximum number of sequences has been reached.  │
│ ────────────────────────────────────────────── │
│                      <OK>                      │
└────────────────────────────────────────────────┘
So the limit on maximum number of sequences remains unchanged.
 
Top