giraph-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jake Mannix (Commented) (JIRA)" <>
Subject [jira] [Commented] (GIRAPH-80) Don't expose the list holding the messages in BasicVertex
Date Mon, 14 Nov 2011 20:32:54 GMT


Jake Mannix commented on GIRAPH-80:

Can we change both addMessages() and getMessages() to take/return Iterable<M>?  That
way it can be scanned multiple times without multiple calls to the vertex.

void abstract addMessages(Iterable<M> messages);
Iterable<M> abstract getMessages();

> Don't expose the list holding the messages in BasicVertex
> ---------------------------------------------------------
>                 Key: GIRAPH-80
>                 URL:
>             Project: Giraph
>          Issue Type: Improvement
>    Affects Versions: 0.70.0
>            Reporter: Sebastian Schelter
> I'm currently trying to implement my own memory efficient vertex (similar to LongDoubleFloatDoubleVertex)
and ran into problems with getMsgList()
> This method returns a list pointing to the messages of the vertex and it is modified
externally (BasicRPCCommunications calls clear() and addAll() e.g.). This makes it very hard
to use something else than a java.util.List internally (LongDoubleFloatDoubleVertex "hacked"
around this) and it is generally dangerous to have the internal state of an object be modified
externally. It also makes the code harder to read and understand.
> I'd suggest to change the API to let a vertex handle the modifications itself internally
(e.g. add something like pushMessages(...))

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message