Module Neodriver_eio.Summary

The summary of a query result (counters, plan, notifications, ...).

The summary of a query result, derived from the final PULL summary metadata.

Plan, profile, notifications and GQL status objects are hydrated into Values.t, hiding the PackStream representation from the caller.

type counters = {
  1. nodes_created : int;
  2. nodes_deleted : int;
  3. relationships_created : int;
  4. relationships_deleted : int;
  5. properties_set : int;
  6. labels_added : int;
  7. labels_removed : int;
  8. indexes_added : int;
  9. indexes_removed : int;
  10. constraints_added : int;
  11. constraints_removed : int;
  12. system_updates : int;
  13. contains_updates : bool;
  14. contains_system_updates : bool;
}

The write-counters of a query result (from the PULL summary's stats).

type server_info = {
  1. address : Neodriver_core.Addressing.t;
  2. agent : string option;
  3. protocol_version : int * int;
}

The server the query ran on: its address, the agent string from HELLO and the negotiated protocol_version.

type t = {
  1. counters : counters;
  2. plan : Neodriver_core.Values.t option;
  3. profile : Neodriver_core.Values.t option;
  4. query_type : string;
  5. database : string option;
  6. result_available_after : int option;
  7. result_consumed_after : int option;
  8. notifications : Neodriver_core.Values.t list;
  9. gql_status_objects : Neodriver_core.Values.t list;
  10. server_info : server_info;
  11. query : string;
  12. parameters : (string * Neodriver_core.Values.t) list;
}

A query result summary: counters, plan/profile, timings, notifications and GQL status objects, the server_info and the original query/parameters.

val of_stream : Conn.stream -> query:string -> parameters:(string * Neodriver_core.Values.t) list -> t

Build the summary from a completed stream (after the final PULL). The plan, profile, notifications and GQL status objects are hydrated into Values.t.