Logo Search packages:      
Sourcecode: maxdb-7.5.00 version File versions  Download package

void cbd500_Tree::bd500Break ( const tsp00_Int4  recIndex,
const tsp00_KeyPtr  rePositionKey,
tsp00_Int2 &  rePositionKeyLen 
)

function: bd500Break description: Current scan over nodes is interrupted.

The first key in orientation of the current node is copied into rePositionKey. There after all nodes of the tree are released. arguments: recIndex [in] current record position rePositionKey [out] current key at recIndex position rePositionKeyLen [out] current key length

Definition at line 667 of file vbd500.cpp.

References cbd300_InvCurrentBasis::bd300UnlockTree(), cbd600_Node::bd600RecPtr(), cbd600_Node::bd600Release(), cbd600_Node::m_Current, and cbd600_Node::m_pNode.

{
    ROUTINE_DBG_MEO00 ("bd500Break");

    const tgg00_RecPtr pRec = m_Node.bd600RecPtr( recIndex );

    gg05KeyAssign (REINTERPRET_CAST(tsp00_KeyPtr,pRec)+cgg_rec_key_offset, pRec->recKeyLen_gg00(),
        rePositionKey, rePositionKeyLen, m_TrError);
    if ( e_ok != m_TrError ) return;

#   if COMPILEMODE_MEO00 >= SLOW_MEO00 
    g01opmsg (sp3p_knldiag, sp3m_info, csp3_bd_msg, csp3_n_btree,
          "BD500: Interrupting  Id:" , m_Node.m_pNode->nd_id() );
#   endif

    m_Node.bd600Release(IS_CHANGED_BD600);
    m_Node.m_Current.bd300UnlockTree();
}


Generated by  Doxygen 1.6.0   Back to index