246
246
WorkloadRunner::start_table_idle_cycle (WT_CONNECTION *conn)
247
247
{
248
248
WT_SESSION *session;
249
- if (conn->open_session (conn, nullptr , nullptr , &session) != 0 ) {
250
- THROW (" Error opening a session." );
249
+ int ret = conn->open_session (conn, nullptr , nullptr , &session);
250
+ if (ret != 0 ) {
251
+ THROW_ERRNO (ret, " Error opening a session." );
251
252
}
252
253
253
254
for (int cycle_count = 0 ; !stopping; ++cycle_count) {
@@ -258,11 +259,11 @@ WorkloadRunner::start_table_idle_cycle(WT_CONNECTION *conn)
258
259
workgen_clock (&start);
259
260
260
261
/* Create a table. */
261
- int ret;
262
- if (( ret = session-> create (session, uri, " key_format=S,value_format=S " )) != 0 ) {
262
+ int ret = session-> create (session, uri, " key_format=S,value_format=S " ) ;
263
+ if (ret != 0 ) {
263
264
if (ret == EBUSY)
264
265
continue ;
265
- THROW ( " Table create failed in start_table_idle_cycle." );
266
+ THROW_ERRNO (ret, " Table create failed in start_table_idle_cycle." );
266
267
}
267
268
268
269
uint64_t stop;
@@ -276,11 +277,13 @@ WorkloadRunner::start_table_idle_cycle(WT_CONNECTION *conn)
276
277
277
278
/* Open and close cursor. */
278
279
WT_CURSOR *cursor;
279
- if ((ret = session->open_cursor (session, uri, nullptr , nullptr , &cursor)) != 0 ) {
280
- THROW (" Cursor open failed." );
280
+ ret = session->open_cursor (session, uri, nullptr , nullptr , &cursor);
281
+ if (ret != 0 ) {
282
+ THROW_ERRNO (ret, " Cursor open failed." );
281
283
}
282
- if ((ret = cursor->close (cursor)) != 0 ) {
283
- THROW (" Cursor close failed." );
284
+ ret = cursor->close (cursor);
285
+ if (ret != 0 ) {
286
+ THROW_ERRNO (ret, " Cursor close failed." );
284
287
}
285
288
286
289
workgen_clock (&stop);
@@ -300,7 +303,7 @@ WorkloadRunner::start_table_idle_cycle(WT_CONNECTION *conn)
300
303
}
301
304
302
305
if (ret != 0 ) {
303
- THROW ( " Table drop failed in cycle_idle_tables." );
306
+ THROW_ERRNO (ret, " Table drop failed in cycle_idle_tables." );
304
307
}
305
308
workgen_clock (&stop);
306
309
last_interval = ns_to_sec (stop - start);
467
470
WorkloadRunner::start_tables_create (WT_CONNECTION *conn)
468
471
{
469
472
WT_SESSION *session;
470
- if (conn->open_session (conn, nullptr , nullptr , &session) != 0 ) {
471
- THROW (" Error opening a session." );
473
+ int ret = conn->open_session (conn, nullptr , nullptr , &session);
474
+ if (ret != 0 ) {
475
+ THROW_ERRNO (ret, " Error opening a session." );
472
476
}
473
477
474
478
ContextInternal *icontext = _workload->_context ->_internal ;
594
598
WorkloadRunner::start_tables_drop (WT_CONNECTION *conn)
595
599
{
596
600
WT_SESSION *session;
597
- if (conn->open_session (conn, nullptr , nullptr , &session) != 0 ) {
598
- THROW (" Error opening a session." );
601
+ int ret = conn->open_session (conn, nullptr , nullptr , &session);
602
+ if (ret != 0 ) {
603
+ THROW_ERRNO (ret, " Error opening a session." );
599
604
}
600
605
601
606
ContextInternal *icontext = _workload->_context ->_internal ;
@@ -689,7 +694,7 @@ WorkloadRunner::start_tables_drop(WT_CONNECTION *conn)
689
694
* removed from the shared data structures, and we know no thread is operating on them.
690
695
*/
691
696
for (auto uri : drop_files) {
692
- WT_DECL_RET ;
697
+ int ret ;
693
698
// Spin on EBUSY. We do not expect to get stuck.
694
699
while ((ret = session->drop (session, uri.c_str (), " checkpoint_wait=false" )) == EBUSY) {
695
700
if (stopping)
@@ -698,7 +703,7 @@ WorkloadRunner::start_tables_drop(WT_CONNECTION *conn)
698
703
sleep (1 );
699
704
}
700
705
if (ret != 0 )
701
- THROW ( " Table drop failed for '" << uri << " ' in start_tables_drop." );
706
+ THROW_ERRNO (ret, " Table drop failed for '" << uri << " ' in start_tables_drop." );
702
707
703
708
VERBOSE (*_workload, " Dropped table: " << uri);
704
709
}
@@ -910,28 +915,31 @@ ContextInternal::create_all(WT_CONNECTION *conn)
910
915
* dynamic set of tables are marked separately during creation.
911
916
*/
912
917
WT_SESSION *session;
913
- if (conn->open_session (conn, nullptr , nullptr , &session) != 0 ) {
914
- THROW (" Error opening a session." );
918
+ int ret = conn->open_session (conn, nullptr , nullptr , &session);
919
+ if (ret != 0 ) {
920
+ THROW_ERRNO (ret, " Error opening a session." );
915
921
}
916
922
917
- WT_DECL_RET;
918
923
WT_CURSOR *cursor;
919
- if ((ret = session->open_cursor (session, " metadata:" , NULL , NULL , &cursor)) != 0 ) {
924
+ ret = session->open_cursor (session, " metadata:" , NULL , NULL , &cursor);
925
+ if (ret != 0 ) {
920
926
/* If there is no metadata (yet), this will return ENOENT. */
921
927
if (ret == ENOENT) {
922
- THROW ( " No metadata found while extracting dynamic set of tables." );
928
+ THROW_ERRNO (ret, " No metadata found while extracting dynamic set of tables." );
923
929
}
924
930
}
925
931
926
932
/* Walk the entries in the metadata and extract the dynamic set. */
927
933
while ((ret = cursor->next (cursor)) == 0 ) {
928
934
const char *key, *v;
929
- if ((ret = cursor->get_key (cursor, &key)) != 0 ) {
930
- THROW (
935
+ ret = cursor->get_key (cursor, &key);
936
+ if (ret != 0 ) {
937
+ THROW_ERRNO (ret,
931
938
" Error getting the key for a metadata entry while extracting dynamic set of tables." );
932
939
}
933
- if ((ret = cursor->get_value (cursor, &v)) != 0 ) {
934
- THROW (
940
+ ret = cursor->get_value (cursor, &v);
941
+ if (ret != 0 ) {
942
+ THROW_ERRNO (ret,
935
943
" Error getting the value for a metadata entry while extracting dynamic set of "
936
944
" tables." );
937
945
}
@@ -974,7 +982,7 @@ ContextInternal::create_all(WT_CONNECTION *conn)
974
982
}
975
983
}
976
984
if (ret != WT_NOTFOUND) {
977
- THROW ( " Error extracting dynamic set of tables from the metadata." );
985
+ THROW_ERRNO (ret, " Error extracting dynamic set of tables from the metadata." );
978
986
}
979
987
980
988
/* Make sure each base has its mirror and vice-versa. */
@@ -997,11 +1005,12 @@ ContextInternal::create_all(WT_CONNECTION *conn)
997
1005
sleep (1 );
998
1006
}
999
1007
if (ret != 0 )
1000
- THROW ( " Table drop failed for '" << uri << " ' in create_all." );
1008
+ THROW_ERRNO (ret, " Table drop failed for '" << uri << " ' in create_all." );
1001
1009
}
1002
1010
1003
- if ((ret = session->close (session, NULL )) != 0 ) {
1004
- THROW (" Session close failed." );
1011
+ ret = session->close (session, NULL );
1012
+ if (ret != 0 ) {
1013
+ THROW_ERRNO (ret, " Session close failed." );
1005
1014
}
1006
1015
1007
1016
return (0 );
@@ -1359,7 +1368,7 @@ ThreadRunner::cross_check(std::vector<ThreadRunner> &runners)
1359
1368
int
1360
1369
ThreadRunner::run ()
1361
1370
{
1362
- WT_DECL_RET ;
1371
+ int ret ;
1363
1372
ThreadOptions *options = &_thread->options ;
1364
1373
std::string name = options->name ;
1365
1374
@@ -1598,7 +1607,7 @@ ThreadRunner::op_kv_gen(Operation *op, const tint_t tint)
1598
1607
int
1599
1608
ThreadRunner::op_run_setup (Operation *op)
1600
1609
{
1601
- WT_DECL_RET ;
1610
+ int ret ;
1602
1611
1603
1612
if (_throttle != nullptr ) {
1604
1613
while (_throttle_ops >= _throttle_limit && !_in_transaction && !_stop) {
@@ -1703,7 +1712,7 @@ ThreadRunner::op_run(Operation *op)
1703
1712
Track *track;
1704
1713
WT_CURSOR *cursor;
1705
1714
WT_ITEM item;
1706
- WT_DECL_RET ;
1715
+ int ret ;
1707
1716
bool measure_latency, own_cursor, retry_op;
1708
1717
timespec start_time;
1709
1718
uint64_t time_us;
@@ -3159,7 +3168,7 @@ WorkloadRunner::~WorkloadRunner()
3159
3168
int
3160
3169
WorkloadRunner::run (WT_CONNECTION *conn)
3161
3170
{
3162
- WT_DECL_RET ;
3171
+ int ret ;
3163
3172
WorkloadOptions *options = &_workload->options ;
3164
3173
3165
3174
_wt_home = conn->get_home (conn);
@@ -3291,7 +3300,7 @@ WorkloadRunner::final_report(timespec &totalsecs)
3291
3300
int
3292
3301
WorkloadRunner::run_all (WT_CONNECTION *conn)
3293
3302
{
3294
- WT_DECL_RET ;
3303
+ int ret ;
3295
3304
3296
3305
// Register signal handlers for SIGINT (Ctrl-C) and SIGTERM.
3297
3306
std::signal (SIGINT, signal_handler);
@@ -3447,17 +3456,19 @@ WorkloadRunner::run_all(WT_CONNECTION *conn)
3447
3456
if (options->background_compact > 0 ) {
3448
3457
WT_SESSION *session;
3449
3458
3450
- if (conn->open_session (conn, nullptr , nullptr , &session) != 0 )
3451
- THROW (" Error opening a session." );
3459
+ int ret = conn->open_session (conn, nullptr , nullptr , &session);
3460
+ if (ret != 0 )
3461
+ THROW_ERRNO (ret, " Error opening a session." );
3452
3462
3453
3463
const std::string bg_compact_cfg (" background=true,free_space_target=" +
3454
3464
std::to_string (options->background_compact ) + " MB" );
3455
- int ret = session->compact (session, nullptr , bg_compact_cfg.c_str ());
3465
+ ret = session->compact (session, nullptr , bg_compact_cfg.c_str ());
3456
3466
if (ret != 0 )
3457
3467
THROW_ERRNO (ret, " WT_SESSION->compact background compaction could not be enabled." );
3458
3468
3459
- if ((ret = session->close (session, NULL )) != 0 )
3460
- THROW (" Session close failed." );
3469
+ ret = session->close (session, NULL );
3470
+ if (ret != 0 )
3471
+ THROW_ERRNO (ret, " Session close failed." );
3461
3472
}
3462
3473
3463
3474
timespec now;
0 commit comments