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

Method DsqlDmlRequest

src/dsql/DsqlRequests.cpp:325–342  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

323// DsqlDmlRequest
324
325DsqlDmlRequest::DsqlDmlRequest(thread_db* tdbb, MemoryPool& pool, dsql_dbb* dbb, DsqlStatement* aStatement)
326 : DsqlRequest(pool, dbb, aStatement),
327 req_msg_buffers(pool)
328{
329 // Create the messages buffers
330 for (auto message : aStatement->getPorts())
331 {
332 // Allocate buffer for message
333 const ULONG newLen = message->msg_length + FB_DOUBLE_ALIGN - 1;
334 UCHAR* msgBuffer = FB_NEW_POOL(getPool()) UCHAR[newLen];
335 msgBuffer = FB_ALIGN(msgBuffer, FB_DOUBLE_ALIGN);
336 fb_assert(message->msg_buffer_number == req_msg_buffers.getCount());
337 req_msg_buffers.add(msgBuffer);
338 }
339
340 request = aStatement->getStatement()->findRequest(tdbb);
341 tdbb->getAttachment()->att_requests.add(request);
342}
343
344Statement* DsqlDmlRequest::getStatement() const
345{

Callers

nothing calls this directly

Calls 6

FB_ALIGNFunction · 0.85
findRequestMethod · 0.80
getCountMethod · 0.45
addMethod · 0.45
getStatementMethod · 0.45
getAttachmentMethod · 0.45

Tested by

no test coverage detected