Skip to content

Commit 4db8dd7

Browse files
authored
Simplify the example where two transactions are multiplexed over one connection (#220)
1 parent 062ba43 commit 4db8dd7

File tree

1 file changed

+19
-26
lines changed

1 file changed

+19
-26
lines changed
Lines changed: 19 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,32 @@
1-
{
2-
let name = uuid::Uuid::new_v4().to_string();
1+
{
2+
let qry = "UNWIND [1, 2] AS x RETURN x";
3+
34
let mut txn = graph.start_txn().await.unwrap();
45

5-
#[derive(serde::Deserialize)]
6-
struct Person {
7-
name: String,
8-
}
9-
10-
txn.run_queries([
11-
query("CREATE (p { name: $name })").param("name", name.clone()),
12-
query("CREATE (p { name: $name })").param("name", name.clone()),
13-
])
14-
.await
15-
.unwrap();
16-
17-
//start stream_one
18-
let mut stream_one = txn
19-
.execute(query("MATCH (p {name: $name}) RETURN p").param("name", name.clone()))
20-
.await
21-
.unwrap();
6+
// start stream_one
7+
let mut stream_one = txn.execute(qry).await.unwrap();
228
let row = stream_one.next(txn.handle()).await.unwrap().unwrap();
23-
assert_eq!(row.to::<Person>().unwrap().name, name);
9+
assert_eq!(row.to::<i64>().unwrap(), 1);
2410

25-
//start stream_two
26-
let mut stream_two = txn.execute(query("RETURN 1")).await.unwrap();
11+
// start stream_two
12+
let mut stream_two = txn.execute(qry).await.unwrap();
2713
let row = stream_two.next(txn.handle()).await.unwrap().unwrap();
2814
assert_eq!(row.to::<i64>().unwrap(), 1);
2915

30-
//stream_one is still active here
16+
// stream_one is still active here
3117
let row = stream_one.next(txn.handle()).await.unwrap().unwrap();
32-
assert_eq!(row.to::<Person>().unwrap().name, name);
18+
assert_eq!(row.to::<i64>().unwrap(), 2);
19+
20+
// as is stream_two
21+
let row = stream_two.next(txn.handle()).await.unwrap().unwrap();
22+
assert_eq!(row.to::<i64>().unwrap(), 2);
3323

34-
//stream_one completes
24+
// stream_one completes
3525
assert!(stream_one.next(txn.handle()).await.unwrap().is_none());
36-
//stream_two completes
26+
27+
// stream_two completes
3728
assert!(stream_two.next(txn.handle()).await.unwrap().is_none());
29+
30+
// commit the transaction
3831
txn.commit().await.unwrap();
3932
}

0 commit comments

Comments
 (0)