Skip to content

Commit

Permalink
return blocks in descending heartbeat order
Browse files Browse the repository at this point in the history
  • Loading branch information
guymguym committed Dec 8, 2014
1 parent 36ef365 commit 07f7c4c
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion src/server/object_mapper.js
Original file line number Diff line number Diff line change
Expand Up @@ -291,7 +291,8 @@ function bad_block_in_part(obj, start, end, fragment, block_id, is_write) {
function get_part_info(part, chunk, blocks, set_obj) {
var fragments = [];
_.each(_.groupBy(blocks, 'fragment'), function(fragment_blocks, fragment) {
fragments[fragment] = _.map(fragment_blocks, get_block_info);
var sorted_blocks = _.sortBy(fragment_blocks, block_heartbeat_sort);
fragments[fragment] = _.map(sorted_blocks, get_block_info);
});
var p = _.pick(part, 'start', 'end', 'chunk_offset');
p.fragments = fragments;
Expand Down Expand Up @@ -338,3 +339,10 @@ function sanitize_object_range(obj, start, end) {
end: end,
};
}

/**
* sorting function for sorting blocks with most recent heartbeat first
*/
function block_heartbeat_sort(block) {
return -block.node.heartbeat.getTime();
}

0 comments on commit 07f7c4c

Please sign in to comment.