mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-25 09:09:54 -05:00
ITS#9154 back-mdb add number of entries to cn=monitor
This commit is contained in:
parent
cb42a6e91a
commit
e7538fa462
1 changed files with 25 additions and 2 deletions
|
|
@ -47,6 +47,9 @@ static AttributeDescription *ad_olmMDBPagesMax,
|
|||
|
||||
static AttributeDescription *ad_olmMDBReadersMax,
|
||||
*ad_olmMDBReadersUsed;
|
||||
|
||||
static AttributeDescription *ad_olmMDBEntries;
|
||||
|
||||
/*
|
||||
* NOTE: there's some confusion in monitor OID arc;
|
||||
* by now, let's consider:
|
||||
|
|
@ -132,6 +135,14 @@ static struct {
|
|||
"NO-USER-MODIFICATION "
|
||||
"USAGE dSAOperation )",
|
||||
&ad_olmMDBReadersUsed },
|
||||
|
||||
{ "( olmMDBAttributes:6 "
|
||||
"NAME ( 'olmMDBEntries' ) "
|
||||
"DESC 'Number of entries in DB' "
|
||||
"SUP monitorCounter "
|
||||
"NO-USER-MODIFICATION "
|
||||
"USAGE dSAOperation )",
|
||||
&ad_olmMDBEntries },
|
||||
{ NULL }
|
||||
};
|
||||
|
||||
|
|
@ -150,7 +161,7 @@ static struct {
|
|||
"$ olmDbNotIndexed "
|
||||
#endif /* MDB_MONITOR_IDX */
|
||||
"$ olmMDBPagesMax $ olmMDBPagesUsed $ olmMDBPagesFree "
|
||||
"$ olmMDBReadersMax $ olmMDBReadersUsed "
|
||||
"$ olmMDBReadersMax $ olmMDBReadersUsed $ olmMDBEntries "
|
||||
") )",
|
||||
&oc_olmMDBDatabase },
|
||||
|
||||
|
|
@ -219,6 +230,14 @@ mdb_monitor_update(
|
|||
}
|
||||
mdb_cursor_close( cursor );
|
||||
}
|
||||
|
||||
mdb_stat( txn, mdb->mi_id2entry, &mst );
|
||||
a = attr_find( e->e_attrs, ad_olmMDBEntries );
|
||||
assert( a != NULL );
|
||||
bv.bv_val = buf;
|
||||
bv.bv_len = snprintf( buf, sizeof( buf ), "%lu", mst.ms_entries );
|
||||
ber_bvreplace( &a->a_vals[ 0 ], &bv );
|
||||
|
||||
mdb_txn_abort( txn );
|
||||
|
||||
a = attr_find( e->e_attrs, ad_olmMDBPagesFree );
|
||||
|
|
@ -417,7 +436,7 @@ mdb_monitor_db_open( BackendDB *be )
|
|||
}
|
||||
|
||||
/* alloc as many as required (plus 1 for objectClass) */
|
||||
a = attrs_alloc( 1 + 6 );
|
||||
a = attrs_alloc( 1 + 7 );
|
||||
if ( a == NULL ) {
|
||||
rc = 1;
|
||||
goto cleanup;
|
||||
|
|
@ -449,6 +468,10 @@ mdb_monitor_db_open( BackendDB *be )
|
|||
next->a_desc = ad_olmMDBReadersUsed;
|
||||
attr_valadd( next, &bv, NULL, 1 );
|
||||
next = next->a_next;
|
||||
|
||||
next->a_desc = ad_olmMDBEntries;
|
||||
attr_valadd( next, &bv, NULL, 1 );
|
||||
next = next->a_next;
|
||||
}
|
||||
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue