Patent ID: 9002872
Filing Date: 2015-04-07
Classification: G06F,H04L

Abstract:
1. A machine-implemented method, comprising: evaluating a lightweight directory access protocol (LDAP) directory search based on configuration parameters to the method and determining based on the evaluation that the directory search is to be processed by the method, the configuration parameters passed as part of the directory search and including a current workload for a multicore architecture and a number that identifies active search operations within the multicore architecture, the configuration parameters also including an indication as to how many searches should be executed; receiving the directory search and processing at a first thread and on a first processor to retrieve matching directory entries from a directory to satisfy the directory search and serially and dynamically populating the matching entries into a search results data structure as the matching directory entries are found by the first thread; concurrently processing two or more additional threads on a different processor that access the search results data structure while the first thread continues to populate the search results data structure to satisfy the directory search, the two or more additional threads process in parallel to the first thread and on a different core of a machine from that of the first thread based on the configuration parameters that force the concurrent processing, the two or more additional threads modify the search results data structure to remove selective ones of the matching directory entries in response to scope and access rights and to modify other ones of the matching directory entries remaining in the search results data structure to include metadata information. defined by the directory search, the scope defines how deep to search within the directory, the metadata defining particular attributes, the scope includes a value for: a base scope indicating just a search of a base object only is to occur, a level one indicating a search of objects subordinate to the base object but does not include the base object, or a sial-tree level indicating a search of the base object and an entire sub-tree of which a distinguished name for the base object is a topmost object; and returning the search results data structure to a requestor once the first thread and the two or more additional threads complete processing of the directory search, the first thread returns the search results data structure to the requestor once the first thread receives notice or receives a particular event indicating that each of the two or more additional threads have completed processing, and wherein each object includes operational attributes including values for an entry identifier, revision information, parent information, a subordinate count, partitioned information, creation time stamp, and modification time stamp.