Add EventEmitter/streaming support in the API #50

Open
blevine opened this Issue Sep 28, 2012 · 4 comments

3 participants

@blevine

The new neo4j streaming support provides some performance enhancements. However, clients of the node-neo4j API still have to wait for the entire result set to be collected, possibly converted to Node or Relationship objects, and then finally returned.

With neo4j streaming, a streaming JSON API such as Clarinet (https://github.com/dscape/clarinet), and an EventEmitter-based implementation, node-neo4j could return each result in a result set as it is received in something like a stream.on('result', obj) API.

This would obviously be a big win especially for large result sets.

@aseemk
The Thingdom member

Great request. This would require some re-thinking at both the architectural and API levels. I've been thinking of starting a wiki page for v0.3 planning -- I'd like to rethink a lot of the API. Let's consider how this could fit in for that.

@krnlde

Any news on that? This is a pretty neat feature I'd love to see in node-neo4j which would also make it the most promising lib for node and neo4j.

@aseemk
The Thingdom member

Good news — getting tackled in the currently ongoing v2 redesign!

Issue: #143 / PR: #145
WIP docs: https://github.com/thingdom/node-neo4j/blob/v2/API_v2.md

@aseemk aseemk referenced this issue Jan 30, 2015
Open

v2 implementation! #145

25 of 27 tasks complete
@aseemk aseemk added fixed-in-v2 and removed fixed-in-v2 labels Oct 12, 2015
@aseemk
The Thingdom member

Update here: v2 won't have this 100% for now, but (a) it's now at least possible (you just have to wire things up manually, but I'll document how), and (b) an end-to-end impl. is still planned.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment