On 08-09-2026 13:11, Tomasz Tyrakowski wrote:
> Just to wrap my head around it.
>
> What actually happens when I create a batch (IAttachment::createBatch)
> and provide invalid values for TAG_DETAILED_ERRORS (negative or >256) or
> TAG_BUFFER_BYTES_SIZE (negative or >256M) in the parameters block?
For TAG_DETAILED_ERRORS, too large values are restricted to the
server-side supported maximum (256 items at this time).
For TAG_BUFFER_BYTES_SIZE, too large values are restricted to the
server-side supported maximum (256MiB at this time), zero applies 256
MiB, Too small values will use at least 128KiB, or the size needed for
two rows.
For both tags, the value is stored in an unsigned datatype (going by the
Firebird 6 code), so negative values will actually be (usually) very
large positive values, and thus capped at the server-side maximum.
The defaults are only applied when you don't include the tag in the
parameter buffer.
[..]
> Can't find anything about it in Using_OO_API.html, if there's another
> document describing it, I'd much appreciate pointing it out.
Basically, the only documentation for this specifically is the code in
DsqlBatch.cpp.
Mark
--
Mark Rotteveel