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

void RTEHSS_StandbyNodeList::GotRegisterStandby ( SAPDB_Int4  nodeIndex,
SAPDB_UInt4  lastSavepointOffset 
)

Notify that a REGISTER STANDBY command was received for the node.

Updates timeOfRegisterStandby, lastSavepointOffset and sets state to 'InRegisterStandby'.

Parameters:
nodeIndex [in] index node to mark as removed (result of FindNode call)
Updates timeOfRegisterStandby, lastSavepointOffset and sets state to 'InRegisterStandby'.
Parameters:
nodeIndex [in] index node to mark as removed (result of FindNode call)

Definition at line 286 of file RTEHSS_StandbyNodeList.cpp.

References RTEHSS_StandbyNodeList::Statistic::lastSavepointOffset, m_ListModificationCounter, m_NodeList, m_Spinlock, RTEHSS_StandbyNodeList::Statistic::nodeState, RTESys_MicroSecondTime(), StateInRegisterStandby, StateWaitForSynchronize, and RTEHSS_StandbyNodeList::Statistic::timeOfRegisterStandby.

Referenced by Kernel_Administration::RegisterStandby().

{
    Statistic *nodeEntry;
    SAPDB_UInt8 now = RTESys_MicroSecondTime();
    {
        RTESync_LockedScope Lock(m_Spinlock);

        nodeEntry = m_NodeList[nodeIndex];

        if ( StateWaitForSynchronize == nodeEntry->nodeState )
        {
            --m_ListModificationCounter;
        }
        nodeEntry->nodeState = StateInRegisterStandby;
        nodeEntry->lastSavepointOffset = lastSavepointOffset;
        nodeEntry->timeOfRegisterStandby = now;
    }
}


Generated by  Doxygen 1.6.0   Back to index