Re: weird! modifiction about users.
Do you have some kind of pause between the delete and then add of the
user object?
The description of the error is that there is something wrong on your
LAN or with the communication between the servers. Perhaps you're trying
to delete and then recreate the same user before the servers can
finalize the "destruction" of the object and sync that information.
Just a wild guess from my part though, but I've seen some strange error
when trying to do something faster than the server wants to do it. :)
About the new password then it succeeds, perhpas the generation of new
keypairs gives the server the extra time it needs to get in sync?
Somthing also says to me that 625 sometimes occurs when the servers are
temporary busy. I think I've seen it when I've ordered dsrepair to
report time sync status.
Hope this gives you something to go on, a bit late reply perhaps. :)
Regards
Anders
>>> On 2009-05-12 at 05:46,
kings36503<kings36503@no-mx.forums.novell.com> wrote:
> It is so weird!
> I am a java developer, using novell ldap api, here is the situation:
> there is a user "cn=foo,o=someorg", password is "123456".
> 1. get a connectionPool:
>
> Code:
> --------------------
> PoolManager poolManager = new PoolManager("192.168.0.1", 389, 10,
5,
> null);
> --------------------
>
> 2. bind a user:
>
> Code:
> --------------------
> LDAPConnection lc =
poolManager.getBoundConnection("cn=foo,o=someorg",
> "123456".getBytes());
> --------------------
>
> 3. do some search action:
>
>
> Code:
> --------------------
> try {
> LDAPSearchResults searchResults = lc1.search("o=someorg",
> LDAPConnection.SCOPE_SUB, "cn=*", new String[] {
> "objectclass", "cn" }, false);
> System.out.println(searchResults);
> LDAPEntry entry = null;
> while(searchResults.hasMore())
> {
> entry = searchResults.next();
> System.out.println(entry);
> //lc1.disconnect();
> }
> } catch (LDAPException e) {
> // TODO Auto-generated catch block
> e.printStackTrace();
> }
> poolManager.makeConnectionAvailable(lc1);
> --------------------
>
> console print LDAPEntry
>
> 4. delete this user:
>
> lc.delete("cn=foo,o=someorg");
>
> 5. add the same user with the same password:
>
>
> Code:
> --------------------
> LDAPAttributeSet attributeSet = new LDAPAttributeSet();
> attributeSet.add(new LDAPAttribute("objectclass", new String(
> "inetOrgPerson")));
> attributeSet.add(new LDAPAttribute("cn", new String("foo")));
> attributeSet.add(new LDAPAttribute("sn", new String("foo")));
> attributeSet.add(new LDAPAttribute("userpassword", "123456"));
> LDAPEntry newEntry = new LDAPEntry("cn=foo,o=someorg",
attributeSet);
> lc.add(newEntry);
> --------------------
>
> 6: repeat step 2 and 3.
> got a exception:
>
> Code:
> --------------------
> LDAPException: Other (80) Other
> LDAPException: Server Message: NDS error: transport failure (-625)
> LDAPException: Matched DN:
> at com.novell.ldap.LDAPResponse.getResultException(Un known Source)
> at com.novell.ldap.LDAPResponse.chkResultCode(Unknown Source)
> at com.novell.ldap.LDAPSearchResults.next(Unknown Source)
> at net.risesoft.platform.TestLdap.main(TestLdap.java: 61)
> --------------------
>
> nds trance:
>
> Code:
> --------------------
> 08:00:00 B48 LDAP: Failed to duplicate context 0x59270041 in
> DuplicateNDSContext, err = transport failure (-625)
> 08:00:00 B48 LDAP: Failed to duplicate context 0x59270041 in
> DuplicateConnContext, err = transport failure (-625)
> 08:00:00 B48 LDAP: nds_back_search: DuplicateConnContext for search
> failed, err = transport failure (-625)
> --------------------
>
>
> ps: when i create the same user with different password, it goes
> right.
> weird! is'nt it ?
|