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

Method doOpen

src/jrd/extds/InternalDS.cpp:621–644  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

619
620
621void InternalStatement::doOpen(thread_db* tdbb)
622{
623 JTransaction* transaction = getIntTransaction()->getJrdTran();
624
625 FbLocalStatus status;
626
627 {
628 EngineCallbackGuard guard(tdbb, *this, FB_FUNCTION);
629
630 if (m_cursor)
631 {
632 m_cursor->close(&status);
633 m_cursor.clear();
634 }
635
636 fb_assert(m_inMetadata->getMessageLength() == m_in_buffer.getCount());
637
638 m_cursor.assignRefNoIncr(m_request->openCursor(&status, transaction,
639 m_inMetadata, m_in_buffer.begin(), m_outMetadata, 0));
640 }
641
642 if (status->getState() & IStatus::STATE_ERRORS)
643 raise(&status, tdbb, "JStatement::open");
644}
645
646
647bool InternalStatement::doFetch(thread_db* tdbb)

Callers

nothing calls this directly

Calls 10

raiseFunction · 0.85
getJrdTranMethod · 0.80
assignRefNoIncrMethod · 0.80
closeMethod · 0.45
clearMethod · 0.45
getMessageLengthMethod · 0.45
getCountMethod · 0.45
openCursorMethod · 0.45
beginMethod · 0.45
getStateMethod · 0.45

Tested by

no test coverage detected