mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 04:53:01 +01:00
38 lines
2.1 KiB
Text
38 lines
2.1 KiB
Text
|
== Summary ==
|
||
|
This directory contains RocksDB-based Storage Engine (RDBSE) for MySQL = "MyRocks".
|
||
|
|
||
|
== Resources ==
|
||
|
See https://github.com/facebook/mysql-5.6/wiki/Getting-Started-with-MyRocks
|
||
|
Facebook group: https://www.facebook.com/groups/mysqlonrocksdb/
|
||
|
|
||
|
== Coding Conventions ==
|
||
|
The baseline for MyRocks coding conventions is the MySQL set, available at
|
||
|
http://dev.mysql.com/doc/internals/en/coding-guidelines.html.
|
||
|
|
||
|
Several refinements:
|
||
|
0. There is an umbrella C++ namespace named "myrocks" for all MyRocks code.
|
||
|
1. We introduced "RDB" as the super-short abbreviation for "RocksDB". We will
|
||
|
use it as a name prefix, with different capitalization (see below), to ease
|
||
|
up code navigation with ctags and grep.
|
||
|
N.B. For ease of matching, we'll keep the variables and functions dealing
|
||
|
with sysvars as close as possible to the outside visible names of
|
||
|
sysvars, which start with "rocksdb_" prefix, the outward storage
|
||
|
engine name.
|
||
|
2. The names for classes, interfaces, and C++ structures (which act as
|
||
|
classes), start with prefix "Rdb_".
|
||
|
NB: For historical reasons, we'll keep the "ha_<storage_engine_name>" class
|
||
|
name for ha_rocksdb class, which is an exception to the rule.
|
||
|
3. The names for global objects and functions start with prefix "rdb_".
|
||
|
4. The names for macros and constants start with prefix "RDB_".
|
||
|
5. Regular class member names start with "m_".
|
||
|
6. Static class member names start with "s_".
|
||
|
7. Given the 80 character per line limit, we'll not always use full English
|
||
|
words in names, when a well known or easily recognizable abbreviation
|
||
|
exists (like "tx" for "transaction" or "param" for "parameter" etc).
|
||
|
8. When needing to disambiguate, we use different suffixes for that, like
|
||
|
"_arg" for a function argument/parameter, "_arr" for a C style array, and
|
||
|
"_vect" for a std::vector etc.
|
||
|
|
||
|
== Running Tests ==
|
||
|
To run tests from rocksdb, rocksd_rpl or rocksdb_sys_vars packages, use the following parameters:
|
||
|
--mysqld=--default-storage-engine=rocksdb --mysqld=--skip-innodb --mysqld=--default-tmp-storage-engine=MyISAM --mysqld=--rocksdb
|