[ 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)