At 03:10 PM 3/27/00 -0800, you wrote:
>
>> it looks like the IDBroker just returns one single int...is that a
>> concatinated high/low value?
>
>It just returns a simple int like a simple Oracle sequence.  We were
>originally thinking of returning a high/low value but John and I decided it
>wasn't necessary.
>

Before this gets too mature, can I suggest that the IDBroker return a
64-bit long rather than a 32-bit int?

I know that this is slightly more expensive computationally.
However, in enterprise object systems, signed 32-bits (2 billion 
positive combinations) is really too few.  This is particularly
true under these conditions

  * if you have ID wastage (due to large Oracle sequence increments
    accompanied by server cycling)
  * if you have many deletes and new object insertions
  * if you are in a repetitive run environment (i.e. regression testing)
  * if you are in a distributed environment and need to delegate
    large ranges of ID's to different allocating servers

We are working with a 1 Terabyte Oracle database with some tables
approaching 1 billion rows.  In some places, we took short cuts for
"efficiency" and assumed that an ID would fit in a signed 32-bit
integer, and we regret it.  We are potentially faced with a major
database maintenance effort or a major code rework.

It should be noted that if the system developer knows for a fact that
his ID's will never go above a certain number, his primary key ID
columns do not need to be large enough to support the full 64-bit
possible range (20 digits).  However, having the Java code use
long's positions you better to be a true enterprise-quality component.

Thanks for all the good work you are doing.

Stephen



------------------------------------------------------------
To subscribe:        [EMAIL PROTECTED]
To unsubscribe:      [EMAIL PROTECTED]
Problems?:           [EMAIL PROTECTED]

Reply via email to