I am not aware of any current products that support this feature. Actually, I avoid a sequential numbering whenever possible because most applications exist on more than one server and keeping the documents sequential across servers is problematic at best.
I think you should qualify your answer more. We have several databases where we use the same sequence numbering libraries and which do not suffer from heavy new-document creations. (I think the largest number of users we've seen is maybe 200 simultaneous database users where only a small percentage of them are creating new documents.) I suspect that there is some heavy usage that would overload our scheme, but I honestly think our servers would catch on fire first.
I recognize that it's possible to get into a race condition where we can create multiple locks for the same document and thus create a save-conflict -- bUT that has not happened after several years of operation. We do not use Notes doc locks -- we have our own which allow us to keep some useful information in them (developed years before Notes offered the current doc locking scheme).
My point is: under some fairly broad circumstances, it's legit to generate sequence numbers in Notes when there are replica databases in active use.
(Side note: To be honest, this is one area where Notes should have created a set of functions and methods for users. I started with Notes in the 3.0 days and this was a major complaint back then. Some things never change.)
We cluster our servers and can generate numbers on the cluster servers -- yes, I know the danger, but this has not failed yet. If we are creating documents "off the cluster" where only periodic replication takes place, we set the sequence number to zero and, when the document replicates back to the main "sequence server", a periodic agent creates a sequence number for the document.
We're also careful to have the paste-in agent CHANGE sequence numbers for any pasted-in document (we also offer a "copy" action that retains the sequence number when needed)
We've extended the library to use locks and separate sequence documents for each form type and, if the sequence doc does not yet exist, create it on the fly.
I know the above sounds like a lot of work but it was necessary. The major benefit has proven to be the ability for other non-Notes applications to access our databases as if they were relational and use the sequence numbers as keys.
I'm not trying to show you up; I know of several sites where sequence numbering as we have implemented here is working very well and is key to the success of their databases. For sure, it's not foolproof but it does the job and it's reliable in this environment. Sometimes I/we get a bit bigoted against the not-perfect solutions but this is one that had to be done anyway.
Do you have comments on this Ask the Expert question and response? Let us know.
Dig Deeper on Lotus Notes Domino Application Development
Related Q&A from Brian Mahoney
Find out what types of calculations can be computed for a column in a Lotus Notes view and the best way to go about it with this expert response. Continue Reading
Find out why you can't use Formula language to include a doclink to a specific Lotus Notes view or database and need to use LotusScript instead. Continue Reading
Discover the reasons behind a Notes/Domino admistrator having trouble with disabled options in the "customize this view" section of his Lotus Notes ... Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.