public final void lastResult(final Object oneResult, final boolean doTXFlush, final boolean sendTXChanges, final boolean finishTXRead) { final TXStateProxy txProxy; if (doTXFlush && (txProxy = this.replyTX) != null) { // flush all batched TXStateProxy ops before sending lastResult txProxy.flushPendingOps(this.dm); } else if (this.txProxy == null) { // check if there was a TX started within function body then wait for // commit before returning final TXManagerImpl.TXContext txContext = TXManagerImpl .currentTXContext(); if (txContext != null) { txContext.waitForPendingCommit(); } } if (GemFireXDUtils.TraceRSIter | SanityManager.isFinerEnabled) { SanityManager.DEBUG_PRINT(GfxdConstants.TRACE_RSITER, "GfxdFuntionMessage: sending last result to recipient " + getSenderForReply() + " with " + getTXState() + ": " + oneResult); } // before sending lastResult, check if any bucket has moved checkAllBucketsHosted(); GfxdFunctionReplyMessage replyMsg = new GfxdFunctionReplyMessage(oneResult, this.replySequenceId, true, this.processorId, this, sendTXChanges, finishTXRead); putReply(replyMsg); this.replySequenceId = TERMINAL_REPLY_SEQID;
public final void lastResult(final Object oneResult, final boolean doTXFlush, final boolean sendTXChanges, final boolean finishTXRead) { final TXStateProxy txProxy; if (doTXFlush && (txProxy = this.replyTX) != null) { // flush all batched TXStateProxy ops before sending lastResult txProxy.flushPendingOps(this.dm); } else if (this.txProxy == null) { // check if there was a TX started within function body then wait for // commit before returning final TXManagerImpl.TXContext txContext = TXManagerImpl .currentTXContext(); if (txContext != null) { txContext.waitForPendingCommit(); } } if (GemFireXDUtils.TraceRSIter | SanityManager.isFinerEnabled) { SanityManager.DEBUG_PRINT(GfxdConstants.TRACE_RSITER, "GfxdFuntionMessage: sending last result to recipient " + getSenderForReply() + " with " + getTXState() + ": " + oneResult); } // before sending lastResult, check if any bucket has moved checkAllBucketsHosted(); GfxdFunctionReplyMessage replyMsg = new GfxdFunctionReplyMessage(oneResult, this.replySequenceId, true, this.processorId, this, sendTXChanges, finishTXRead); putReply(replyMsg); this.replySequenceId = TERMINAL_REPLY_SEQID;
public final void lastResult(final Object oneResult, final boolean doTXFlush, final boolean sendTXChanges, final boolean finishTXRead) { final TXStateProxy txProxy; if (doTXFlush && (txProxy = this.replyTX) != null) { // flush all batched TXStateProxy ops before sending lastResult txProxy.flushPendingOps(this.dm); } else if (this.txProxy == null) { // check if there was a TX started within function body then wait for // commit before returning final TXManagerImpl.TXContext txContext = TXManagerImpl .currentTXContext(); if (txContext != null) { txContext.waitForPendingCommit(); } } if (GemFireXDUtils.TraceRSIter | SanityManager.isFinerEnabled) { SanityManager.DEBUG_PRINT(GfxdConstants.TRACE_RSITER, "GfxdFuntionMessage: sending last result to recipient " + getSenderForReply() + " with " + getTXState() + ": " + oneResult); } // before sending lastResult, check if any bucket has moved checkAllBucketsHosted(); GfxdFunctionReplyMessage replyMsg = new GfxdFunctionReplyMessage(oneResult, this.replySequenceId, true, this.processorId, this, sendTXChanges, finishTXRead); putReply(replyMsg); this.replySequenceId = TERMINAL_REPLY_SEQID;