------------------------------------------------------------ revno: 264 revision-id: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] committer: Andrew Tridgell <[EMAIL PROTECTED]> branch nick: tridge timestamp: Tue 2007-05-08 21:16:29 +1000 message: fixed a problem with the number of timed events growing without bound with the new seqnum code modified: common/ctdb_ltdb.c ctdb_ltdb.c-20061128065342-to93h6eejj5kon81-2 include/ctdb_private.h ctdb_private.h-20061117234101-o3qt14umlg9en8z0-13 === modified file 'common/ctdb_ltdb.c' --- a/common/ctdb_ltdb.c 2007-05-05 07:35:28 +0000 +++ b/common/ctdb_ltdb.c 2007-05-08 11:16:29 +0000 @@ -440,8 +440,9 @@ ctdb_db->seqnum = new_seqnum; /* setup a new timer */ - event_add_timed(ctdb->ev, ctdb_db, timeval_current_ofs(ctdb->seqnum_frequency, 0), - ctdb_ltdb_seqnum_check, ctdb_db); + ctdb_db->te = event_add_timed(ctdb->ev, ctdb_db, + timeval_current_ofs(ctdb->seqnum_frequency, 0), + ctdb_ltdb_seqnum_check, ctdb_db); } /* @@ -456,8 +457,11 @@ return -1; } - event_add_timed(ctdb->ev, ctdb_db, timeval_current_ofs(ctdb->seqnum_frequency, 0), - ctdb_ltdb_seqnum_check, ctdb_db); + if (ctdb_db->te == NULL) { + ctdb_db->te = event_add_timed(ctdb->ev, ctdb_db, + timeval_current_ofs(ctdb->seqnum_frequency, 0), + ctdb_ltdb_seqnum_check, ctdb_db); + } tdb_enable_seqnum(ctdb_db->ltdb->tdb); ctdb_db->seqnum = tdb_get_seqnum(ctdb_db->ltdb->tdb);
=== modified file 'include/ctdb_private.h' --- a/include/ctdb_private.h 2007-05-06 19:02:48 +0000 +++ b/include/ctdb_private.h 2007-05-08 11:16:29 +0000 @@ -246,6 +246,7 @@ struct tdb_wrap *ltdb; struct ctdb_registered_call *calls; /* list of registered calls */ uint32_t seqnum; + struct timed_event *te; };