mirror of
https://github.com/matrix-construct/construct
synced 2024-11-19 00:10:59 +01:00
ircd::db: Add interface to get column and database options.
This commit is contained in:
parent
a133235f82
commit
41fd658b24
4 changed files with 23 additions and 0 deletions
|
@ -22,6 +22,7 @@ namespace ircd::db
|
||||||
std::vector<std::string> files(const column &);
|
std::vector<std::string> files(const column &);
|
||||||
size_t file_count(const column &);
|
size_t file_count(const column &);
|
||||||
size_t bytes(const column &);
|
size_t bytes(const column &);
|
||||||
|
options getopt(const column &);
|
||||||
|
|
||||||
// Get property data of a db column. R can optionally be uint64_t for some
|
// Get property data of a db column. R can optionally be uint64_t for some
|
||||||
// values; we typedef that as prop_int for templating purposes. R can also
|
// values; we typedef that as prop_int for templating purposes. R can also
|
||||||
|
|
|
@ -29,6 +29,7 @@ namespace ircd::db
|
||||||
std::vector<std::string> wals(const database &);
|
std::vector<std::string> wals(const database &);
|
||||||
size_t file_count(const database &);
|
size_t file_count(const database &);
|
||||||
size_t bytes(const database &);
|
size_t bytes(const database &);
|
||||||
|
options getopt(const database &);
|
||||||
log::facility loglevel(const database &);
|
log::facility loglevel(const database &);
|
||||||
|
|
||||||
// Property information interface
|
// Property information interface
|
||||||
|
|
|
@ -22,6 +22,7 @@ namespace ircd::db
|
||||||
struct column;
|
struct column;
|
||||||
struct index;
|
struct index;
|
||||||
struct database;
|
struct database;
|
||||||
|
struct options;
|
||||||
|
|
||||||
// Errors for the database subsystem. The exceptions that use _HIDENAME
|
// Errors for the database subsystem. The exceptions that use _HIDENAME
|
||||||
// are built from RocksDB errors which already have an info string with
|
// are built from RocksDB errors which already have an info string with
|
||||||
|
|
20
ircd/db.cc
20
ircd/db.cc
|
@ -639,6 +639,15 @@ ircd::db::loglevel(const database &d)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ircd::db::options
|
||||||
|
ircd::db::getopt(const database &d)
|
||||||
|
{
|
||||||
|
return options
|
||||||
|
{
|
||||||
|
d.d->GetDBOptions()
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
size_t
|
size_t
|
||||||
ircd::db::bytes(const database &d)
|
ircd::db::bytes(const database &d)
|
||||||
{
|
{
|
||||||
|
@ -9018,6 +9027,17 @@ ircd::db::property(const column &column,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ircd::db::options
|
||||||
|
ircd::db::getopt(const column &column)
|
||||||
|
{
|
||||||
|
database &d(const_cast<db::column &>(column));
|
||||||
|
database::column &c(const_cast<db::column &>(column));
|
||||||
|
return options
|
||||||
|
{
|
||||||
|
static_cast<rocksdb::ColumnFamilyOptions>(d.d->GetOptions(c))
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
size_t
|
size_t
|
||||||
ircd::db::bytes(const column &column)
|
ircd::db::bytes(const column &column)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue