Used to inject simulated latency to filesystem operations
Maintainer(s):
dentiny
Installing and Loading
INSTALL latency_injection_fs FROM community;
LOAD latency_injection_fs;
Example
SELECT * FROM latency_inject_fs_list_filesystems();
About latency_injection_fs
This extension injects log-normal distribution latency to all types of filesystem operations, which could be used to local benchmark. It supports a few key features:
- Supports wrapping user-requested filesystems, so users don't need to make any code change.
- Supports simulated IO operation latency, via log-normal distribution.
- Could be used together with rate_limit_fs to throttle operations if needed.
Added Functions
| function_name | function_type | description | comment | examples |
|---|---|---|---|---|
| latency_inject_fs_list_filesystems | table | NULL | NULL | |
| latency_inject_fs_wrap | scalar | NULL | NULL |
Overloaded Functions
| function_name | function_type | description | comment | examples | |—————|—————|————-|———|———-|
Added Types
| type_name | type_size | logical_type | type_category | internal | |———–|———-:|————–|—————|———-|
Added Settings
| name | description | input_type | scope | aliases |
|---|---|---|---|---|
| latency_inject_fs_enabled | Enable or disable latency injection | BOOLEAN | GLOBAL | [] |
| latency_inject_fs_list_mean_ms | Mean latency in milliseconds for LIST operations (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_list_stddev | Standard deviation for LIST operations latency (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_metadata_write_mean_ms | Mean latency in milliseconds for METADATA_WRITE operations (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_metadata_write_stddev | Standard deviation for METADATA_WRITE operations latency (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_read_base_mean_ms | Base mean latency in milliseconds for READ operations (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_read_base_stddev | Base standard deviation for READ operations latency (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_read_bytes_per_ms | Read throughput in bytes per millisecond (size-dependent latency) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_stat_mean_ms | Mean latency in milliseconds for STAT operations (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_stat_stddev | Standard deviation for STAT operations latency (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_write_base_mean_ms | Base mean latency in milliseconds for WRITE operations (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_write_base_stddev | Base standard deviation for WRITE operations latency (log-normal distribution) | DOUBLE | GLOBAL | [] |
| latency_inject_fs_write_bytes_per_ms | Write throughput in bytes per millisecond (size-dependent latency) | DOUBLE | GLOBAL | [] |