1
1
package org .example ;
2
2
3
- import static com .mongodb .client .model .Filters .eq ;
4
3
import static com .mongodb .client .model .Filters .gte ;
5
- import static java .util .concurrent .TimeUnit .SECONDS ;
4
+ import static java .util .concurrent .TimeUnit .MILLISECONDS ;
6
5
7
6
import com .mongodb .ClientSessionOptions ;
8
7
import com .mongodb .ConnectionString ;
9
8
import com .mongodb .MongoClientSettings ;
10
9
import com .mongodb .TransactionOptions ;
11
10
import com .mongodb .client .*;
12
11
import com .mongodb .client .cursor .TimeoutMode ;
13
- import com .mongodb .client .model .InsertOneOptions ;
14
- import com .mongodb .client .model .bulk .ClientBulkWriteOptions ;
15
- import com .mongodb .client .result .InsertOneResult ;
16
12
import org .bson .Document ;
17
13
18
14
19
15
public class CsotExample {
20
16
21
17
public static void main (String [] args ) {
22
- MongoClient mongoClient = new csot ().mongoClientSettings ();
18
+ MongoClient mongoClient = new CsotExample ().mongoClientSettings ();
23
19
}
24
20
25
21
private MongoClient mongoClientSettings (){
26
22
// start-mongoclientsettings
27
23
MongoClientSettings settings = MongoClientSettings .builder ()
28
24
.applyConnectionString (new ConnectionString ("<connection string>" ))
29
- .timeout (5L , SECONDS )
25
+ .timeout (200L , MILLISECONDS )
30
26
.build ();
31
27
32
28
MongoClient mongoClient = MongoClients .create (settings );
@@ -37,7 +33,7 @@ private MongoClient mongoClientSettings(){
37
33
38
34
private MongoClient connectionString (){
39
35
// start-string
40
- String uri = "<connection string>/?timeoutMS=5000 " ;
36
+ String uri = "<connection string>/?timeoutMS=200 " ;
41
37
MongoClient mongoClient = MongoClients .create (uri );
42
38
// end-string
43
39
@@ -48,7 +44,7 @@ private void operationTimeout(){
48
44
// start-operation-timeout
49
45
MongoClientSettings settings = MongoClientSettings .builder ()
50
46
.applyConnectionString (new ConnectionString ("<connection string>" ))
51
- .timeout (5L , SECONDS )
47
+ .timeout (200L , MILLISECONDS )
52
48
.build ();
53
49
54
50
try (MongoClient mongoClient = MongoClients .create (settings )) {
@@ -64,21 +60,21 @@ private void overrideTimeout(){
64
60
// start-override
65
61
MongoClientSettings settings = MongoClientSettings .builder ()
66
62
.applyConnectionString (new ConnectionString ("<connection string>" ))
67
- .timeout (5L , SECONDS )
63
+ .timeout (200L , MILLISECONDS )
68
64
.build ();
69
65
70
66
try (MongoClient mongoClient = MongoClients .create (settings )) {
71
67
MongoDatabase database = mongoClient .getDatabase ("db" );
72
68
MongoCollection <Document > collection = database
73
69
.getCollection ("people" )
74
- .withTimeout (10L , SECONDS );
70
+ .withTimeout (300L , MILLISECONDS );
75
71
76
72
// ... perform operations on MongoCollection
77
73
}
78
74
// end-override
79
75
}
80
76
81
- private void txnTimeout (){
77
+ private void transactionTimeout (){
82
78
MongoClientSettings settings = MongoClientSettings .builder ()
83
79
.applyConnectionString (new ConnectionString ("<connection string>" ))
84
80
.build ();
@@ -90,26 +86,26 @@ private void txnTimeout(){
90
86
91
87
// start-session-timeout
92
88
ClientSessionOptions opts = ClientSessionOptions .builder ()
93
- .defaultTimeout (5L , SECONDS )
89
+ .defaultTimeout (200L , MILLISECONDS )
94
90
.build ();
95
91
96
92
ClientSession session = mongoClient .startSession (opts );
97
93
// ... perform operations on ClientSession
98
94
// end-session-timeout
99
95
100
- // start-txn -timeout
101
- TransactionOptions txnOptions = TransactionOptions .builder ()
102
- .timeout (5L , SECONDS )
96
+ // start-transaction -timeout
97
+ TransactionOptions transactionOptions = TransactionOptions .builder ()
98
+ .timeout (200L , MILLISECONDS )
103
99
.build ();
104
- // end-txn -timeout
100
+ // end-transaction -timeout
105
101
}
106
102
107
103
}
108
104
109
105
private void cursorTimeout (){
110
106
MongoClientSettings settings = MongoClientSettings .builder ()
111
107
.applyConnectionString (new ConnectionString ("<connection string>" ))
112
- .timeout (5L , SECONDS )
108
+ .timeout (200L , MILLISECONDS )
113
109
.build ();
114
110
115
111
try (MongoClient mongoClient = MongoClients .create (settings )) {
0 commit comments