45 auto*
end = digits +
sizeof digits;
53 *--at =
static_cast<char>(
'0' + limit % 10);
62 std::string message(prefix);
72 " distinct order ids in one run; reuse ids, e.g. build the id from a modulo of bar_index");
75 " retired order-id keys in one run (each retired order uses 2); reuse ids, e.g. a modulo of bar_index");
78 " keys for partially filled exits in one run; reuse ids, e.g. a modulo of bar_index");
81 " exit rank ids in one run; reuse ids");
84 " keys in one run; reuse ids");
92 " bytes in one run; use shorter ids or reuse ids");
95 " bytes in one run; use shorter ids or reuse ids");
98 " bytes in one run; use shorter ids or reuse ids");
101 " bytes in one run; use shorter ids or reuse ids");
104 " bytes in one run; use shorter ids or reuse ids");
110 " order ids active at once (placed and not yet closed or cancelled); "
111 "close or cancel orders sooner, or reuse ids");
117 const char* operation =
"scratch capacity exceeded")
118 :
std::runtime_error(operation),
122 :
std::runtime_error(message),
132 :
std::system_error(error,
std::generic_category(), operation),
135 :
std::system_error(error),
RunFailureInfo(RunFailureCode code, const RunFailureArgs &args) noexcept
AuxiliaryScratchIoError(const std::system_error &error)
AuxiliaryScratchIoError(int error, const char *operation)
ScratchCapacityError(ScratchResource resource, const std::string &message)
ScratchCapacityError(ScratchResource resource, const char *operation="scratch capacity exceeded")
std::string scratch_count_limit_message(ScratchResource resource, std::uint64_t limit)
std::string scratch_byte_limit_message(ScratchResource resource, std::uint64_t limit)
std::string scratch_limit_message(const char *prefix, std::uint64_t limit, const char *suffix)
const char * scratch_resource_name(ScratchResource resource) noexcept
void raise_scratch_io_error(int error, const char *operation)
std::string scratch_limit_number(std::uint64_t limit)
std::string scratch_resident_cohort_limit_message(std::uint64_t limit)
@ scratch_capacity_exceeded