Skip to content

Commit fe8a52a

Browse files
committed
Small fixes
1 parent 268560e commit fe8a52a

3 files changed

Lines changed: 10 additions & 8 deletions

File tree

lib/src/graph.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -431,8 +431,8 @@ impl Graph {
431431
}
432432

433433
#[cfg(feature = "unstable-bolt-protocol-impl-v2")]
434-
pub fn with_session(&self, config: Option<SessionConfig>) -> Session<'_> {
435-
Session::new(config.unwrap_or_default(), self)
434+
pub fn with_session(&self, config: Option<SessionConfig>) -> Session {
435+
Session::new(config.unwrap_or_default(), Arc::new(self.clone()))
436436
}
437437

438438
#[cfg(feature = "unstable-bolt-protocol-impl-v2")]

lib/src/session.rs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ use crate::summary::Counters;
33
use crate::{Database, DetachedRowStream, Error, Graph, Operation, Query, RowStream, RunResult};
44
use std::sync::atomic::AtomicBool;
55
use std::sync::atomic::Ordering::Relaxed;
6+
use std::sync::Arc;
67

78
#[derive(Default)]
89
pub struct SessionConfig {
@@ -57,17 +58,19 @@ impl SessionConfigBuilder {
5758
}
5859
}
5960

60-
pub struct Session<'a> {
61+
/// A session is a context for running queries and transactions against a Neo4j database.
62+
/// It maintains state such as the target database, impersonated user, fetch size, and bookmarks.
63+
pub struct Session {
6164
db: Option<Database>,
6265
imp_user: Option<ImpersonateUser>,
6366
fetch_size: Option<usize>,
6467
bookmarks: Vec<String>,
6568
should_fetch_default_db: AtomicBool,
66-
driver: &'a Graph,
69+
driver: Arc<Graph>,
6770
}
6871

69-
impl<'a> Session<'a> {
70-
pub(crate) fn new(config: SessionConfig, graph: &'a Graph) -> Session<'a> {
72+
impl Session {
73+
pub(crate) fn new(config: SessionConfig, graph: Arc<Graph>) -> Session {
7174
Self {
7275
db: config.db,
7376
imp_user: config.imp_user,

lib/src/txn.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ pub struct Txn {
2323
connection: ManagedConnection,
2424
operation: Operation,
2525
imp_user: Option<ImpersonateUser>,
26-
#[allow(dead_code)]
26+
#[cfg(feature = "unstable-bolt-protocol-impl-v2")]
2727
bookmark: Option<String>,
2828
}
2929

@@ -43,7 +43,6 @@ impl Txn {
4343
fetch_size,
4444
connection,
4545
operation,
46-
bookmark: None,
4746
imp_user,
4847
}),
4948
msg => Err(msg.into_error("BEGIN")),

0 commit comments

Comments
 (0)