ninjudd-bdb 0.0.8 → 0.0.9
Sign up to get free protection for your applications and to get access to all the features.
- data/bdb.gemspec +1 -1
- data/ext/bdb.c +50 -0
- metadata +1 -1
data/bdb.gemspec
CHANGED
@@ -2,7 +2,7 @@ BDB_SPEC = Gem::Specification.new do |s|
|
|
2
2
|
s.platform = Gem::Platform::RUBY
|
3
3
|
s.required_ruby_version = '>=1.8.4'
|
4
4
|
s.name = "bdb"
|
5
|
-
s.version = "0.0.
|
5
|
+
s.version = "0.0.9"
|
6
6
|
s.authors = ["Matt Bauer", "Dan Janowski"]
|
7
7
|
s.email = "bauer@pedalbrain.com"
|
8
8
|
s.summary = "A Ruby interface to BerkeleyDB"
|
data/ext/bdb.c
CHANGED
@@ -2315,6 +2315,54 @@ VALUE env_get_tx_max(VALUE obj)
|
|
2315
2315
|
return INT2FIX(max);
|
2316
2316
|
}
|
2317
2317
|
|
2318
|
+
/*
|
2319
|
+
* call-seq:
|
2320
|
+
* env.mutex_set_max(max) -> max
|
2321
|
+
*
|
2322
|
+
* Set the maximum number of mutexes with the environment
|
2323
|
+
*/
|
2324
|
+
VALUE env_mutex_set_max(VALUE obj, VALUE vmax)
|
2325
|
+
{
|
2326
|
+
t_envh *eh;
|
2327
|
+
u_int32_t max;
|
2328
|
+
int rv;
|
2329
|
+
|
2330
|
+
max=FIX2UINT(vmax);
|
2331
|
+
|
2332
|
+
Data_Get_Struct(obj,t_envh,eh);
|
2333
|
+
if (!eh->env)
|
2334
|
+
raise(0, "env is closed");
|
2335
|
+
rv=eh->env->mutex_set_max(eh->env,max);
|
2336
|
+
if ( rv != 0 ) {
|
2337
|
+
raise_error(rv, "env_mutex_set_max: %s",db_strerror(rv));
|
2338
|
+
}
|
2339
|
+
|
2340
|
+
return vmax;
|
2341
|
+
}
|
2342
|
+
|
2343
|
+
/*
|
2344
|
+
* call-seq
|
2345
|
+
* env.mutex_get_max -> Fixnum
|
2346
|
+
*
|
2347
|
+
* Get current maximum number of mutexes.
|
2348
|
+
*/
|
2349
|
+
VALUE env_mutex_get_max(VALUE obj)
|
2350
|
+
{
|
2351
|
+
t_envh *eh;
|
2352
|
+
u_int32_t max;
|
2353
|
+
int rv;
|
2354
|
+
|
2355
|
+
Data_Get_Struct(obj,t_envh,eh);
|
2356
|
+
if (!eh->env)
|
2357
|
+
raise(0, "env is closed");
|
2358
|
+
rv=eh->env->mutex_get_max(eh->env,&max);
|
2359
|
+
if ( rv != 0 ) {
|
2360
|
+
raise_error(rv, "env_mutex_get_max: %s",db_strerror(rv));
|
2361
|
+
}
|
2362
|
+
|
2363
|
+
return INT2FIX(max);
|
2364
|
+
}
|
2365
|
+
|
2318
2366
|
/*
|
2319
2367
|
* call-seq:
|
2320
2368
|
* env.set_shm_key(key) -> max
|
@@ -2935,6 +2983,8 @@ void Init_bdb() {
|
|
2935
2983
|
rb_define_method(cEnv,"set_timeout",env_set_timeout,2);
|
2936
2984
|
rb_define_method(cEnv,"get_timeout",env_get_timeout,1);
|
2937
2985
|
rb_define_method(cEnv,"set_tx_max",env_set_tx_max,1);
|
2986
|
+
rb_define_method(cEnv,"mutex_get_max",env_mutex_get_max,0);
|
2987
|
+
rb_define_method(cEnv,"mutex_set_max",env_mutex_set_max,1);
|
2938
2988
|
rb_define_method(cEnv,"get_tx_max",env_get_tx_max,0);
|
2939
2989
|
rb_define_method(cEnv,"report_stderr",env_report_stderr,0);
|
2940
2990
|
rb_define_method(cEnv,"set_lk_detect",env_set_lk_detect,1);
|