0

` ClientSession session = client.startSession();
try {
session.startTransaction(TransactionOptions.builder().writeConcern(WriteConcern.MAJORITY).build());
aliceWantsTwoExtraBeers(session);
sleep();
removingBeerFromStock(session);
session.commitTransaction();
} catch (MongoCommandException e) {
session.abortTransaction();
System.out.println(“####### ROLLBACK TRANSACTION #######”);
} finally {
session.close();
System.out.println(“####################################\n”);
printDatabaseState();
}`

创建了事物client.startSession(); 然后报错跟踪mongo driver 3.8源代码发现 connectedClusterDescription.getLogicalSessionTimeoutMinutes()的值是30但是这里判断为空是为什么?请问如何解决?
` ClusterDescription connectedClusterDescription = getConnectedClusterDescription();

if (connectedClusterDescription.getType() == ClusterType.STANDALONE
|| connectedClusterDescription.getLogicalSessionTimeoutMinutes() == null) {
return null;
}`
抛出的异常是Exception in thread “main” com.mongodb.MongoClientException: Sessions are not supported by the MongoDB cluster to which this client is connected