@@ -36,17 +36,17 @@ index 0000000..299669a
3636+ /////////////////////////////////////////////////////////
3737+ // HELPER FUNCTIONS
3838+ /////////////////////////////////////////////////////////
39- + static inline int MarsagliaXORV (int x) {
40- + if (x == 0) x = 1 ;
39+ + static inline int MarsagliaXORV (int x) {
40+ + if (x == 0) x = 1 ;
4141+ x ^= x << 6;
4242+ x ^= ((unsigned)x) >> 21;
43- + x ^= x << 7 ;
43+ + x ^= x << 7 ;
4444+ return x ; // use either x or x & 0x7FFFFFFF
4545+ }
4646+
4747+ static inline int MarsagliaXOR (int * seed) {
4848+ int x = MarsagliaXORV(*seed);
49- + *seed = x ;
49+ + *seed = x ;
5050+ return x & 0x7FFFFFFF;
5151+ }
5252+
@@ -60,10 +60,10 @@ index 0000000..299669a
6060+ static inline int rand_range(int n, unsigned short *seed)
6161+ {
6262+ /* Return a random number in range [0;n) */
63- +
63+ +
6464+ /*int v = (int)(erand48(seed) * n);
6565+ assert (v >= 0 && v < n);*/
66- +
66+ +
6767+ int v = MarsagliaXOR((int *)seed) % n;
6868+ return v;
6969+ }
@@ -163,7 +163,7 @@ index 0000000..299669a
163163+ int range = rnum_ * 2;
164164+ for (int i = 1; !err_ && i <= rnum_; i++) {
165165+ char kbuf[64];
166- + size_t ksiz = sprintf(kbuf, "%08lld",
166+ + size_t ksiz = sprintf(kbuf, "%08lld",
167167+ (long long)rand_range(range + 1, seed));
168168+ if (!db_->set(kbuf, ksiz, kbuf, ksiz)) {
169169+ assert(0 && "Error in setting\n");
@@ -206,7 +206,7 @@ index 0000000..299669a
206206+ while (!stop) {
207207+ int op = rand_range(1000, seed);
208208+ char kbuf[64];
209- + size_t ksiz = sprintf(kbuf, "%08lld",
209+ + size_t ksiz = sprintf(kbuf, "%08lld",
210210+ (long long)rand_range(range+1, seed));
211211+ if (op < update_) {
212212+ if (1 || (op & 0x01) == 0) {
@@ -264,7 +264,7 @@ index 0000000..299669a
264264+ struct timespec timeout;
265265+ timeout.tv_sec = duration / 1000;
266266+ timeout.tv_nsec = (duration % 1000) * 1000000;
267- +
267+ +
268268+ printf("Setting Records\n");
269269+
270270+ ThreadSet threadsets[THREADMAX];
@@ -279,7 +279,7 @@ index 0000000..299669a
279279+ threadsets[0].setparam(0, &db, rnum, thnum);
280280+ threadsets[0].start();
281281+ threadsets[0].join();
282- +
282+ +
283283+ printf("Done setting records\n");
284284+
285285+ stop = 0;
@@ -293,9 +293,9 @@ index 0000000..299669a
293293+ long total_update = 0;
294294+ long total_get = 0;
295295+ long total_op = 0;
296- +
296+ +
297297+ if(duration > 0)
298- + nanosleep(&timeout, NULL);
298+ + nanosleep(&timeout, NULL);
299299+
300300+ stop = 1;
301301+
@@ -315,6 +315,6 @@ index 0000000..299669a
315315+ dbmetaprint(&db, true);
316316+ printf("Closing the database\n");
317317+ if (!db.close())
318- + printf("Error in closing\n");
318+ + printf("Error in closing\n");
319319+
320320+ }
0 commit comments