mirror of
https://github.com/matrix-construct/construct
synced 2025-01-14 00:34:18 +01:00
ircd::db: Simplify buffer alignment callback related; fix log message.
This commit is contained in:
parent
2c957cc656
commit
34e330d77b
4 changed files with 30 additions and 39 deletions
|
@ -26,6 +26,7 @@ struct ircd::db::database::env::random_rw_file final
|
|||
database &d;
|
||||
fs::fd::opts opts;
|
||||
fs::fd fd;
|
||||
size_t _buffer_align;
|
||||
|
||||
bool use_direct_io() const noexcept override;
|
||||
size_t GetRequiredBufferAlignment() const noexcept override;
|
||||
|
|
|
@ -26,6 +26,7 @@ struct ircd::db::database::env::sequential_file final
|
|||
database &d;
|
||||
fs::fd::opts opts;
|
||||
fs::fd fd;
|
||||
size_t _buffer_align;
|
||||
off_t offset;
|
||||
|
||||
bool use_direct_io() const noexcept override;
|
||||
|
|
1
include/ircd/db/database/env/writable_file.h
vendored
1
include/ircd/db/database/env/writable_file.h
vendored
|
@ -28,6 +28,7 @@ struct ircd::db::database::env::writable_file final
|
|||
fs::fd::opts opts;
|
||||
fs::fd fd;
|
||||
IOPriority prio {IO_LOW};
|
||||
size_t _buffer_align;
|
||||
size_t preallocation_block_size {0};
|
||||
size_t preallocation_last_block {0};
|
||||
|
||||
|
|
66
ircd/db.cc
66
ircd/db.cc
|
@ -4252,14 +4252,19 @@ try
|
|||
{
|
||||
name, this->opts
|
||||
}
|
||||
,_buffer_align
|
||||
{
|
||||
fs::block_size(fd)
|
||||
}
|
||||
{
|
||||
#ifdef RB_DEBUG_DB_ENV
|
||||
log::debug
|
||||
{
|
||||
log, "'%s': opened wfile:%p fd:%d '%s'",
|
||||
log, "'%s': opened wfile:%p fd:%d bs:%zu '%s'",
|
||||
d->name,
|
||||
this,
|
||||
int(fd),
|
||||
_buffer_align,
|
||||
name
|
||||
};
|
||||
#endif
|
||||
|
@ -5003,6 +5008,10 @@ try
|
|||
{
|
||||
name, this->opts
|
||||
}
|
||||
,_buffer_align
|
||||
{
|
||||
fs::block_size(fd)
|
||||
}
|
||||
,offset
|
||||
{
|
||||
0
|
||||
|
@ -5011,10 +5020,11 @@ try
|
|||
#ifdef RB_DEBUG_DB_ENV
|
||||
log::debug
|
||||
{
|
||||
log, "'%s': opened seqfile:%p fd:%d '%s'",
|
||||
log, "'%s': opened seqfile:%p fd:%d bs:%zu '%s'",
|
||||
d->name,
|
||||
this,
|
||||
int(fd),
|
||||
_buffer_align,
|
||||
name
|
||||
};
|
||||
#endif
|
||||
|
@ -5266,22 +5276,11 @@ size_t
|
|||
ircd::db::database::env::sequential_file::GetRequiredBufferAlignment()
|
||||
const noexcept
|
||||
{
|
||||
const auto ret
|
||||
const auto &ret
|
||||
{
|
||||
fs::block_size(fd)
|
||||
_buffer_align
|
||||
};
|
||||
|
||||
#ifdef RB_DEBUG_DB_ENV
|
||||
log::debug
|
||||
{
|
||||
"'%s': seqfile:%p fd:%d required alignment (logical block size) %zu",
|
||||
d.name,
|
||||
this,
|
||||
int(fd),
|
||||
ret
|
||||
};
|
||||
#endif
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -5322,10 +5321,11 @@ try
|
|||
#ifdef RB_DEBUG_DB_ENV
|
||||
log::debug
|
||||
{
|
||||
log, "'%s': opened rfile:%p fd:%d '%s'",
|
||||
log, "'%s': opened rfile:%p fd:%d bs:%zu '%s'",
|
||||
d->name,
|
||||
this,
|
||||
int(fd),
|
||||
_buffer_align,
|
||||
name
|
||||
};
|
||||
#endif
|
||||
|
@ -5556,18 +5556,12 @@ size_t
|
|||
ircd::db::database::env::random_access_file::GetRequiredBufferAlignment()
|
||||
const noexcept
|
||||
{
|
||||
#ifdef RB_DEBUG_DB_ENV
|
||||
log::debug
|
||||
const auto &ret
|
||||
{
|
||||
"'%s': rfile:%p fd:%d required alignment (logical block size) %zu",
|
||||
d.name,
|
||||
this,
|
||||
int(fd),
|
||||
_buffer_align
|
||||
};
|
||||
#endif
|
||||
|
||||
return _buffer_align;
|
||||
return ret;
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -5603,14 +5597,19 @@ try
|
|||
{
|
||||
name, this->opts
|
||||
}
|
||||
,_buffer_align
|
||||
{
|
||||
fs::block_size(fd)
|
||||
}
|
||||
{
|
||||
#ifdef RB_DEBUG_DB_ENV
|
||||
log::debug
|
||||
{
|
||||
log, "'%s': opened rwfile:%p fd:%d '%s'",
|
||||
log, "'%s': opened rwfile:%p fd:%d bs:%zu '%s'",
|
||||
d->name,
|
||||
this,
|
||||
int(fd),
|
||||
_buffer_align,
|
||||
name
|
||||
};
|
||||
#endif
|
||||
|
@ -5650,7 +5649,7 @@ noexcept try
|
|||
#ifdef RB_DEBUG_DB_ENV
|
||||
log::debug
|
||||
{
|
||||
log, "'%s': opened rwfile:%p fd:%d '%s'",
|
||||
log, "'%s': close rwfile:%p fd:%d '%s'",
|
||||
d.name,
|
||||
this,
|
||||
int(fd)
|
||||
|
@ -5967,22 +5966,11 @@ size_t
|
|||
ircd::db::database::env::random_rw_file::GetRequiredBufferAlignment()
|
||||
const noexcept
|
||||
{
|
||||
const auto ret
|
||||
const auto &ret
|
||||
{
|
||||
fs::block_size(fd)
|
||||
_buffer_align
|
||||
};
|
||||
|
||||
#ifdef RB_DEBUG_DB_ENV
|
||||
log::debug
|
||||
{
|
||||
"'%s': rwfile:%p fd:%d required alignment (logical block size) %zu",
|
||||
d.name,
|
||||
this,
|
||||
int(fd),
|
||||
ret
|
||||
};
|
||||
#endif
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue