Журнал устройства: сохранить 10000 бинарных записей без общего буфера

Фактические данные получены через расширение interbase от отдельной локальной базы Firebird. Собственная учебная таблица удалена после наблюдений.

Наблюдаемый результат программы
НаблюдениеРезультат
Файлdevice-sequence.bin
Записей устройства10000
Байт передано120000
Вызовов add30
Байт прочитано после commit120000
SHA-256345e92d9a9b697752abbc64fa4e2ff9eb450e0e1516f1689dc6f115e68477ca0
Длина и содержимое совпалида
Большой текстовый буфер не создавалсяда
Строки и дополнительные наблюдения
{
    "source_records": 10000,
    "record_bytes": 12,
    "payload_hex": "464231363200ff0a",
    "sequence_encoding": "unsigned32-big-endian",
    "chunk_bytes": 4096,
    "write_calls": 30,
    "expected_bytes": 120000,
    "actual_bytes": 120000,
    "source_sha256": "345e92d9a9b697752abbc64fa4e2ff9eb450e0e1516f1689dc6f115e68477ca0",
    "saved_sha256": "345e92d9a9b697752abbc64fa4e2ff9eb450e0e1516f1689dc6f115e68477ca0",
    "readback_kept_whole_payload": false
}

Самостоятельный запуск создаёт result.json с данными и metrics.json с проверками рядом с example.php.