[
https://issues.apache.org/jira/browse/IGNITE-708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15080465#comment-15080465
]
Gianfranco Murador edited comment on IGNITE-708 at 1/3/16 4:27 PM:
-------------------------------------------------------------------
Hello everyone, I'm currently working on this ticket. I wanted to ask on which
scenario is used riservation of a local partition. I ask this because in the
class GridDhtLocalPartition we use the stamps of the state of the partition as
reservations.
BTW, I'm editing the GridDhtLocalPartition class inserting two new methods:
/**
* check is the state is changed in the nearest moment
* of the argument value
* @param current the current moment timestamp
* @return true if changed, false otherwise
*/
private boolean isStateChanged(long current) {
return false;
}
/**
* Add the current state at the history.
* @param currentTime moment
* @param state reference to state
*/
private void addStateToHistory ( long currentTime, GridDhtPartitionState
state){
statesHistory.put(currentTime, state);
}
The idea is create an history of the state of the local partitions, to check if
the status is changed before sending the message to the oldest node.
was (Author: glutters):
Hello everyone, I'm currently working on this ticket. I wanted to ask on which
scenario is used riservation of a local partition. I ask this because in the
class GridDhtLocalPartition we use the stamps of the state of the partition as
reservations.
BTW, I'm editing the GridDhtLocalPartition class inserting two new methods:
/**
* check is the state is changed in the nearest moment
* of the argument value
* @param current the current moment timestamp
* @return true if changed, false otherwise
*/
private boolean isStateChanged(long current) {
return false;
}
/**
* Add the current state at the history.
* @param currentTime moment
* @param state reference to state
*/
private void addStateToHistory ( long currentTime, GridDhtPartitionState
state){
statesHistory.put(currentTime, state);
}
> Need to remove background partition exchange
> --------------------------------------------
>
> Key: IGNITE-708
> URL: https://issues.apache.org/jira/browse/IGNITE-708
> Project: Ignite
> Issue Type: Task
> Affects Versions: ignite-1.4
> Reporter: Yakov Zhdanov
> Assignee: Gianfranco Murador
> Priority: Blocker
> Labels: datagrid
> Fix For: 1.6
>
>
> Now every node sends its partition map to cache coordinator (which is the
> oldest node in topology) and coordinator spreads full partition map to every
> node in topology. This happens for each cache separately. This seems to take
> place even if there were no changes to local partition maps. Given we
> guarantee communication message delivery this background process seems to be
> an overkill.
> Exchange should happen only if any changes took place.
> After dynamic cache start has been introduced, we can have significant amount
> of live caches at some point of app lifecycle and app may suffer from
> background exchange which is obviously not a requirement (and may be never
> has been the one).
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)