> On Jan. 5, 2018, 11:03 a.m., Graham Wallis wrote:
> > Regarding serialization with JanusGraph:
> > 
> > I think JanusGraph's StandardSerializer has support for Lists - in the 
> > xxxArraySerializer classes (registered as 22 thru 30). But I don't see 
> > anything in StandardSerializer that handles Maps....which seems to 
> > contradict your email so is slightly confusing. Presumably we (Atlas) work 
> > our way through the Map delegating serialization of each entry to the 
> > appopriate serializer?
> > 
> > I don't think there is anything (as standard) in JanusGraph's 
> > StandardSerializer that would help with BigDecimal, BigInteger or 
> > TypeCategorySerializer - but for any Atlas specific classes we could 
> > register Custom Serializers with JanusGraph - i.e. located above offset 
> > 100. TypeCategory is only a skinny layer over EnumSerializer, so not sure 
> > it is worth the effort? I think we could just keep our existing Atlas 
> > BigDecimalSerializer, BigIntegerSerializer and TypeCategorySerializer.
> > 
> > 
> > 
> > In terms of Atlas classes/methods:
> > 
> > Why do we have both GraphHelper:getMapValueProperty() and 
> > EntityGraphMapper:getMapValueProperty()? Should one delegate to the other?
> > Also, for anything that is not a Reference, one of the above methods 
> > explicitly handles List and Map property values and returns List.class and 
> > Map.class objects, whereas the other returns an Object.class. Should this 
> > be consistent across both methods?

Graham - Titan-0.5.4 has built-in support for serialization of List objects 
(see StandardAttributeHandling.java - 
https://github.com/thinkaurelius/titan/blob/titan05/titan-core/src/main/java/com/thinkaurelius/titan/graphdb/database/serialize/StandardAttributeHandling.java#L36);
 and this was removed in JanusGraph (and Titan-1.0). Changes in this patch are 
inline with JanusGraph support for HashMap objects (StandardSerializer.java - 
https://github.com/JanusGraph/janusgraph/blob/ab53b5d392a39e82553063ad7c62b10d51e55ec8/janusgraph-core/src/main/java/org/janusgraph/graphdb/database/serialize/StandardSerializer.java#L132).
 
Perhaps we can replace BigIntegerSerializer, BigDecimalSerializer and 
TypeCategorySerializer with SerializableSerializer?


- Madhan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64943/#review194849
-----------------------------------------------------------


On Jan. 4, 2018, 3:24 a.m., Madhan Neethiraj wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/64943/
> -----------------------------------------------------------
> 
> (Updated Jan. 4, 2018, 3:24 a.m.)
> 
> 
> Review request for atlas.
> 
> 
> Bugs: ATLAS-2332
>     https://issues.apache.org/jira/browse/ATLAS-2332
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Updated type-def and instance modules to enable attributes with nested 
> collection datatypes, like map<string,array<string>>, 
> array<map<string,string>>
> 
> 
> Diffs
> -----
> 
>   
> graphdb/janus/src/main/java/org/apache/atlas/repository/graphdb/janus/AtlasJanusGraphDatabase.java
>  e507a8ad 
>   
> graphdb/janus/src/main/java/org/apache/atlas/repository/graphdb/janus/serializer/StringListSerializer.java
>  fa6f5fda 
>   intg/src/test/java/org/apache/atlas/TestUtilsV2.java bbccf77c 
>   repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 
> 3e602431 
>   
> repository/src/main/java/org/apache/atlas/repository/store/graph/v1/EntityGraphMapper.java
>  f6a15b69 
>   
> repository/src/main/java/org/apache/atlas/repository/store/graph/v1/EntityGraphRetriever.java
>  706e7373 
>   
> repository/src/test/java/org/apache/atlas/repository/store/graph/AtlasTypeDefGraphStoreTest.java
>  e1047220 
>   
> repository/src/test/java/org/apache/atlas/repository/store/graph/v1/AtlasEntityStoreV1Test.java
>  1f8b9fdb 
> 
> 
> Diff: https://reviews.apache.org/r/64943/diff/1/
> 
> 
> Testing
> -------
> 
> added unit tests to validate handling of attributes with nested collection 
> datatypes
> 
> 
> Thanks,
> 
> Madhan Neethiraj
> 
>

Reply via email to