File tree Expand file tree Collapse file tree 1 file changed +13
-1
lines changed Expand file tree Collapse file tree 1 file changed +13
-1
lines changed Original file line number Diff line number Diff line change @@ -46,7 +46,19 @@ final class BoltConnection implements ConnectionInterface
46
46
private BoltFactory $ factory ;
47
47
48
48
private string $ serverState = 'DISCONNECTED ' ;
49
- /** @var list<WeakReference<CypherList>> */
49
+ /**
50
+ * @note We are using references to "subscribed results" to maintain backwards compatibility and try and strike
51
+ * a balance between performance and ease of use.
52
+ * The connection will discard or pull the results depending on the server state transition. This way end
53
+ * users don't have to worry about consuming result sets, it will all happen behind te scenes. There are some
54
+ * edge cases where the result set will be pulled or discarded when it is not strictly necessary, and we
55
+ * should introduce a "manual" mode later down the road to allow the end users to optimise the result
56
+ * consumption themselves.
57
+ * A great moment to do this would be when neo4j 5 is released as it will presumably allow us to do more
58
+ * stuff with PULL and DISCARD messages.
59
+ *
60
+ * @var list<WeakReference<CypherList>>
61
+ */
50
62
private array $ subscribedResults = [];
51
63
52
64
/**
You can’t perform that action at this time.
0 commit comments