Theory questions about ovdb

Forrest J. Cavalier III mibsoft at epix.net
Fri Jul 7 19:17:49 UTC 2000


I did not do a good job asking the separate questions,
so I think you misunderstood they were all related.


In the question about retries, I wrote:

>Does it make sense to add a retry limit and failure with log
>(such as in ovdb_groupadd() and elsewhere.)  How often
>in real life circumstances does a retry get needed?  Right
>now it looks like it could infinite loop.

By retry, I meant the places in ovdb.c where there is
a "goto retry"  


------------------------------------------------------------

Unrelated to the question about retries, I was trying to understand
the performance implications of 

  key.data = &dk;
  key.size = sizeof dk;
  val.flags = DB_DBT_PARTIAL;
  ret = dbcursor->c_get(dbcursor, &key, &val, DB_SET_RANGE)) {
  loop
    ret = dbcursor->c_get(dbcursor, &key, &val, DB_NEXT);

Is it O(1)?  (I hope!)

Since it is a B-tree, keys are sorted, so that answers
my question I guess: that iteration should be O(1), unless
there is something tricky about the keys and data are
stored separately.  Hope I understand it....

------------------------------------------------------------

Thanks for adding the note about expected performance.  For a
good point of comparison can you also add 

   How many articles per day to you store into overview.

   How many simultaneous reader connections you see.



More information about the inn-workers mailing list