Hmm... I was going to just say "since you're looking at a 'back link' attribute, why 
not just query for the "forward links" (i.e. search for all items with (homeMDB=<DN 
you're looking at>))

But you got me curious, since I hadn't actually used the 'homeMDBBL'... and it looks 
useful!

So, a quick Google found this URL (seems to be in the middle of the chapter or book, 
but has some useful information I'd not seen before)

http://www.microsoft.com/WINDOWS2000/techinfo/reskit/en/Distrib/dsbg_dat_namy.htm

Which had this

---
Object Size vs. Maximum Database Record Size

Each object in the directory is represented as one record, or row, in the database, 
and each attribute is represented as one column in the row. The only exceptions are 
certain attributes whose values are stored separately as links. The limit for record 
size in the database is 800 non-linked values across all attributes. Attributes that 
represent links do not count in this value. (For more information about linked 
attributes, see "Linked Attributes" later in this chapter.) The size of objects is not 
a problem if you use the recommended guidelines described in "Data Characteristics" 
earlier in this chapter.

---

Then a couple of pages later 
(http://www.microsoft.com/WINDOWS2000/techinfo/reskit/en/Distrib/dsbg_dat_afaq.htm) at 
the bottom of the page:

---
Attribute Range Option

The LDAP protocol reads a multivalue attribute as a single entity, which can be 
inconvenient in the time that it takes when the number of values is large or, in some 
cases, makes reading the attribute impossible. The Range option can be specified as 
part of an attribute description to retrieve the values of a multivalue attribute 
incrementally. An attribute description includes an attribute type (for example, 
member) and a list of options, one of which can be the Range option. When presented in 
a searchRequest message, the Range option specifies a zero-relative range of elements 
(for example, 0-9) to be retrieved. By specifying the Range option followed by a range 
specifier, only the number of values in that range are retrieved.

To retrieve a range of values in Ldp, open a search (on the Browse menu, click 
Search), and then, in the Search dialog box, click Options. In the Attributes box, 
specify an attribute and the Range option. The attribute name and the Range option 
must be enclosed in quotation marks (" ").

For example, to read six members of a group at a time, use the group distinguished 
name as the search base and type the following in the Attributes box: 
"member;range=0-5". This search will return six values for an object with multiple 
values in the member attribute.

For more information about using the Range option, see the Microsoft Platform SDK link 
on the Web Resources page at 
http://windows.microsoft.com/windows2000/reskit/webresources. Search the SDK using the 
keywords "range specifier" and "enumerating groups."
-----


shoot, I'll be using this myself!

Rick
---
Rick Tatem
Messaging and Directory Resources

-----Original Message-----
From: Stum, Matthew J. [mailto:[EMAIL PROTECTED]]
Sent: Friday, August 09, 2002 2:45 PM
To: [EMAIL PROTECTED]
Subject: Reading multi-value attributes with more than 1000 values?



I've got an Active Directory object, and it has a
multi-value attribute... and the attribute contains
more than 1000 values... how do I read it? (Assume
the number of values is always greater than the
default return limit... I want a permanent solution.)

Getting the members of a large group is nice with
the members() method to return an Enum object.  But
I'm looking at things like Exchange Information
Store objects with over 1000 values in 'homeMDBBL'.

Any ideas?

Thanx!
Matt


_______________________________________________
Perl-Win32-Admin mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
_______________________________________________
Perl-Win32-Admin mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to