bdb 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/examples/replication.rb +29 -0
- data/ext/Makefile +157 -0
- data/ext/bdb.bundle +0 -0
- data/ext/bdb.c +225 -12
- data/ext/bdb.o +0 -0
- data/ext/bdb_aux._c +433 -0
- data/ext/extconf.rb +3 -35
- data/ext/mkmf.log +4766 -0
- data/lib/bdb/base.rb +11 -3
- data/lib/bdb/database.rb +27 -4
- data/lib/bdb/environment.rb +21 -5
- data/lib/bdb/replication.rb +68 -0
- data/test/database_test.rb +18 -0
- data/test/database_test_helper.rb +37 -0
- data/test/deadlock_test.rb +125 -0
- data/test/replication_test.rb +47 -0
- data/test/test_helper.rb +8 -1
- metadata +17 -4
- data/test/simple_test.rb +0 -93
data/ext/bdb.o
ADDED
Binary file
|
data/ext/bdb_aux._c
ADDED
@@ -0,0 +1,433 @@
|
|
1
|
+
/* This file automatically generated by extconf.rb */
|
2
|
+
cu(mBdb,DB_VERSION_MAJOR);
|
3
|
+
cu(mBdb,DB_VERSION_MINOR);
|
4
|
+
cu(mBdb,DB_VERSION_PATCH);
|
5
|
+
cs(mBdb,DB_VERSION_STRING);
|
6
|
+
cu(mBdb,DB_MAX_PAGES);
|
7
|
+
cu(mBdb,DB_MAX_RECORDS);
|
8
|
+
cu(mBdb,DB_DEGREE_2);
|
9
|
+
cu(mBdb,DB_DIRTY_READ);
|
10
|
+
cu(mBdb,DB_JOINENV);
|
11
|
+
cu(mBdb,DB_DBT_APPMALLOC);
|
12
|
+
cu(mBdb,DB_DBT_BULK);
|
13
|
+
cu(mBdb,DB_DBT_DUPOK);
|
14
|
+
cu(mBdb,DB_DBT_ISSET);
|
15
|
+
cu(mBdb,DB_DBT_MALLOC);
|
16
|
+
cu(mBdb,DB_DBT_MULTIPLE);
|
17
|
+
cu(mBdb,DB_DBT_PARTIAL);
|
18
|
+
cu(mBdb,DB_DBT_REALLOC);
|
19
|
+
cu(mBdb,DB_DBT_STREAMING);
|
20
|
+
cu(mBdb,DB_DBT_USERCOPY);
|
21
|
+
cu(mBdb,DB_DBT_USERMEM);
|
22
|
+
cu(mBdb,DB_THREADID_STRLEN);
|
23
|
+
cu(mBdb,DB_LOCKVERSION);
|
24
|
+
cu(mBdb,DB_FILE_ID_LEN);
|
25
|
+
cu(mBdb,DB_LOCK_NORUN);
|
26
|
+
cu(mBdb,DB_LOCK_DEFAULT);
|
27
|
+
cu(mBdb,DB_LOCK_EXPIRE);
|
28
|
+
cu(mBdb,DB_LOCK_MAXLOCKS);
|
29
|
+
cu(mBdb,DB_LOCK_MAXWRITE);
|
30
|
+
cu(mBdb,DB_LOCK_MINLOCKS);
|
31
|
+
cu(mBdb,DB_LOCK_MINWRITE);
|
32
|
+
cu(mBdb,DB_LOCK_OLDEST);
|
33
|
+
cu(mBdb,DB_LOCK_RANDOM);
|
34
|
+
cu(mBdb,DB_LOCK_YOUNGEST);
|
35
|
+
cu(mBdb,DB_HANDLE_LOCK);
|
36
|
+
cu(mBdb,DB_RECORD_LOCK);
|
37
|
+
cu(mBdb,DB_PAGE_LOCK);
|
38
|
+
cu(mBdb,DB_LOGVERSION);
|
39
|
+
cu(mBdb,DB_LOGVERSION_LATCHING);
|
40
|
+
cu(mBdb,DB_LOGCHKSUM);
|
41
|
+
cu(mBdb,DB_LOGOLDVER);
|
42
|
+
cu(mBdb,DB_LOGMAGIC);
|
43
|
+
cu(mBdb,DB_user_BEGIN);
|
44
|
+
cu(mBdb,DB_debug_FLAG);
|
45
|
+
cu(mBdb,DB_LOG_DISK);
|
46
|
+
cu(mBdb,DB_LOG_LOCKED);
|
47
|
+
cu(mBdb,DB_LOG_SILENT_ERR);
|
48
|
+
cu(mBdb,DB_TXNVERSION);
|
49
|
+
cu(mBdb,DB_GID_SIZE);
|
50
|
+
ci(mBdb,DB_EID_BROADCAST);
|
51
|
+
ci(mBdb,DB_EID_INVALID);
|
52
|
+
cu(mBdb,DB_REP_DEFAULT_PRIORITY);
|
53
|
+
cu(mBdb,DB_REPMGR_ACKS_ALL);
|
54
|
+
cu(mBdb,DB_REPMGR_ACKS_ALL_PEERS);
|
55
|
+
cu(mBdb,DB_REPMGR_ACKS_NONE);
|
56
|
+
cu(mBdb,DB_REPMGR_ACKS_ONE);
|
57
|
+
cu(mBdb,DB_REPMGR_ACKS_ONE_PEER);
|
58
|
+
cu(mBdb,DB_REPMGR_ACKS_QUORUM);
|
59
|
+
cu(mBdb,DB_REP_ACK_TIMEOUT);
|
60
|
+
cu(mBdb,DB_REP_CHECKPOINT_DELAY);
|
61
|
+
cu(mBdb,DB_REP_CONNECTION_RETRY);
|
62
|
+
cu(mBdb,DB_REP_ELECTION_RETRY);
|
63
|
+
cu(mBdb,DB_REP_ELECTION_TIMEOUT);
|
64
|
+
cu(mBdb,DB_REP_FULL_ELECTION_TIMEOUT);
|
65
|
+
cu(mBdb,DB_REP_HEARTBEAT_MONITOR);
|
66
|
+
cu(mBdb,DB_REP_HEARTBEAT_SEND);
|
67
|
+
cu(mBdb,DB_REP_LEASE_TIMEOUT);
|
68
|
+
cu(mBdb,DB_EVENT_NO_SUCH_EVENT);
|
69
|
+
cu(mBdb,DB_EVENT_PANIC);
|
70
|
+
cu(mBdb,DB_EVENT_REG_ALIVE);
|
71
|
+
cu(mBdb,DB_EVENT_REG_PANIC);
|
72
|
+
cu(mBdb,DB_EVENT_REP_CLIENT);
|
73
|
+
cu(mBdb,DB_EVENT_REP_ELECTED);
|
74
|
+
cu(mBdb,DB_EVENT_REP_MASTER);
|
75
|
+
cu(mBdb,DB_EVENT_REP_NEWMASTER);
|
76
|
+
cu(mBdb,DB_EVENT_REP_PERM_FAILED);
|
77
|
+
cu(mBdb,DB_EVENT_REP_STARTUPDONE);
|
78
|
+
cu(mBdb,DB_EVENT_WRITE_FAILED);
|
79
|
+
cu(mBdb,DB_REPMGR_CONNECTED);
|
80
|
+
cu(mBdb,DB_REPMGR_DISCONNECTED);
|
81
|
+
cu(mBdb,DB_RENAMEMAGIC);
|
82
|
+
cu(mBdb,DB_BTREEVERSION);
|
83
|
+
cu(mBdb,DB_BTREEOLDVER);
|
84
|
+
cu(mBdb,DB_BTREEMAGIC);
|
85
|
+
cu(mBdb,DB_HASHVERSION);
|
86
|
+
cu(mBdb,DB_HASHOLDVER);
|
87
|
+
cu(mBdb,DB_HASHMAGIC);
|
88
|
+
cu(mBdb,DB_QAMVERSION);
|
89
|
+
cu(mBdb,DB_QAMOLDVER);
|
90
|
+
cu(mBdb,DB_QAMMAGIC);
|
91
|
+
cu(mBdb,DB_SEQUENCE_VERSION);
|
92
|
+
cu(mBdb,DB_SEQUENCE_OLDVER);
|
93
|
+
cu(mBdb,DB_AFTER);
|
94
|
+
cu(mBdb,DB_APPEND);
|
95
|
+
cu(mBdb,DB_BEFORE);
|
96
|
+
cu(mBdb,DB_CONSUME);
|
97
|
+
cu(mBdb,DB_CONSUME_WAIT);
|
98
|
+
cu(mBdb,DB_CURRENT);
|
99
|
+
cu(mBdb,DB_FIRST);
|
100
|
+
cu(mBdb,DB_GET_BOTH);
|
101
|
+
cu(mBdb,DB_GET_BOTHC);
|
102
|
+
cu(mBdb,DB_GET_BOTH_RANGE);
|
103
|
+
cu(mBdb,DB_GET_RECNO);
|
104
|
+
cu(mBdb,DB_JOIN_ITEM);
|
105
|
+
cu(mBdb,DB_KEYFIRST);
|
106
|
+
cu(mBdb,DB_KEYLAST);
|
107
|
+
cu(mBdb,DB_LAST);
|
108
|
+
cu(mBdb,DB_NEXT);
|
109
|
+
cu(mBdb,DB_NEXT_DUP);
|
110
|
+
cu(mBdb,DB_NEXT_NODUP);
|
111
|
+
cu(mBdb,DB_NODUPDATA);
|
112
|
+
cu(mBdb,DB_NOOVERWRITE);
|
113
|
+
cu(mBdb,DB_NOSYNC);
|
114
|
+
cu(mBdb,DB_OVERWRITE_DUP);
|
115
|
+
cu(mBdb,DB_POSITION);
|
116
|
+
cu(mBdb,DB_PREV);
|
117
|
+
cu(mBdb,DB_PREV_DUP);
|
118
|
+
cu(mBdb,DB_PREV_NODUP);
|
119
|
+
cu(mBdb,DB_SET);
|
120
|
+
cu(mBdb,DB_SET_RANGE);
|
121
|
+
cu(mBdb,DB_SET_RECNO);
|
122
|
+
cu(mBdb,DB_UPDATE_SECONDARY);
|
123
|
+
cu(mBdb,DB_SET_LTE);
|
124
|
+
cu(mBdb,DB_GET_BOTH_LTE);
|
125
|
+
cu(mBdb,DB_OPFLAGS_MASK);
|
126
|
+
ci(mBdb,DB_BUFFER_SMALL);
|
127
|
+
ci(mBdb,DB_DONOTINDEX);
|
128
|
+
ci(mBdb,DB_FOREIGN_CONFLICT);
|
129
|
+
ci(mBdb,DB_KEYEMPTY);
|
130
|
+
ci(mBdb,DB_KEYEXIST);
|
131
|
+
ci(mBdb,DB_LOCK_DEADLOCK);
|
132
|
+
ci(mBdb,DB_LOCK_NOTGRANTED);
|
133
|
+
ci(mBdb,DB_LOG_BUFFER_FULL);
|
134
|
+
ci(mBdb,DB_NOSERVER);
|
135
|
+
ci(mBdb,DB_NOSERVER_HOME);
|
136
|
+
ci(mBdb,DB_NOSERVER_ID);
|
137
|
+
ci(mBdb,DB_NOTFOUND);
|
138
|
+
ci(mBdb,DB_OLD_VERSION);
|
139
|
+
ci(mBdb,DB_PAGE_NOTFOUND);
|
140
|
+
ci(mBdb,DB_REP_DUPMASTER);
|
141
|
+
ci(mBdb,DB_REP_HANDLE_DEAD);
|
142
|
+
ci(mBdb,DB_REP_HOLDELECTION);
|
143
|
+
ci(mBdb,DB_REP_IGNORE);
|
144
|
+
ci(mBdb,DB_REP_ISPERM);
|
145
|
+
ci(mBdb,DB_REP_JOIN_FAILURE);
|
146
|
+
ci(mBdb,DB_REP_LEASE_EXPIRED);
|
147
|
+
ci(mBdb,DB_REP_LOCKOUT);
|
148
|
+
ci(mBdb,DB_REP_NEWSITE);
|
149
|
+
ci(mBdb,DB_REP_NOTPERM);
|
150
|
+
ci(mBdb,DB_REP_UNAVAIL);
|
151
|
+
ci(mBdb,DB_RUNRECOVERY);
|
152
|
+
ci(mBdb,DB_SECONDARY_BAD);
|
153
|
+
ci(mBdb,DB_VERIFY_BAD);
|
154
|
+
ci(mBdb,DB_VERSION_MISMATCH);
|
155
|
+
ci(mBdb,DB_ALREADY_ABORTED);
|
156
|
+
ci(mBdb,DB_DELETED);
|
157
|
+
ci(mBdb,DB_EVENT_NOT_HANDLED);
|
158
|
+
ci(mBdb,DB_NEEDSPLIT);
|
159
|
+
ci(mBdb,DB_REP_BULKOVF);
|
160
|
+
ci(mBdb,DB_REP_EGENCHG);
|
161
|
+
ci(mBdb,DB_REP_LOGREADY);
|
162
|
+
ci(mBdb,DB_REP_NEWMASTER);
|
163
|
+
ci(mBdb,DB_REP_PAGEDONE);
|
164
|
+
ci(mBdb,DB_REP_PAGELOCKED);
|
165
|
+
ci(mBdb,DB_SURPRISE_KID);
|
166
|
+
ci(mBdb,DB_SWAPBYTES);
|
167
|
+
ci(mBdb,DB_TIMEOUT);
|
168
|
+
ci(mBdb,DB_TXN_CKP);
|
169
|
+
ci(mBdb,DB_VERIFY_FATAL);
|
170
|
+
ci(mBdb,DB_LOGFILEID_INVALID);
|
171
|
+
cu(mBdb,DB_ASSOC_IMMUTABLE_KEY);
|
172
|
+
cu(mBdb,DB_OK_BTREE);
|
173
|
+
cu(mBdb,DB_OK_HASH);
|
174
|
+
cu(mBdb,DB_OK_QUEUE);
|
175
|
+
cu(mBdb,DB_OK_RECNO);
|
176
|
+
cu(mBdb,DB_AM_CHKSUM);
|
177
|
+
cu(mBdb,DB_AM_COMPENSATE);
|
178
|
+
cu(mBdb,DB_AM_COMPRESS);
|
179
|
+
cu(mBdb,DB_AM_CREATED);
|
180
|
+
cu(mBdb,DB_AM_CREATED_MSTR);
|
181
|
+
cu(mBdb,DB_AM_DBM_ERROR);
|
182
|
+
cu(mBdb,DB_AM_DELIMITER);
|
183
|
+
cu(mBdb,DB_AM_DISCARD);
|
184
|
+
cu(mBdb,DB_AM_DUP);
|
185
|
+
cu(mBdb,DB_AM_DUPSORT);
|
186
|
+
cu(mBdb,DB_AM_ENCRYPT);
|
187
|
+
cu(mBdb,DB_AM_FIXEDLEN);
|
188
|
+
cu(mBdb,DB_AM_INMEM);
|
189
|
+
cu(mBdb,DB_AM_INORDER);
|
190
|
+
cu(mBdb,DB_AM_IN_RENAME);
|
191
|
+
cu(mBdb,DB_AM_NOT_DURABLE);
|
192
|
+
cu(mBdb,DB_AM_OPEN_CALLED);
|
193
|
+
cu(mBdb,DB_AM_PAD);
|
194
|
+
cu(mBdb,DB_AM_PGDEF);
|
195
|
+
cu(mBdb,DB_AM_RDONLY);
|
196
|
+
cu(mBdb,DB_AM_READ_UNCOMMITTED);
|
197
|
+
cu(mBdb,DB_AM_RECNUM);
|
198
|
+
cu(mBdb,DB_AM_RECOVER);
|
199
|
+
cu(mBdb,DB_AM_RENUMBER);
|
200
|
+
cu(mBdb,DB_AM_REVSPLITOFF);
|
201
|
+
cu(mBdb,DB_AM_SECONDARY);
|
202
|
+
cu(mBdb,DB_AM_SNAPSHOT);
|
203
|
+
cu(mBdb,DB_AM_SUBDB);
|
204
|
+
cu(mBdb,DB_AM_SWAP);
|
205
|
+
cu(mBdb,DB_AM_TXN);
|
206
|
+
cu(mBdb,DB_AM_VERIFYING);
|
207
|
+
cu(mBdb,DBC_ACTIVE);
|
208
|
+
cu(mBdb,DBC_BULK);
|
209
|
+
cu(mBdb,DBC_DONTLOCK);
|
210
|
+
cu(mBdb,DBC_DOWNREV);
|
211
|
+
cu(mBdb,DBC_DUPLICATE);
|
212
|
+
cu(mBdb,DBC_FROM_DB_GET);
|
213
|
+
cu(mBdb,DBC_MULTIPLE);
|
214
|
+
cu(mBdb,DBC_MULTIPLE_KEY);
|
215
|
+
cu(mBdb,DBC_OPD);
|
216
|
+
cu(mBdb,DBC_OWN_LID);
|
217
|
+
cu(mBdb,DBC_PARTITIONED);
|
218
|
+
cu(mBdb,DBC_READ_COMMITTED);
|
219
|
+
cu(mBdb,DBC_READ_UNCOMMITTED);
|
220
|
+
cu(mBdb,DBC_RECOVER);
|
221
|
+
cu(mBdb,DBC_RMW);
|
222
|
+
cu(mBdb,DBC_TRANSIENT);
|
223
|
+
cu(mBdb,DBC_WAS_READ_COMMITTED);
|
224
|
+
cu(mBdb,DBC_WRITECURSOR);
|
225
|
+
cu(mBdb,DBC_WRITER);
|
226
|
+
cu(mBdb,DB_REGION_MAGIC);
|
227
|
+
cu(mBdb,DB_ENV_AUTO_COMMIT);
|
228
|
+
cu(mBdb,DB_ENV_CDB_ALLDB);
|
229
|
+
cu(mBdb,DB_ENV_FAILCHK);
|
230
|
+
cu(mBdb,DB_ENV_DIRECT_DB);
|
231
|
+
cu(mBdb,DB_ENV_DSYNC_DB);
|
232
|
+
cu(mBdb,DB_ENV_MULTIVERSION);
|
233
|
+
cu(mBdb,DB_ENV_NOLOCKING);
|
234
|
+
cu(mBdb,DB_ENV_NOMMAP);
|
235
|
+
cu(mBdb,DB_ENV_NOPANIC);
|
236
|
+
cu(mBdb,DB_ENV_OVERWRITE);
|
237
|
+
cu(mBdb,DB_ENV_REGION_INIT);
|
238
|
+
cu(mBdb,DB_ENV_RPCCLIENT);
|
239
|
+
cu(mBdb,DB_ENV_RPCCLIENT_GIVEN);
|
240
|
+
cu(mBdb,DB_ENV_TIME_NOTGRANTED);
|
241
|
+
cu(mBdb,DB_ENV_TXN_NOSYNC);
|
242
|
+
cu(mBdb,DB_ENV_TXN_NOWAIT);
|
243
|
+
cu(mBdb,DB_ENV_TXN_SNAPSHOT);
|
244
|
+
cu(mBdb,DB_ENV_TXN_WRITE_NOSYNC);
|
245
|
+
cu(mBdb,DB_ENV_YIELDCPU);
|
246
|
+
cu(mBdb,DB_DBM_HSEARCH);
|
247
|
+
cu(mBdb,DB_AGGRESSIVE);
|
248
|
+
cu(mBdb,DB_ARCH_ABS);
|
249
|
+
cu(mBdb,DB_ARCH_DATA);
|
250
|
+
cu(mBdb,DB_ARCH_LOG);
|
251
|
+
cu(mBdb,DB_ARCH_REMOVE);
|
252
|
+
cu(mBdb,DB_AUTO_COMMIT);
|
253
|
+
cu(mBdb,DB_CDB_ALLDB);
|
254
|
+
cu(mBdb,DB_CHKSUM);
|
255
|
+
cu(mBdb,DB_CKP_INTERNAL);
|
256
|
+
cu(mBdb,DB_CREATE);
|
257
|
+
cu(mBdb,DB_CURSOR_BULK);
|
258
|
+
cu(mBdb,DB_CURSOR_TRANSIENT);
|
259
|
+
cu(mBdb,DB_CXX_NO_EXCEPTIONS);
|
260
|
+
cu(mBdb,DB_DIRECT);
|
261
|
+
cu(mBdb,DB_DIRECT_DB);
|
262
|
+
cu(mBdb,DB_DSYNC_DB);
|
263
|
+
cu(mBdb,DB_DUP);
|
264
|
+
cu(mBdb,DB_DUPSORT);
|
265
|
+
cu(mBdb,DB_DURABLE_UNKNOWN);
|
266
|
+
cu(mBdb,DB_ENCRYPT);
|
267
|
+
cu(mBdb,DB_ENCRYPT_AES);
|
268
|
+
cu(mBdb,DB_EXCL);
|
269
|
+
cu(mBdb,DB_EXTENT);
|
270
|
+
cu(mBdb,DB_FAILCHK);
|
271
|
+
cu(mBdb,DB_FAST_STAT);
|
272
|
+
cu(mBdb,DB_FCNTL_LOCKING);
|
273
|
+
cu(mBdb,DB_FLUSH);
|
274
|
+
cu(mBdb,DB_FORCE);
|
275
|
+
cu(mBdb,DB_FOREIGN_ABORT);
|
276
|
+
cu(mBdb,DB_FOREIGN_CASCADE);
|
277
|
+
cu(mBdb,DB_FOREIGN_NULLIFY);
|
278
|
+
cu(mBdb,DB_FREELIST_ONLY);
|
279
|
+
cu(mBdb,DB_FREE_SPACE);
|
280
|
+
cu(mBdb,DB_IGNORE_LEASE);
|
281
|
+
cu(mBdb,DB_IMMUTABLE_KEY);
|
282
|
+
cu(mBdb,DB_INIT_CDB);
|
283
|
+
cu(mBdb,DB_INIT_LOCK);
|
284
|
+
cu(mBdb,DB_INIT_LOG);
|
285
|
+
cu(mBdb,DB_INIT_MPOOL);
|
286
|
+
cu(mBdb,DB_INIT_REP);
|
287
|
+
cu(mBdb,DB_INIT_TXN);
|
288
|
+
cu(mBdb,DB_INORDER);
|
289
|
+
cu(mBdb,DB_JOIN_NOSORT);
|
290
|
+
cu(mBdb,DB_LOCKDOWN);
|
291
|
+
cu(mBdb,DB_LOCK_NOWAIT);
|
292
|
+
cu(mBdb,DB_LOCK_RECORD);
|
293
|
+
cu(mBdb,DB_LOCK_SET_TIMEOUT);
|
294
|
+
cu(mBdb,DB_LOCK_SWITCH);
|
295
|
+
cu(mBdb,DB_LOCK_UPGRADE);
|
296
|
+
cu(mBdb,DB_LOG_AUTO_REMOVE);
|
297
|
+
cu(mBdb,DB_LOG_CHKPNT);
|
298
|
+
cu(mBdb,DB_LOG_COMMIT);
|
299
|
+
cu(mBdb,DB_LOG_DIRECT);
|
300
|
+
cu(mBdb,DB_LOG_DSYNC);
|
301
|
+
cu(mBdb,DB_LOG_IN_MEMORY);
|
302
|
+
cu(mBdb,DB_LOG_NOCOPY);
|
303
|
+
cu(mBdb,DB_LOG_NOT_DURABLE);
|
304
|
+
cu(mBdb,DB_LOG_WRNOSYNC);
|
305
|
+
cu(mBdb,DB_LOG_ZERO);
|
306
|
+
cu(mBdb,DB_MPOOL_CREATE);
|
307
|
+
cu(mBdb,DB_MPOOL_DIRTY);
|
308
|
+
cu(mBdb,DB_MPOOL_DISCARD);
|
309
|
+
cu(mBdb,DB_MPOOL_EDIT);
|
310
|
+
cu(mBdb,DB_MPOOL_FREE);
|
311
|
+
cu(mBdb,DB_MPOOL_LAST);
|
312
|
+
cu(mBdb,DB_MPOOL_NEW);
|
313
|
+
cu(mBdb,DB_MPOOL_NOFILE);
|
314
|
+
cu(mBdb,DB_MPOOL_NOLOCK);
|
315
|
+
cu(mBdb,DB_MPOOL_TRY);
|
316
|
+
cu(mBdb,DB_MPOOL_UNLINK);
|
317
|
+
cu(mBdb,DB_MULTIPLE);
|
318
|
+
cu(mBdb,DB_MULTIPLE_KEY);
|
319
|
+
cu(mBdb,DB_MULTIVERSION);
|
320
|
+
cu(mBdb,DB_MUTEX_ALLOCATED);
|
321
|
+
cu(mBdb,DB_MUTEX_LOCKED);
|
322
|
+
cu(mBdb,DB_MUTEX_LOGICAL_LOCK);
|
323
|
+
cu(mBdb,DB_MUTEX_PROCESS_ONLY);
|
324
|
+
cu(mBdb,DB_MUTEX_SELF_BLOCK);
|
325
|
+
cu(mBdb,DB_MUTEX_SHARED);
|
326
|
+
cu(mBdb,DB_NOLOCKING);
|
327
|
+
cu(mBdb,DB_NOMMAP);
|
328
|
+
cu(mBdb,DB_NOORDERCHK);
|
329
|
+
cu(mBdb,DB_NOPANIC);
|
330
|
+
cu(mBdb,DB_NO_AUTO_COMMIT);
|
331
|
+
cu(mBdb,DB_ODDFILESIZE);
|
332
|
+
cu(mBdb,DB_ORDERCHKONLY);
|
333
|
+
cu(mBdb,DB_OVERWRITE);
|
334
|
+
cu(mBdb,DB_PANIC_ENVIRONMENT);
|
335
|
+
cu(mBdb,DB_PRINTABLE);
|
336
|
+
cu(mBdb,DB_PRIVATE);
|
337
|
+
cu(mBdb,DB_PR_PAGE);
|
338
|
+
cu(mBdb,DB_PR_RECOVERYTEST);
|
339
|
+
cu(mBdb,DB_RDONLY);
|
340
|
+
cu(mBdb,DB_RDWRMASTER);
|
341
|
+
cu(mBdb,DB_READ_COMMITTED);
|
342
|
+
cu(mBdb,DB_READ_UNCOMMITTED);
|
343
|
+
cu(mBdb,DB_RECNUM);
|
344
|
+
cu(mBdb,DB_RECOVER);
|
345
|
+
cu(mBdb,DB_RECOVER_FATAL);
|
346
|
+
cu(mBdb,DB_REGION_INIT);
|
347
|
+
cu(mBdb,DB_REGISTER);
|
348
|
+
cu(mBdb,DB_RENUMBER);
|
349
|
+
cu(mBdb,DB_REPMGR_CONF_2SITE_STRICT);
|
350
|
+
cu(mBdb,DB_REPMGR_PEER);
|
351
|
+
cu(mBdb,DB_REP_ANYWHERE);
|
352
|
+
cu(mBdb,DB_REP_CLIENT);
|
353
|
+
cu(mBdb,DB_REP_CONF_BULK);
|
354
|
+
cu(mBdb,DB_REP_CONF_DELAYCLIENT);
|
355
|
+
cu(mBdb,DB_REP_CONF_INMEM);
|
356
|
+
cu(mBdb,DB_REP_CONF_LEASE);
|
357
|
+
cu(mBdb,DB_REP_CONF_NOAUTOINIT);
|
358
|
+
cu(mBdb,DB_REP_CONF_NOWAIT);
|
359
|
+
cu(mBdb,DB_REP_ELECTION);
|
360
|
+
cu(mBdb,DB_REP_MASTER);
|
361
|
+
cu(mBdb,DB_REP_NOBUFFER);
|
362
|
+
cu(mBdb,DB_REP_PERMANENT);
|
363
|
+
cu(mBdb,DB_REP_REREQUEST);
|
364
|
+
cu(mBdb,DB_REVSPLITOFF);
|
365
|
+
cu(mBdb,DB_RMW);
|
366
|
+
cu(mBdb,DB_RPCCLIENT);
|
367
|
+
cu(mBdb,DB_SALVAGE);
|
368
|
+
cu(mBdb,DB_SA_SKIPFIRSTKEY);
|
369
|
+
cu(mBdb,DB_SA_UNKNOWNKEY);
|
370
|
+
cu(mBdb,DB_SEQ_DEC);
|
371
|
+
cu(mBdb,DB_SEQ_INC);
|
372
|
+
cu(mBdb,DB_SEQ_RANGE_SET);
|
373
|
+
cu(mBdb,DB_SEQ_WRAP);
|
374
|
+
cu(mBdb,DB_SEQ_WRAPPED);
|
375
|
+
cu(mBdb,DB_SET_LOCK_TIMEOUT);
|
376
|
+
cu(mBdb,DB_SET_REG_TIMEOUT);
|
377
|
+
cu(mBdb,DB_SET_TXN_NOW);
|
378
|
+
cu(mBdb,DB_SET_TXN_TIMEOUT);
|
379
|
+
cu(mBdb,DB_SHALLOW_DUP);
|
380
|
+
cu(mBdb,DB_SNAPSHOT);
|
381
|
+
cu(mBdb,DB_STAT_ALL);
|
382
|
+
cu(mBdb,DB_STAT_CLEAR);
|
383
|
+
cu(mBdb,DB_STAT_LOCK_CONF);
|
384
|
+
cu(mBdb,DB_STAT_LOCK_LOCKERS);
|
385
|
+
cu(mBdb,DB_STAT_LOCK_OBJECTS);
|
386
|
+
cu(mBdb,DB_STAT_LOCK_PARAMS);
|
387
|
+
cu(mBdb,DB_STAT_MEMP_HASH);
|
388
|
+
cu(mBdb,DB_STAT_MEMP_NOERROR);
|
389
|
+
cu(mBdb,DB_STAT_SUBSYSTEM);
|
390
|
+
cu(mBdb,DB_ST_DUPOK);
|
391
|
+
cu(mBdb,DB_ST_DUPSET);
|
392
|
+
cu(mBdb,DB_ST_DUPSORT);
|
393
|
+
cu(mBdb,DB_ST_IS_RECNO);
|
394
|
+
cu(mBdb,DB_ST_OVFL_LEAF);
|
395
|
+
cu(mBdb,DB_ST_RECNUM);
|
396
|
+
cu(mBdb,DB_ST_RELEN);
|
397
|
+
cu(mBdb,DB_ST_TOPLEVEL);
|
398
|
+
cu(mBdb,DB_SYSTEM_MEM);
|
399
|
+
cu(mBdb,DB_THREAD);
|
400
|
+
cu(mBdb,DB_TIME_NOTGRANTED);
|
401
|
+
cu(mBdb,DB_TRUNCATE);
|
402
|
+
cu(mBdb,DB_TXN_NOSYNC);
|
403
|
+
cu(mBdb,DB_TXN_NOT_DURABLE);
|
404
|
+
cu(mBdb,DB_TXN_NOWAIT);
|
405
|
+
cu(mBdb,DB_TXN_SNAPSHOT);
|
406
|
+
cu(mBdb,DB_TXN_SYNC);
|
407
|
+
cu(mBdb,DB_TXN_WAIT);
|
408
|
+
cu(mBdb,DB_TXN_WRITE_NOSYNC);
|
409
|
+
cu(mBdb,DB_UNREF);
|
410
|
+
cu(mBdb,DB_UPGRADE);
|
411
|
+
cu(mBdb,DB_USE_ENVIRON);
|
412
|
+
cu(mBdb,DB_USE_ENVIRON_ROOT);
|
413
|
+
cu(mBdb,DB_VERB_DEADLOCK);
|
414
|
+
cu(mBdb,DB_VERB_FILEOPS);
|
415
|
+
cu(mBdb,DB_VERB_FILEOPS_ALL);
|
416
|
+
cu(mBdb,DB_VERB_RECOVERY);
|
417
|
+
cu(mBdb,DB_VERB_REGISTER);
|
418
|
+
cu(mBdb,DB_VERB_REPLICATION);
|
419
|
+
cu(mBdb,DB_VERB_REPMGR_CONNFAIL);
|
420
|
+
cu(mBdb,DB_VERB_REPMGR_MISC);
|
421
|
+
cu(mBdb,DB_VERB_REP_ELECT);
|
422
|
+
cu(mBdb,DB_VERB_REP_LEASE);
|
423
|
+
cu(mBdb,DB_VERB_REP_MISC);
|
424
|
+
cu(mBdb,DB_VERB_REP_MSGS);
|
425
|
+
cu(mBdb,DB_VERB_REP_SYNC);
|
426
|
+
cu(mBdb,DB_VERB_REP_TEST);
|
427
|
+
cu(mBdb,DB_VERB_WAITSFOR);
|
428
|
+
cu(mBdb,DB_VERIFY);
|
429
|
+
cu(mBdb,DB_VERIFY_PARTITION);
|
430
|
+
cu(mBdb,DB_WRITECURSOR);
|
431
|
+
cu(mBdb,DB_WRITELOCK);
|
432
|
+
cu(mBdb,DB_WRITEOPEN);
|
433
|
+
cu(mBdb,DB_YIELDCPU);
|
data/ext/extconf.rb
CHANGED
@@ -1,43 +1,11 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
require 'mkmf'
|
3
|
-
|
4
|
-
inc, lib = dir_config('db')
|
5
|
-
|
6
|
-
# OS X compatibility
|
7
|
-
if(PLATFORM =~ /darwin/) then
|
8
|
-
# test if Bdb is probably universal
|
9
|
-
|
10
|
-
filetype = (IO.popen("file #{inc}/../db_dump").readline.chomp rescue nil)
|
11
|
-
# if it's not universal, ARCHFLAGS should be set
|
12
|
-
if((filetype !~ /universal binary/) && ENV['ARCHFLAGS'].nil?) then
|
13
|
-
arch = (IO.popen("uname -m").readline.chomp rescue nil)
|
14
|
-
$stderr.write %{
|
15
|
-
=========== WARNING ===========
|
16
|
-
|
17
|
-
You are building this extension on OS X without setting the
|
18
|
-
ARCHFLAGS environment variable, and BerkeleyDB does not appear
|
19
|
-
to have been built as a universal binary. If you are seeing this
|
20
|
-
message, that means that the build will probably fail.
|
21
|
-
|
22
|
-
Try setting the environment variable ARCHFLAGS
|
23
|
-
to '-arch #{arch}' before building.
|
24
|
-
|
25
|
-
For example:
|
26
|
-
(in bash) $ export ARCHFLAGS='-arch #{arch}'
|
27
|
-
(in tcsh) % setenv ARCHFLAGS '-arch #{arch}'
|
28
|
-
|
29
|
-
Then try building again.
|
30
|
-
|
31
|
-
===================================
|
32
|
-
|
33
|
-
}
|
34
|
-
# We don't exit here. Who knows? It might build.
|
35
|
-
end
|
36
|
-
end
|
3
|
+
default_dir = '/usr/local/BerkeleyDB.4.8'
|
4
|
+
inc, lib = dir_config('db', "#{default_dir}/include", "#{default_dir}/lib")
|
37
5
|
|
38
6
|
versions=%w(db-4.8 db-4.7 db-4.6 db-4.5 db-4.4 db-4.3 db-4.2)
|
39
7
|
until versions.empty?
|
40
|
-
(lib_ok = have_library(versions.shift,'db_version', 'db.h')) && break
|
8
|
+
(lib_ok = have_library(versions.shift, 'db_version', 'db.h')) && break
|
41
9
|
end
|
42
10
|
|
43
11
|
def create_header
|