Cancel batch
Client
Int32
—p_operation
-
Operation code (
op_batch_cancel
—109
) Int32
—p_batch_statement
-
Statement handle
Int32
— p_operation
Operation code (op_batch_cancel
— 109
)
Int32
— p_batch_statement
Statement handle
Introduced in protocol 17 (Firebird 4.0.1).
Used to force the server to acknowledge previously sent lazy intermediate operations (e.g. op_batch_msg
, op_batch_regblob
, op_batch_blob_stream
and possibly others).
Int32
— p_operation
Operation code (op_batch_sync
— 110
)
Int32
— p_operation
Operation code (op_batch_set_bpb
— 106
)
Int32
— p_batch_statement
Statement handle
Buffer
— p_batch_blob_bpb
Default BLOB parameter buffer
Int32
— p_operation
Operation code (op_batch_regblob
— 104
)
Int32
— p_batch_statement
Statement handle
Int64
— p_batch_exist_id
Existing BLOB ID
Int64
— p_batch_blob_id
Batch temporary BLOB ID
Caution
|
This description needs further verification and possibly correction.For example, it seems to mix up Buffer and Byte[].We’re also not able to match some fields to the implementation.For example, the repeated "Record length" seems to be absent, or may actually refer to the |
Int32
— p_operation
Operation code (op_batch_blob_stream
)
Int32
— p_batch_statement
Statement handle
Buffer[]
— p_batch_blob_data
BLOB stream
This stream is a sequence of blob records.Each blob records contains:
UInt32
Record length
The following three fields are called BLOB header
Int64
Batch temporary BLOB ID
UInt32
BLOB size
UInt32
BLOB parameters buffer size
Buffer
BLOB parameters buffer
Buffer
BLOB data (length - BLOB size bytes) (what does this mean?)
BLOB headers and records in a stream need not match, i.e. one record may contain many BLOBs and BLOB may stretch from one record to next.
Uses the [wireprotocol-requests-info] message with:
p_operation
|
|
p_info_object
|
Statement handle |
p_info_items
|
Values of |
Attach to a service.Use message [wireprotocol-connect-attach] with op_service_attach
— 82
.
p_atch_file
:Current Firebird versions only support one service: service_mgr
.Since Firebird 3.0, this can also be an empty string (empty buffer) with the same meaning.
Send [wireprotocol-connect-detach] with op_service_detach
— 83
, followed by [wireprotocol-connect-disconnect].
Although the message looks similar to [wireprotocol-requests-info], it has different semantics.
Int32
— p_operation
Operation code (op_service_start
— 85
)
Int32
— p_info_object
Unused, always use 0
Int32
— p_info_incarnation
Incarnation of object (0
)
TODO: Usage and meaning?
Buffer
— p_info_items
Service parameter buffer
Although the message looks similar to [wireprotocol-requests-info], it has different semantics.
Int32
— p_operation
Operation code (op_service_info
— 84
)
Int32
— p_info_object
Unused, always use 0
Int32
— p_info_incarnation
Incarnation of object (0
)
TODO: Usage and meaning?
Buffer
— p_info_items
Service parameter buffer
Buffer
— p_info_recv_items
Requested information items
Int32
— p_info_buffer_length
Requested information items buffer length
[wireprotocol-responses-generic] — on success, p_resp_data
contains the requested information.