SDE-set objectid values are managed by a sequence (or on SQL-Server, by one-row table
that is incremented). It is very inefficient to increment with each row, so ArcSDE actually
increments by a larger value (200 or 400) and assigns the values in between by itself.
On Oracle, the excess values are stuffed in a DBMS_PIPE for re-use; I'm not positive that
an equivalent exists with Microsoft. In the end it doesn't really matter, since the values
only need to be unique (and positive) for the linkage between tables and graphics within
ArcGIS (it's not an error, just an implementation quirk of the load process).
- V
Hi Vince,
I'm experiencing the same issue on a couple of datasets using MSSQL Server. My questions are a) why doesn't this sequencing occur in every feature class? and b) is there any way to remedy/avoid it?
Thanks!
Adrien
As described elsewhere in this thread, it's an artifact of how features are loaded, and there's no way to externally influence the behavior. It's not hurting anything, so it does not seem to need remedy.
- V
Hi Vince,
Good morning, and thank you for your response. I've read this thread in great detail, and what I'm not seeing, which is why I asked the question, is why this behavior occurs with only a small percentage of feature classes and not all of them? What about the feature class and its loading procedure causes some to behave 'normally' and others to skip by 200 or 400? Again, I understand your explanation as to why it skips, but I don't understand why it's not consistent among all feature classes in existence in the world. Secondly, the reason I'm asking about a solution is because a) it looks messy and b) it will cause our dataset to reach the maximum number allowable prematurely.
Thanks,
Adrien
I have no idea why any one particular layer would have skipped values (besides when using multiple appends and/or multiple simultaneous inserts). The visibility of messiness is questionable, since these IDs are not intended for any other use. You should not ever exceed 20-50 million rows in any table, so reaching the 2^31-1 rowid limit first seems like quite a challenge.
If you want to discover why your your site is exhibiting this specific behavior, please open a Tech Support ticket. They have better means to reproduce this issue than I do.
- V