blob: 91af4e42e6f79b325123c76d8f851f4a5b761a9b [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_162) on Thu Feb 01 21:39:09 KST 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>BlockManagerWorker (Coral Project 0.1-SNAPSHOT API)</title>
<meta name="date" content="2018-02-01">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="BlockManagerWorker (Coral Project 0.1-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/BlockManagerWorker.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../../../edu/snu/coral/runtime/executor/data/CoderManager.html" title="class in edu.snu.coral.runtime.executor.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?edu/snu/coral/runtime/executor/data/BlockManagerWorker.html" target="_top">Frames</a></li>
<li><a href="BlockManagerWorker.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">edu.snu.coral.runtime.executor.data</div>
<h2 title="Class BlockManagerWorker" class="title">Class BlockManagerWorker</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>edu.snu.coral.runtime.executor.data.BlockManagerWorker</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/javax/annotation/concurrent.ThreadSafe.html?is-external=true" title="class or interface in javax.annotation">@ThreadSafe</a>
public final class <span class="typeNameLabel">BlockManagerWorker</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">Executor-side block manager.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/executor/data/BlockManagerWorker.html#commitBlock-java.lang.String-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-java.util.List-java.lang.String-int-edu.snu.coral.common.ir.edge.executionproperty.UsedDataHandlingProperty.Value-">commitBlock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;partitionSizeInfo,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;srcIRVertexId,
int&nbsp;expectedReadTotal,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/UsedDataHandlingProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">UsedDataHandlingProperty.Value</a>&nbsp;usedDataHandling)</code>
<div class="block">Notifies that all writes for a block is end.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/executor/data/BlockManagerWorker.html#createBlock-java.lang.String-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-">createBlock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore)</code>
<div class="block">Creates a new block.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/executor/data/BlockManagerWorker.html#onPullRequest-edu.snu.coral.runtime.executor.data.blocktransfer.BlockOutputStream-">onPullRequest</a></span>(<a href="../../../../../../edu/snu/coral/runtime/executor/data/blocktransfer/BlockOutputStream.html" title="class in edu.snu.coral.runtime.executor.data.blocktransfer">BlockOutputStream</a>&lt;?&gt;&nbsp;outputStream)</code>
<div class="block">Respond to a pull request by another executor.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/executor/data/BlockManagerWorker.html#onPushNotification-edu.snu.coral.runtime.executor.data.blocktransfer.BlockInputStream-">onPushNotification</a></span>(<a href="../../../../../../edu/snu/coral/runtime/executor/data/blocktransfer/BlockInputStream.html" title="class in edu.snu.coral.runtime.executor.data.blocktransfer">BlockInputStream</a>&nbsp;inputStream)</code>
<div class="block">Respond to a push notification by another executor.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/executor/data/BlockManagerWorker.html#putPartitions-java.lang.String-java.lang.Iterable-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-">putPartitions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../../edu/snu/coral/runtime/executor/data/Partition.html" title="interface in edu.snu.coral.runtime.executor.data">Partition</a>&gt;&nbsp;partitions,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore)</code>
<div class="block">Store an iterable of data partitions to a block in the target <code>BlockStore</code>.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/executor/data/BlockManagerWorker.html#queryBlock-java.lang.String-java.lang.String-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-edu.snu.coral.runtime.common.data.KeyRange-">queryBlock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;runtimeEdgeId,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore,
<a href="../../../../../../edu/snu/coral/runtime/common/data/KeyRange.html" title="interface in edu.snu.coral.runtime.common.data">KeyRange</a>&nbsp;keyRange)</code>
<div class="block">Inquiries the location of the specific block and routes the request to the local block manager worker
or to the lower data plane.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/executor/data/BlockManagerWorker.html#removeBlock-java.lang.String-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-">removeBlock</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore)</code>
<div class="block">Remove the block from store.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="createBlock-java.lang.String-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createBlock</h4>
<pre>public&nbsp;void&nbsp;createBlock(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore)</pre>
<div class="block">Creates a new block.
A stale data created by previous failed task should be handled during the creation of new block.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>blockId</code> - the ID of the block to create.</dd>
<dd><code>blockStore</code> - the store to place the block.</dd>
</dl>
</li>
</ul>
<a name="queryBlock-java.lang.String-java.lang.String-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-edu.snu.coral.runtime.common.data.KeyRange-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>queryBlock</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&gt;&nbsp;queryBlock(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;runtimeEdgeId,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore,
<a href="../../../../../../edu/snu/coral/runtime/common/data/KeyRange.html" title="interface in edu.snu.coral.runtime.common.data">KeyRange</a>&nbsp;keyRange)</pre>
<div class="block">Inquiries the location of the specific block and routes the request to the local block manager worker
or to the lower data plane.
This can be invoked multiple times per blockId (maybe due to failures).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>blockId</code> - of the block.</dd>
<dd><code>runtimeEdgeId</code> - id of the runtime edge that corresponds to the block.</dd>
<dd><code>blockStore</code> - for the data storage.</dd>
<dd><code>keyRange</code> - the key range descriptor</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent"><code>CompletableFuture</code></a> of the block.</dd>
</dl>
</li>
</ul>
<a name="putPartitions-java.lang.String-java.lang.Iterable-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putPartitions</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&gt;&nbsp;putPartitions(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../../../edu/snu/coral/runtime/executor/data/Partition.html" title="interface in edu.snu.coral.runtime.executor.data">Partition</a>&gt;&nbsp;partitions,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore)</pre>
<div class="block">Store an iterable of data partitions to a block in the target <code>BlockStore</code>.
Invariant: This should not be invoked after a block is committed.
Invariant: This method may not support concurrent write for a single block.
Only one thread have to write at once.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>blockId</code> - of the block.</dd>
<dd><code>partitions</code> - to save to a block.</dd>
<dd><code>blockStore</code> - to store the block.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util"><code>Optional</code></a> of the size of each written block.</dd>
</dl>
</li>
</ul>
<a name="commitBlock-java.lang.String-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-java.util.List-java.lang.String-int-edu.snu.coral.common.ir.edge.executionproperty.UsedDataHandlingProperty.Value-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commitBlock</h4>
<pre>public&nbsp;void&nbsp;commitBlock(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;partitionSizeInfo,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;srcIRVertexId,
int&nbsp;expectedReadTotal,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/UsedDataHandlingProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">UsedDataHandlingProperty.Value</a>&nbsp;usedDataHandling)</pre>
<div class="block">Notifies that all writes for a block is end.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>blockId</code> - the ID of the block.</dd>
<dd><code>blockStore</code> - the store to save the block.</dd>
<dd><code>partitionSizeInfo</code> - the size metric of partitions.</dd>
<dd><code>srcIRVertexId</code> - the IR vertex ID of the source task.</dd>
<dd><code>expectedReadTotal</code> - the expected number of read for this block.</dd>
<dd><code>usedDataHandling</code> - how to handle the used block.</dd>
</dl>
</li>
</ul>
<a name="removeBlock-java.lang.String-edu.snu.coral.common.ir.edge.executionproperty.DataStoreProperty.Value-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeBlock</h4>
<pre>public&nbsp;void&nbsp;removeBlock(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;blockId,
<a href="../../../../../../edu/snu/coral/common/ir/edge/executionproperty/DataStoreProperty.Value.html" title="enum in edu.snu.coral.common.ir.edge.executionproperty">DataStoreProperty.Value</a>&nbsp;blockStore)</pre>
<div class="block">Remove the block from store.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>blockId</code> - the ID of the block to remove.</dd>
<dd><code>blockStore</code> - the store which contains the block.</dd>
</dl>
</li>
</ul>
<a name="onPullRequest-edu.snu.coral.runtime.executor.data.blocktransfer.BlockOutputStream-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onPullRequest</h4>
<pre>public&nbsp;void&nbsp;onPullRequest(<a href="../../../../../../edu/snu/coral/runtime/executor/data/blocktransfer/BlockOutputStream.html" title="class in edu.snu.coral.runtime.executor.data.blocktransfer">BlockOutputStream</a>&lt;?&gt;&nbsp;outputStream)</pre>
<div class="block">Respond to a pull request by another executor.
<p>
This method is executed by {edu.snu.coral.runtime.executor.data.blocktransfer.BlockTransport} thread. \
Never execute a blocking call in this method!</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>outputStream</code> - <a href="../../../../../../edu/snu/coral/runtime/executor/data/blocktransfer/BlockOutputStream.html" title="class in edu.snu.coral.runtime.executor.data.blocktransfer"><code>BlockOutputStream</code></a></dd>
</dl>
</li>
</ul>
<a name="onPushNotification-edu.snu.coral.runtime.executor.data.blocktransfer.BlockInputStream-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>onPushNotification</h4>
<pre>public&nbsp;void&nbsp;onPushNotification(<a href="../../../../../../edu/snu/coral/runtime/executor/data/blocktransfer/BlockInputStream.html" title="class in edu.snu.coral.runtime.executor.data.blocktransfer">BlockInputStream</a>&nbsp;inputStream)</pre>
<div class="block">Respond to a push notification by another executor.
<p>
A push notification is generated when a remote executor invokes <a href="../../../../../../edu/snu/coral/runtime/executor/data/package-summary.html"><code>.blocktransfer.BlockTransfer#initiatePush(String, boolean, String, String, HashRange)</code></a> to transfer
a block to another executor.
<p>
This method is executed by {edu.snu.coral.runtime.executor.data.blocktransfer.BlockTransport}
thread. Never execute a blocking call in this method!</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>inputStream</code> - <a href="../../../../../../edu/snu/coral/runtime/executor/data/blocktransfer/BlockInputStream.html" title="class in edu.snu.coral.runtime.executor.data.blocktransfer"><code>BlockInputStream</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/BlockManagerWorker.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../../../edu/snu/coral/runtime/executor/data/CoderManager.html" title="class in edu.snu.coral.runtime.executor.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?edu/snu/coral/runtime/executor/data/BlockManagerWorker.html" target="_top">Frames</a></li>
<li><a href="BlockManagerWorker.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2018. All rights reserved.</small></p>
</body>
</html>