MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / sendDeferredPacket

Method sendDeferredPacket

src/remote/client/interface.cpp:3025–3058  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3023
3024
3025void Batch::sendDeferredPacket(IStatus* status, rem_port* port, PACKET* packet, bool flash)
3026{
3027 if (port->port_flags & PORT_lazy)
3028 {
3029 send_partial_packet(port, packet);
3030 defer_packet(port, packet, true);
3031
3032 if ((port->port_protocol >= PROTOCOL_VERSION17) &&
3033 ((port->port_deferred_packets->getCount() >= DEFER_BATCH_LIMIT) || flash))
3034 {
3035 packet->p_operation = op_batch_sync;
3036 send_packet(port, packet);
3037 receive_packet(port, packet);
3038
3039 LocalStatus warning;
3040 port->checkResponse(&warning, packet, false);
3041 Rsr* statement = stmt->getStatement();
3042 if (statement->haveException())
3043 {
3044 cleanup();
3045 statement->raiseException();
3046 }
3047 }
3048 }
3049 else if (status)
3050 {
3051 send_and_receive(status, port->port_context, packet);
3052 }
3053 else
3054 {
3055 LocalStatus local;
3056 send_and_receive(&local, port->port_context, packet);
3057 }
3058}
3059
3060
3061void Batch::setDefaultBpb(CheckStatusWrapper* status, unsigned parLength, const unsigned char* par)

Callers

nothing calls this directly

Calls 11

send_partial_packetFunction · 0.85
defer_packetFunction · 0.85
send_packetFunction · 0.85
receive_packetFunction · 0.85
send_and_receiveFunction · 0.85
checkResponseMethod · 0.80
haveExceptionMethod · 0.80
raiseExceptionMethod · 0.80
cleanupFunction · 0.50
getCountMethod · 0.45
getStatementMethod · 0.45

Tested by

no test coverage detected