Examples of AgreementTaskMessage


Examples of org.voltcore.messaging.AgreementTaskMessage

                 * at the end of this block
                 */
                if (!isRead) {
                    for (long initiatorHSId : m_hsIds) {
                        if (initiatorHSId == m_hsId) continue;
                        AgreementTaskMessage atm =
                            new AgreementTaskMessage(
                                    r,
                                    txnId,
                                    m_hsId,
                                    m_safetyState.getNewestGloballySafeTxnId());
                        m_mailbox.send( initiatorHSId, atm);
                    }
                }

                //Process the ATM eagerly locally to aid
                //in having a complete set of stuff to ship
                //to a recovering agreement site
                AgreementTaskMessage atm =
                    new AgreementTaskMessage(
                            new Request(r),
                            txnId,
                            m_hsId,
                            m_safetyState.getNewestGloballySafeTxnId());
                atm.m_sourceHSId = m_hsId;
                processMessage(atm);

                /*
                 * Don't send a heartbeat out for ever single blocked read that occurs
                 * Try and limit to 2000 a second which is a lot and should be pretty
                 * close to the previous behavior of propagating all reads. My measurements
                 * don't show the old behavior is better than none at all, but I fear
                 * change.
                 */
                if (isRead) {
                    final long now = System.nanoTime();
                    if (TimeUnit.NANOSECONDS.toMicros(now - m_lastHeartbeatTime) > 500) {
                        m_lastHeartbeatTime = now;
                        sendHeartbeats();
                    }
                }
            }
        } else if (message instanceof AgreementTaskMessage) {
            AgreementTaskMessage atm = (AgreementTaskMessage)message;
            if (!m_transactionsById.containsKey(atm.m_txnId) && atm.m_txnId >= m_minTxnIdAfterRecovery) {
                m_txnQueue.noteTransactionRecievedAndReturnLastSeen(atm.m_initiatorHSId,
                        atm.m_txnId,
                        atm.m_lastSafeTxnId);

View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.