diff options
author | Christian Grothoff <christian@grothoff.org> | 2011-04-15 20:12:21 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2011-04-15 20:12:21 +0000 |
commit | ae6871c097e55b61d10a66428b1c9a732a0fe803 (patch) | |
tree | b95dd510cc8d44bf2cdd59344353de9554e36938 /src/datastore | |
parent | adfeb308f7af770dd7ff16b3e5ce79943ddb6818 (diff) | |
download | gnunet-ae6871c097e55b61d10a66428b1c9a732a0fe803.tar.gz gnunet-ae6871c097e55b61d10a66428b1c9a732a0fe803.zip |
fixes
Diffstat (limited to 'src/datastore')
-rw-r--r-- | src/datastore/gnunet-service-datastore.c | 10 | ||||
-rw-r--r-- | src/datastore/perf_datastore_api.c | 34 | ||||
-rw-r--r-- | src/datastore/plugin_datastore_mysql.c | 75 |
3 files changed, 45 insertions, 74 deletions
diff --git a/src/datastore/gnunet-service-datastore.c b/src/datastore/gnunet-service-datastore.c index 619d89732..566a227c1 100644 --- a/src/datastore/gnunet-service-datastore.c +++ b/src/datastore/gnunet-service-datastore.c | |||
@@ -1345,9 +1345,6 @@ remove_callback (void *cls, | |||
1345 | { | 1345 | { |
1346 | struct RemoveContext *rc = cls; | 1346 | struct RemoveContext *rc = cls; |
1347 | 1347 | ||
1348 | fprintf (stderr, | ||
1349 | "remove called with key %p\n", | ||
1350 | key); | ||
1351 | if (key == NULL) | 1348 | if (key == NULL) |
1352 | { | 1349 | { |
1353 | #if DEBUG_DATASTORE | 1350 | #if DEBUG_DATASTORE |
@@ -1422,13 +1419,6 @@ handle_remove (void *cls, | |||
1422 | GNUNET_CRYPTO_hash (&dm[1], | 1419 | GNUNET_CRYPTO_hash (&dm[1], |
1423 | ntohl(dm->size), | 1420 | ntohl(dm->size), |
1424 | &vhash); | 1421 | &vhash); |
1425 | fprintf (stderr, | ||
1426 | "remove does get for key %s\n", | ||
1427 | GNUNET_h2s (&dm->key)); | ||
1428 | fprintf (stderr, | ||
1429 | "remove does get for %u vhash %s\n", | ||
1430 | ntohl (dm->type), | ||
1431 | GNUNET_h2s (&vhash)); | ||
1432 | plugin->api->get (plugin->api->cls, | 1422 | plugin->api->get (plugin->api->cls, |
1433 | &dm->key, | 1423 | &dm->key, |
1434 | &vhash, | 1424 | &vhash, |
diff --git a/src/datastore/perf_datastore_api.c b/src/datastore/perf_datastore_api.c index 306e6d5e0..6ea65c68d 100644 --- a/src/datastore/perf_datastore_api.c +++ b/src/datastore/perf_datastore_api.c | |||
@@ -88,7 +88,8 @@ enum RunPhase | |||
88 | RP_DONE = 0, | 88 | RP_DONE = 0, |
89 | RP_PUT, | 89 | RP_PUT, |
90 | RP_CUT, | 90 | RP_CUT, |
91 | RP_REPORT | 91 | RP_REPORT, |
92 | RP_ERROR | ||
92 | }; | 93 | }; |
93 | 94 | ||
94 | 95 | ||
@@ -116,10 +117,16 @@ check_success (void *cls, | |||
116 | const char *msg) | 117 | const char *msg) |
117 | { | 118 | { |
118 | struct CpsRunContext *crc = cls; | 119 | struct CpsRunContext *crc = cls; |
120 | |||
119 | if (GNUNET_OK != success) | 121 | if (GNUNET_OK != success) |
120 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | 122 | { |
121 | "%s\n", msg); | 123 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, |
122 | GNUNET_assert (GNUNET_OK == success); | 124 | "Check success failed: `%s'\n", msg); |
125 | crc->phase = RP_ERROR; | ||
126 | GNUNET_SCHEDULER_add_now (&run_continuation, | ||
127 | crc); | ||
128 | return; | ||
129 | } | ||
123 | #if REPORT_ID | 130 | #if REPORT_ID |
124 | fprintf (stderr, "I"); | 131 | fprintf (stderr, "I"); |
125 | #endif | 132 | #endif |
@@ -157,6 +164,15 @@ remove_next(void *cls, | |||
157 | { | 164 | { |
158 | struct CpsRunContext *crc = cls; | 165 | struct CpsRunContext *crc = cls; |
159 | 166 | ||
167 | if (GNUNET_OK != success) | ||
168 | { | ||
169 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | ||
170 | "remove_next failed: `%s'\n", msg); | ||
171 | crc->phase = RP_ERROR; | ||
172 | GNUNET_SCHEDULER_add_now (&run_continuation, | ||
173 | crc); | ||
174 | return; | ||
175 | } | ||
160 | #if REPORT_ID | 176 | #if REPORT_ID |
161 | fprintf (stderr, "D"); | 177 | fprintf (stderr, "D"); |
162 | #endif | 178 | #endif |
@@ -168,7 +184,7 @@ remove_next(void *cls, | |||
168 | 184 | ||
169 | static void | 185 | static void |
170 | delete_value (void *cls, | 186 | delete_value (void *cls, |
171 | const GNUNET_HashCode * key, | 187 | const GNUNET_HashCode *key, |
172 | size_t size, | 188 | size_t size, |
173 | const void *data, | 189 | const void *data, |
174 | enum GNUNET_BLOCK_Type type, | 190 | enum GNUNET_BLOCK_Type type, |
@@ -178,7 +194,7 @@ delete_value (void *cls, | |||
178 | expiration, uint64_t uid) | 194 | expiration, uint64_t uid) |
179 | { | 195 | { |
180 | struct CpsRunContext *crc = cls; | 196 | struct CpsRunContext *crc = cls; |
181 | 197 | ||
182 | GNUNET_assert (NULL != key); | 198 | GNUNET_assert (NULL != key); |
183 | stored_ops++; | 199 | stored_ops++; |
184 | stored_bytes -= size; | 200 | stored_bytes -= size; |
@@ -275,6 +291,11 @@ run_continuation (void *cls, | |||
275 | GNUNET_free (crc); | 291 | GNUNET_free (crc); |
276 | ok = 0; | 292 | ok = 0; |
277 | break; | 293 | break; |
294 | case RP_ERROR: | ||
295 | GNUNET_DATASTORE_disconnect (datastore, GNUNET_YES); | ||
296 | GNUNET_free (crc); | ||
297 | ok = 1; | ||
298 | break; | ||
278 | default: | 299 | default: |
279 | GNUNET_assert (0); | 300 | GNUNET_assert (0); |
280 | } | 301 | } |
@@ -383,7 +404,6 @@ main (int argc, char *argv[]) | |||
383 | char *pos; | 404 | char *pos; |
384 | char dir_name[128]; | 405 | char dir_name[128]; |
385 | 406 | ||
386 | if (1) return 0; | ||
387 | /* determine name of plugin to use */ | 407 | /* determine name of plugin to use */ |
388 | plugin_name = argv[0]; | 408 | plugin_name = argv[0]; |
389 | while (NULL != (pos = strstr(plugin_name, "_"))) | 409 | while (NULL != (pos = strstr(plugin_name, "_"))) |
diff --git a/src/datastore/plugin_datastore_mysql.c b/src/datastore/plugin_datastore_mysql.c index 863c55ad8..005026c92 100644 --- a/src/datastore/plugin_datastore_mysql.c +++ b/src/datastore/plugin_datastore_mysql.c | |||
@@ -262,28 +262,28 @@ struct Plugin | |||
262 | #define DELETE_ENTRY_BY_UID "DELETE FROM gn090 WHERE uid=?" | 262 | #define DELETE_ENTRY_BY_UID "DELETE FROM gn090 WHERE uid=?" |
263 | struct GNUNET_MysqlStatementHandle *delete_entry_by_uid; | 263 | struct GNUNET_MysqlStatementHandle *delete_entry_by_uid; |
264 | 264 | ||
265 | #define COUNT_ENTRY_BY_HASH "SELECT count(*) FROM gn090 FORCE INDEX (idx_hash) WHERE hash=?" | 265 | #define COUNT_ENTRY_BY_HASH "SELECT count(*) FROM gn090 WHERE hash=?" |
266 | struct GNUNET_MysqlStatementHandle *count_entry_by_hash; | 266 | struct GNUNET_MysqlStatementHandle *count_entry_by_hash; |
267 | 267 | ||
268 | #define SELECT_ENTRY_BY_HASH "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 FORCE INDEX (idx_hash_uid) WHERE hash=? ORDER BY uid LIMIT 1 OFFSET ?" | 268 | #define SELECT_ENTRY_BY_HASH "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 WHERE hash=? ORDER BY uid LIMIT 1 OFFSET ?" |
269 | struct GNUNET_MysqlStatementHandle *select_entry_by_hash; | 269 | struct GNUNET_MysqlStatementHandle *select_entry_by_hash; |
270 | 270 | ||
271 | #define COUNT_ENTRY_BY_HASH_AND_VHASH "SELECT count(*) FROM gn090 FORCE INDEX (idx_hash_vhash) WHERE hash=? AND vhash=?" | 271 | #define COUNT_ENTRY_BY_HASH_AND_VHASH "SELECT count(*) FROM gn090 WHERE hash=? AND vhash=?" |
272 | struct GNUNET_MysqlStatementHandle *count_entry_by_hash_and_vhash; | 272 | struct GNUNET_MysqlStatementHandle *count_entry_by_hash_and_vhash; |
273 | 273 | ||
274 | #define SELECT_ENTRY_BY_HASH_AND_VHASH "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 FORCE INDEX (idx_hash_vhash) WHERE hash=? AND vhash=? ORDER BY uid LIMIT 1 OFFSET ?" | 274 | #define SELECT_ENTRY_BY_HASH_AND_VHASH "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 WHERE hash=? AND vhash=? ORDER BY uid LIMIT 1 OFFSET ?" |
275 | struct GNUNET_MysqlStatementHandle *select_entry_by_hash_and_vhash; | 275 | struct GNUNET_MysqlStatementHandle *select_entry_by_hash_and_vhash; |
276 | 276 | ||
277 | #define COUNT_ENTRY_BY_HASH_AND_TYPE "SELECT count(*) FROM gn090 FORCE INDEX (idx_hash_type_uid) WHERE hash=? AND type=?" | 277 | #define COUNT_ENTRY_BY_HASH_AND_TYPE "SELECT count(*) FROM gn090 WHERE hash=? AND type=?" |
278 | struct GNUNET_MysqlStatementHandle *count_entry_by_hash_and_type; | 278 | struct GNUNET_MysqlStatementHandle *count_entry_by_hash_and_type; |
279 | 279 | ||
280 | #define SELECT_ENTRY_BY_HASH_AND_TYPE "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 FORCE INDEX (idx_hash_type_uid) WHERE hash=? AND type=? ORDER BY uid LIMIT 1 OFFSET ?" | 280 | #define SELECT_ENTRY_BY_HASH_AND_TYPE "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 WHERE hash=? AND type=? ORDER BY uid LIMIT 1 OFFSET ?" |
281 | struct GNUNET_MysqlStatementHandle *select_entry_by_hash_and_type; | 281 | struct GNUNET_MysqlStatementHandle *select_entry_by_hash_and_type; |
282 | 282 | ||
283 | #define COUNT_ENTRY_BY_HASH_VHASH_AND_TYPE "SELECT count(*) FROM gn090 FORCE INDEX (idx_hash_vhash) WHERE hash=? AND vhash=? AND type=?" | 283 | #define COUNT_ENTRY_BY_HASH_VHASH_AND_TYPE "SELECT count(*) FROM gn090 WHERE hash=? AND vhash=? AND type=?" |
284 | struct GNUNET_MysqlStatementHandle *count_entry_by_hash_vhash_and_type; | 284 | struct GNUNET_MysqlStatementHandle *count_entry_by_hash_vhash_and_type; |
285 | 285 | ||
286 | #define SELECT_ENTRY_BY_HASH_VHASH_AND_TYPE "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 FORCE INDEX (idx_hash_vhash) WHERE hash=? AND vhash=? AND type=? ORDER BY uid ASC LIMIT 1 OFFSET ?" | 286 | #define SELECT_ENTRY_BY_HASH_VHASH_AND_TYPE "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 WHERE hash=? AND vhash=? AND type=? ORDER BY uid ASC LIMIT 1 OFFSET ?" |
287 | struct GNUNET_MysqlStatementHandle *select_entry_by_hash_vhash_and_type; | 287 | struct GNUNET_MysqlStatementHandle *select_entry_by_hash_vhash_and_type; |
288 | 288 | ||
289 | #define UPDATE_ENTRY "UPDATE gn090 SET prio=prio+?,expire=IF(expire>=?,expire,?) WHERE uid=?" | 289 | #define UPDATE_ENTRY "UPDATE gn090 SET prio=prio+?,expire=IF(expire>=?,expire,?) WHERE uid=?" |
@@ -295,16 +295,16 @@ struct Plugin | |||
295 | #define SELECT_SIZE "SELECT SUM(BIT_LENGTH(value) DIV 8) FROM gn090" | 295 | #define SELECT_SIZE "SELECT SUM(BIT_LENGTH(value) DIV 8) FROM gn090" |
296 | struct GNUNET_MysqlStatementHandle *get_size; | 296 | struct GNUNET_MysqlStatementHandle *get_size; |
297 | 297 | ||
298 | #define SELECT_IT_NON_ANONYMOUS "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 FORCE INDEX(idx_anonLevel_uid) WHERE anonLevel=0 ORDER BY uid DESC LIMIT 1 OFFSET ?" | 298 | #define SELECT_IT_NON_ANONYMOUS "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 WHERE anonLevel=0 ORDER BY uid DESC LIMIT 1 OFFSET ?" |
299 | struct GNUNET_MysqlStatementHandle *zero_iter; | 299 | struct GNUNET_MysqlStatementHandle *zero_iter; |
300 | 300 | ||
301 | #define SELECT_IT_EXPIRATION "(SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 FORCE INDEX(idx_expire_prio) WHERE expire < ? ORDER BY prio ASC LIMIT 1) "\ | 301 | #define SELECT_IT_EXPIRATION "(SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 WHERE expire < ? ORDER BY prio ASC LIMIT 1) "\ |
302 | "UNION "\ | 302 | "UNION "\ |
303 | "(SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 FORCE INDEX(idx_prio) ORDER BY prio ASC LIMIT 1) "\ | 303 | "(SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 ORDER BY prio ASC LIMIT 1) "\ |
304 | "ORDER BY expire ASC LIMIT 1" | 304 | "ORDER BY expire ASC LIMIT 1" |
305 | struct GNUNET_MysqlStatementHandle *select_expiration; | 305 | struct GNUNET_MysqlStatementHandle *select_expiration; |
306 | 306 | ||
307 | #define SELECT_IT_REPLICATION "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 FORCE INDEX(idx_repl) ORDER BY repl DESC,RAND() LIMIT 1" | 307 | #define SELECT_IT_REPLICATION "SELECT type,prio,anonLevel,expire,hash,value,uid FROM gn090 ORDER BY repl DESC,RAND() LIMIT 1" |
308 | struct GNUNET_MysqlStatementHandle *select_replication; | 308 | struct GNUNET_MysqlStatementHandle *select_replication; |
309 | 309 | ||
310 | }; | 310 | }; |
@@ -866,7 +866,6 @@ return_ok (void *cls, | |||
866 | unsigned int num_values, | 866 | unsigned int num_values, |
867 | MYSQL_BIND *values) | 867 | MYSQL_BIND *values) |
868 | { | 868 | { |
869 | fprintf (stderr, "Here: %u\n", num_values); | ||
870 | return GNUNET_OK; | 869 | return GNUNET_OK; |
871 | } | 870 | } |
872 | 871 | ||
@@ -948,16 +947,6 @@ mysql_plugin_put (void *cls, | |||
948 | hashSize2 = sizeof (GNUNET_HashCode); | 947 | hashSize2 = sizeof (GNUNET_HashCode); |
949 | lsize = size; | 948 | lsize = size; |
950 | GNUNET_CRYPTO_hash (data, size, &vhash); | 949 | GNUNET_CRYPTO_hash (data, size, &vhash); |
951 | { | ||
952 | fprintf (stderr, | ||
953 | "inserting content with key `%s'\n", | ||
954 | GNUNET_h2s (key)); | ||
955 | fprintf (stderr, | ||
956 | "inserting %u-byte content with vhash `%s'\n", | ||
957 | (unsigned int) size, | ||
958 | GNUNET_h2s (&vhash)); | ||
959 | } | ||
960 | |||
961 | if (GNUNET_OK != | 950 | if (GNUNET_OK != |
962 | prepared_statement_run (plugin, | 951 | prepared_statement_run (plugin, |
963 | plugin->insert_entry, | 952 | plugin->insert_entry, |
@@ -1128,19 +1117,6 @@ mysql_next_request_cont (void *next_cls, | |||
1128 | exp); | 1117 | exp); |
1129 | #endif | 1118 | #endif |
1130 | expiration.abs_value = exp; | 1119 | expiration.abs_value = exp; |
1131 | |||
1132 | { | ||
1133 | GNUNET_HashCode vh; | ||
1134 | |||
1135 | GNUNET_CRYPTO_hash (value, size, &vh); | ||
1136 | fprintf (stderr, | ||
1137 | "found content under with key `%s'\n", | ||
1138 | GNUNET_h2s (&key)); | ||
1139 | fprintf (stderr, | ||
1140 | "found %u-byte content with vhash `%s'\n", | ||
1141 | (unsigned int) size, | ||
1142 | GNUNET_h2s (&vh)); | ||
1143 | } | ||
1144 | ret = nrc->dviter (nrc->dviter_cls, | 1120 | ret = nrc->dviter (nrc->dviter_cls, |
1145 | (nrc->one_shot == GNUNET_YES) ? NULL : nrc, | 1121 | (nrc->one_shot == GNUNET_YES) ? NULL : nrc, |
1146 | &key, | 1122 | &key, |
@@ -1279,12 +1255,6 @@ get_statement_prepare (void *cls, | |||
1279 | { | 1255 | { |
1280 | if (gc->have_vhash) | 1256 | if (gc->have_vhash) |
1281 | { | 1257 | { |
1282 | fprintf (stderr, | ||
1283 | "Select by key `%s'\n", | ||
1284 | GNUNET_h2s (&gc->key)); | ||
1285 | fprintf (stderr, | ||
1286 | "Select by vhash `%s'\n", | ||
1287 | GNUNET_h2s (&gc->vhash)); | ||
1288 | ret = | 1258 | ret = |
1289 | prepared_statement_run_select (plugin, | 1259 | prepared_statement_run_select (plugin, |
1290 | plugin->select_entry_by_hash_and_vhash, | 1260 | plugin->select_entry_by_hash_and_vhash, |
@@ -1385,12 +1355,6 @@ mysql_plugin_get (void *cls, | |||
1385 | { | 1355 | { |
1386 | if (vhash != NULL) | 1356 | if (vhash != NULL) |
1387 | { | 1357 | { |
1388 | fprintf (stderr, | ||
1389 | "Count by key `%s'\n", | ||
1390 | GNUNET_h2s (key)); | ||
1391 | fprintf (stderr, | ||
1392 | "Count by vhash `%s'\n", | ||
1393 | GNUNET_h2s (vhash)); | ||
1394 | ret = | 1358 | ret = |
1395 | prepared_statement_run_select (plugin, | 1359 | prepared_statement_run_select (plugin, |
1396 | plugin->count_entry_by_hash_and_vhash, | 1360 | plugin->count_entry_by_hash_and_vhash, |
@@ -1412,12 +1376,6 @@ mysql_plugin_get (void *cls, | |||
1412 | -1); | 1376 | -1); |
1413 | } | 1377 | } |
1414 | } | 1378 | } |
1415 | fprintf (stderr, | ||
1416 | "Got %u results (ret: %d / `%s')\n", | ||
1417 | (unsigned int) total, | ||
1418 | ret, | ||
1419 | mysql_error (plugin->dbf)); | ||
1420 | |||
1421 | if ((ret != GNUNET_OK) || (0 >= total)) | 1379 | if ((ret != GNUNET_OK) || (0 >= total)) |
1422 | { | 1380 | { |
1423 | iter (iter_cls, | 1381 | iter (iter_cls, |
@@ -1592,6 +1550,7 @@ repl_iter (void *cls, | |||
1592 | struct Plugin *plugin = rc->plugin; | 1550 | struct Plugin *plugin = rc->plugin; |
1593 | unsigned long long oid; | 1551 | unsigned long long oid; |
1594 | int ret; | 1552 | int ret; |
1553 | int iret; | ||
1595 | 1554 | ||
1596 | ret = rc->iter (rc->iter_cls, | 1555 | ret = rc->iter (rc->iter_cls, |
1597 | next_cls, key, | 1556 | next_cls, key, |
@@ -1601,12 +1560,12 @@ repl_iter (void *cls, | |||
1601 | if (NULL != key) | 1560 | if (NULL != key) |
1602 | { | 1561 | { |
1603 | oid = (unsigned long long) uid; | 1562 | oid = (unsigned long long) uid; |
1604 | ret = prepared_statement_run (plugin, | 1563 | iret = prepared_statement_run (plugin, |
1605 | plugin->dec_repl, | 1564 | plugin->dec_repl, |
1606 | NULL, | 1565 | NULL, |
1607 | MYSQL_TYPE_LONGLONG, &oid, GNUNET_YES, | 1566 | MYSQL_TYPE_LONGLONG, &oid, GNUNET_YES, |
1608 | -1); | 1567 | -1); |
1609 | if (ret == GNUNET_SYSERR) | 1568 | if (iret == GNUNET_SYSERR) |
1610 | { | 1569 | { |
1611 | GNUNET_log (GNUNET_ERROR_TYPE_WARNING, | 1570 | GNUNET_log (GNUNET_ERROR_TYPE_WARNING, |
1612 | "Failed to reduce replication counter\n"); | 1571 | "Failed to reduce replication counter\n"); |
@@ -1761,7 +1720,8 @@ libgnunet_plugin_datastore_mysql_init (void *cls) | |||
1761 | " vhash BINARY(64) NOT NULL DEFAULT ''," | 1720 | " vhash BINARY(64) NOT NULL DEFAULT ''," |
1762 | " value BLOB NOT NULL DEFAULT ''," | 1721 | " value BLOB NOT NULL DEFAULT ''," |
1763 | " uid BIGINT NOT NULL AUTO_INCREMENT," | 1722 | " uid BIGINT NOT NULL AUTO_INCREMENT," |
1764 | " PRIMARY KEY (uid)," | 1723 | " PRIMARY KEY (uid)" |
1724 | #if 0 | ||
1765 | " INDEX idx_hash (hash(64))," | 1725 | " INDEX idx_hash (hash(64))," |
1766 | " INDEX idx_hash_uid (hash(64),uid)," | 1726 | " INDEX idx_hash_uid (hash(64),uid)," |
1767 | " INDEX idx_hash_vhash (hash(64),vhash(64))," | 1727 | " INDEX idx_hash_vhash (hash(64),vhash(64))," |
@@ -1770,6 +1730,7 @@ libgnunet_plugin_datastore_mysql_init (void *cls) | |||
1770 | " INDEX idx_repl (repl)," | 1730 | " INDEX idx_repl (repl)," |
1771 | " INDEX idx_expire_prio (expire,prio)," | 1731 | " INDEX idx_expire_prio (expire,prio)," |
1772 | " INDEX idx_anonLevel_uid (anonLevel,uid)" | 1732 | " INDEX idx_anonLevel_uid (anonLevel,uid)" |
1733 | #endif | ||
1773 | ") ENGINE=InnoDB") || | 1734 | ") ENGINE=InnoDB") || |
1774 | MRUNS ("SET AUTOCOMMIT = 1") || | 1735 | MRUNS ("SET AUTOCOMMIT = 1") || |
1775 | PINIT (plugin->insert_entry, INSERT_ENTRY) || | 1736 | PINIT (plugin->insert_entry, INSERT_ENTRY) || |