ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gianfranco Murador (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (IGNITE-708) Need to remove background partition exchange
Date Sun, 03 Jan 2016 16:28:39 GMT

    [ 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:28 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) {
        // TODO 
    }

    /**
     * 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);
    }

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.


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

Mime
View raw message