[Date Prev][Date Next] [Chronological] [Thread] [Top]

(ITS#5014) syncrepl failure syslog



Full_Name: Donn Cave
Version: 2.4.4
OS: Red Hat RHEL 3
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (128.95.135.150)


Hard to tell why syncrepl isn't working, if it discards error messages. 

*** servers/slapd/syncrepl.c.dist       2007-02-15 17:53:39.000000000 -0800
--- servers/slapd/syncrepl.c    2007-06-12 13:35:22.000000000 -0700
***************
*** 688,694 ****
        struct sync_cookie      syncCookie_req = { NULL };
        struct berval           cookie = BER_BVNULL;
  
!       int     rc, err;
        ber_len_t       len;
  
        struct berval   *psub;
--- 688,694 ----
        struct sync_cookie      syncCookie_req = { NULL };
        struct berval           cookie = BER_BVNULL;
  
!       int     rc, err, rrc;
        ber_len_t       len;
  
        struct berval   *psub;
***************
*** 704,709 ****
--- 704,710 ----
        BerVarray syncUUIDs = NULL;
        ber_tag_t si_tag;
  
+       rrc = LDAP_SUCCESS;
        if ( slapd_shutdown ) {
                rc = -2;
                goto done;
***************
*** 727,732 ****
--- 728,734 ----
        while ( ( rc = ldap_result( si->si_ld, LDAP_RES_ANY, LDAP_MSG_ONE,
                tout_p, &res ) ) > 0 )
        {
+               ldap_parse_result( si->si_ld, res, &rrc, 0, 0, 0, 0, 0 );
                if ( slapd_shutdown ) {
                        rc = -2;
                        goto done;
***************
*** 1061,1066 ****
--- 1063,1076 ----
        }
  
  done:
+       if ( rrc != LDAP_SUCCESS ) {
+               const char *errstr;
+               ldap_get_option( si->si_ld, LDAP_OPT_ERROR_NUMBER, &rrc );
+               errstr = ldap_err2string( rrc );
+ 
+               Debug( LDAP_DEBUG_ANY,
+                       "syncrepl %s result: %s\n", si->si_ridtxt, errstr, 0 );
+       }
        slap_sync_cookie_free( &syncCookie, 0 );
        slap_sync_cookie_free( &syncCookie_req, 0 );