Profile() Step Fails in Gremlin Javascript (Graph Binary)

30 views
Skip to first unread message

Steve A.

unread,
Feb 21, 2025, 2:19:23 AMFeb 21
to Gremlin-users
The profile() traversal step always throws the following error in AWS Neptune using Graph Binary serialization.

node_modules/gremlin/lib/structure/io/binary/internals/AnySerializer.js:92      

 throw this.ioc.utils.des_error({ serializer: this, args: arguments, err });       ^  Error: AnySerializer.deserialize(cursor=090000000001210000000000000000012d000000000058dd00b8000000102c00...): ArraySerializer.deserialize(cursor=210000000000000000012d000000000058dd00b8000000102c0000000007302e...): {item_0}: AnySerializer.deserialize(cursor=210000000000000000012d000000000058dd00b8000000102c0000000007302e...): TraverserSerializer.deserialize(cursor=2d000000000058dd00b8000000102c0000000007302e302e3028290000000f49...): {value}: AnySerializer.deserialize(cursor=2d000000000058dd00b8000000102c0000000007302e302e3028290000000f49...): unknown {type_code}.     at AnySerializer.deserialize (dir/node_modules/gremlin/lib/structure/io/binary/internals/AnySerializer.js:87:15)     at TraverserSerializer.deserialize (dir/node_modules/gremlin/lib/structure/io/binary/internals/TraverserSerializer.js:109:64)     at AnySerializer.deserialize (dir/node_modules/gremlin/lib/structure/io/binary/internals/AnySerializer.js:90:25)     at ArraySerializer.deserialize (dir/node_modules/gremlin/lib/structure/io/binary/internals/ArraySerializer.js:120:66)     at AnySerializer.deserialize (dir/node_modules/gremlin/lib/structure/io/binary/internals/AnySerializer.js:90:25)     at GraphBinaryReader.readResponse (dir/node_modules/gremlin/lib/structure/io/binary/internals/GraphBinaryReader.js:76:59)     at Connection._handleMessage (dir/node_modules/gremlin/lib/driver/connection.js:296:35)     at WebSocket.<anonymous> (dir/guide/node_modules/gremlin/lib/driver/connection.js:141:43)     at WebSocket.emit (node:events:518:28)     at Receiver.receiverOnMessage (dir/node_modules/ws/lib/websocket.js:1220:20)

Is this a bytecode or AWS Neptune issue? Has the profile() step been deprecated?

Stephen Mallette

unread,
Feb 24, 2025, 12:06:19 PMFeb 24
to gremli...@googlegroups.com
With Neptune you must prefer use of the /profile API over the profile() step (with similar advice for explain()):




--
You received this message because you are subscribed to the Google Groups "Gremlin-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gremlin-user...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/gremlin-users/21f1347f-214a-4dc4-8e4b-769cda395510n%40googlegroups.com.

Steve A.

unread,
Feb 25, 2025, 12:23:12 AMFeb 25
to Gremlin-users
Why does this work for GraphJSON but not GraphBinary serialization?

Stephen Mallette

unread,
Feb 25, 2025, 7:27:34 AMFeb 25
to gremli...@googlegroups.com
I probably should have provided a few more words of context in my first reply. I won't focus on the error  itself too much, because despite sending a response, Neptune essentially does not support the TinkerPop profile() and explain() steps. If you look at the difference in output between what you get in GraphSON or say Gremlin Console, you will note that there is a lot more information provided in the /profile and /explain endpoints. You should simply use those for Neptune. 

Reply all
Reply to author
Forward
0 new messages