Hi Pierre, On Mon, Dec 5, 2011 at 11:11 AM, Pierre-Arnaud Marcelot <[email protected]>wrote:
> Hi guys, > > On 5 déc. 2011, at 10:00, Emmanuel Lecharny wrote: > > > On 12/4/11 8:23 PM, Göktürk Gezer wrote: > >> BTW, > >> > >> If passing null as CoreSession is ok on AbstractBTreePartition(Schema > and > >> Config Partitions.) operations, i might use some pointers about how to > use > >> them best. > >> > >> Pointers on SearchEngine usage could save me lots of hours also. > > > > From the top of my head, you need a CoreSession because you need a > reference on the SchemaManager which is hold by the Session (in fact, we > use an OperationContext, which contains a Session). > > I personally use a SearchOperationContext with a null core session in the > PartitionsDiffComputer class (which computes the differences between two > partition) in the ApacheDS v2 Configuration Editor plugin where I read the > configuration partition (extracted from the LDIF files). > It works great. Without any issue. > > The SchemaManager is actually tied to the Partition itself (and not the > OperationContext or Session). So it should not be an issue. > Yeah this is what i saw on the code. OperationContext es are not queried for something CoreSession specific. So i believe most of the operations can work without an issue with "null" CoreSession. > As a matter of fact, I really believe that it should always be allowed to > do any kind of operation with any session. > +1 > > Regards, > Pierre-Arnaud > > > > The Partition will manipulate indexes, and for that, we need the > SchemaManager, as it is the only place we have information about > AttributeType names and OIDs, as Index are referring AT names or OID. > > > > Now, you should not need the DirectoryService instance to query the > SchemaPartition. > > > > I have to check what could happen if you pass a null value as the > CoreSession for this partition... > > > > > > -- > > Regards, > > Cordialement, > > Emmanuel Lécharny > > www.iktek.com > > > >
