[
https://issues.apache.org/jira/browse/HIVE-10233?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14597139#comment-14597139
]
Mostafa Mokhtar commented on HIVE-10233:
----------------------------------------
[~gunther]
Should totalAvailableMemory be HIVECONVERTJOINNOCONDITIONALTASKTHRESHOLD?
resourceAvailable.getMemory() would basically return container size, this will
result in a lot of GC if all memory gets used up.
Change Log.Debug to Log.INFO and print the input size.
{code}
for (MapJoinOperator mj : mapJoins) {
mj.getConf().setMemoryNeeded(minMemory);
LOG.info("Setting " + minMemory + " bytes needed for " + mj);
}
{code}
Also I am not following the logic here, shouldn't the memory needed per
operator be something like "(estimate size) / (Total input sizes) x
memoryAvailable" ?
{code}
int numJoins = mapJoins.size();
long minMemory = totalAvailableMemory / ((numJoins > 0) ?
numJoins : 1);
minMemory = Math.min(minMemory, onePercentMemory);
for (MapJoinOperator mj : mapJoins) {
mj.getConf().setMemoryNeeded(minMemory);
if (LOG.isDebugEnabled()) {
LOG.debug("Setting " + minMemory + " bytes needed for " + mj);
}
}
{code}
> Hive on tez: memory manager for grace hash join
> -----------------------------------------------
>
> Key: HIVE-10233
> URL: https://issues.apache.org/jira/browse/HIVE-10233
> Project: Hive
> Issue Type: Bug
> Components: Tez
> Affects Versions: llap, 2.0.0
> Reporter: Vikram Dixit K
> Assignee: Gunther Hagleitner
> Attachments: HIVE-10233-WIP-2.patch, HIVE-10233-WIP-3.patch,
> HIVE-10233-WIP-4.patch, HIVE-10233-WIP-5.patch, HIVE-10233-WIP-6.patch,
> HIVE-10233-WIP-7.patch, HIVE-10233-WIP-8.patch, HIVE-10233.08.patch,
> HIVE-10233.09.patch, HIVE-10233.10.patch, HIVE-10233.11.patch
>
>
> We need a memory manager in llap/tez to manage the usage of memory across
> threads.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)