Howard Chu wrote:
Joel Reed wrote:
The attached uidnumber.c overlay intercepts ADD requests for entries with a posixAccount objectclass that do not have a uidNumber. When such ADD requests are found, the overlay searches the directory for the largest uidNumber, then automatically adds a uidNumber attribute of largest+1 to the entry being added.
Interesting. Perhaps instead, your overlay should just maintain a fixed entry with a copy of the largest uidNumber in it, instead of searching the entire tree all the time.
I did consider this, but didn't implement it because I was thinking about running in an N-Way Multi-Master configuration. On further reflection, this scheme would probably still not support such a configuration under load.
Obviously, the approach I took doesn't scale well as you point out. I think I will punt on supporting N-Way Multi-Master configs and either use the approach you note above or the sambaUnixIdPool approach noted elsewhere in this thread.
Thanks to everyone who provided feedback. Greatly appreciated.
jr