{
        struct bdb_info         *bdb = (struct bdb_info *) be->be_private;
 
-       if ( SLAP_GLUE_SUBORDINATE( be ) ) {
-               return 0;
-       }
-
        if ( bdb_monitor_initialize() == LDAP_SUCCESS ) {
                /* monitoring in back-bdb is on by default */
                SLAP_DBFLAGS( be ) |= SLAP_DBFLAG_MONITORING;
                return 0;
        }
 
-       if ( SLAP_GLUE_SUBORDINATE( be ) ) {
-               return 0;
-       }
-
        mi = backend_info( "monitor" );
        if ( !mi || !mi->bi_extra ) {
                SLAP_DBFLAGS( be ) ^= SLAP_DBFLAG_MONITORING;
 {
        struct bdb_info         *bdb = (struct bdb_info *) be->be_private;
 
-       if ( SLAP_GLUE_SUBORDINATE( be ) ) {
-               return 0;
-       }
-
        if ( !BER_BVISNULL( &bdb->bi_monitor.bdm_ndn ) ) {
                BackendInfo             *mi = backend_info( "monitor" );
                monitor_extra_t         *mbe;
 int
 bdb_monitor_db_destroy( BackendDB *be )
 {
-       if ( SLAP_GLUE_SUBORDINATE( be ) ) {
-               return 0;
-       }
-
 #ifdef BDB_MONITOR_IDX
-       {
-               struct bdb_info         *bdb = (struct bdb_info *) be->be_private;
+       struct bdb_info         *bdb = (struct bdb_info *) be->be_private;
 
-               /* TODO: free tree */
-               ldap_pvt_thread_mutex_destroy( &bdb->bi_idx_mutex );
-               avl_free( bdb->bi_idx, ch_free );
-       }
+       /* TODO: free tree */
+       ldap_pvt_thread_mutex_destroy( &bdb->bi_idx_mutex );
+       avl_free( bdb->bi_idx, ch_free );
 #endif /* BDB_MONITOR_IDX */
 
        return 0;