1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

Merge from merge-myrocks:

commit 445e518bc7
Author: Sergei Petrunia <psergey@askmonty.org>
Date:   Sat Jan 27 10:18:20 2018 +0000

    Copy of
    commit f8f364b47f2784f16b401f27658f1c16eaf348ec
    Author: Jay Edgar <jkedgar@fb.com>
    Date:   Tue Oct 17 15:19:31 2017 -0700

        Add a hashed, hierarchical, wheel timer implementation

        Summary:
        In order to implement idle timeouts on detached sessions we need something inside MySQL that is lightweight and can handle calling events in the future wi

        By default the timers are grouped into 10ms buckets (the 'hashed' part), though the size of the buckets is configurable at the creation of the timer.  Eac

        Reviewed By: djwatson

        Differential Revision: D6199806

        fbshipit-source-id: 5e1590f
This commit is contained in:
Sergei Petrunia
2018-01-27 11:52:34 +00:00
133 changed files with 5580 additions and 1238 deletions

View File

@@ -84,7 +84,7 @@ namespace myrocks {
do { \
if (!(expr)) { \
my_safe_printf_stderr("\nShip assert failure: \'%s\'\n", #expr); \
abort_with_stack_traces(); \
abort(); \
} \
} while (0)
#endif // SHIP_ASSERT
@@ -250,12 +250,20 @@ inline void rdb_check_mutex_call_result(const char *function_name,
// This will hopefully result in a meaningful stack trace which we can use
// to efficiently debug the root cause.
abort_with_stack_traces();
abort();
}
}
void rdb_log_status_error(const rocksdb::Status &s, const char *msg = nullptr);
// return true if the marker file exists which indicates that the corruption
// has been detected
bool rdb_check_rocksdb_corruption();
// stores a marker file in the data directory so that after restart server
// is still aware that rocksdb data is corrupted
void rdb_persist_corruption_marker();
/*
Helper functions to parse strings.
*/