1 回答

TA貢獻1777條經驗 獲得超10個贊
Lambda 無法序列化,這就是您收到該異常的原因。此外,Neptune 不支持lambda ,因此您的方法無論如何都行不通。您使用 TinkerGraph 進行的實驗之所以有效,是因為它沒有任何這些限制。
我不確定你能做些什么來解決這個問題,因為你提到了:
我確實需要一種方法來確定遍歷被中斷的原因。
也許你可以constant()以某種方式使用?
gremlin> g = TinkerFactory.createModern().traversal()
==>graphtraversalsource[tinkergraph[vertices:6 edges:6], standard]
gremlin> g.V().has('person','name','marko').fold().coalesce(unfold(), constant('Not Found'))
==>v[1]
gremlin> g.V().has('person','name','x').fold().coalesce(unfold(), constant('Not Found'))
==>Not Found
我不確定這是否會完美運行,因為你想
保持圖形不變
根據您編寫 Gremlin 的方式,這在 TinkerGraph 中甚至行不通。constant()不是將被識別為回滾事務的方法的“錯誤條件”。也許這只是需要注意的事情。根據您的邏輯的復雜程度,您最終可能會得到一些非常難以閱讀的 Gremlin。您可能需要重新考慮您的方法。
添加回答
舉報