From 52bec5b46f42b415ca9dd7945ced20e255dbd5c7 Mon Sep 17 00:00:00 2001 From: Zaid Abdulla Date: Sat, 24 Mar 2018 00:41:17 -0700 Subject: [PATCH] Add config option for max commit iterations --- lib/config.coffee | 3 ++- lib/session.coffee | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/config.coffee b/lib/config.coffee index e30b45a..37aa60e 100644 --- a/lib/config.coffee +++ b/lib/config.coffee @@ -67,7 +67,8 @@ options = { MAX_CONCURRENT_REQUESTS : {type : 'int', default: 20}, DATETIME_MILLISECONDS : {type: 'bool', default: true}, BOOLEAN_LITERAL : {type: 'bool', default: true}, - CONNECTION_REQUEST_ALLOW_BASIC_AUTH: {type: 'bool', default: false} + CONNECTION_REQUEST_ALLOW_BASIC_AUTH: {type: 'bool', default: false}, + MAX_COMMIT_ITERATIONS : {type : 'int', default: 32}, # XML configuration XML_RECOVER : {type : 'bool', default : false}, diff --git a/lib/session.coffee b/lib/session.coffee index e5e37c8..953978d 100644 --- a/lib/session.coffee +++ b/lib/session.coffee @@ -29,7 +29,8 @@ InstanceSet = require './instance-set' defaultProvisions = require './default-provisions' gpnHeuristic = require './gpn-heuristic' -MAX_ITERATIONS = 64 +# Multiply by two because every iteration is two phases: read and update +MAX_ITERATIONS = config.get('MAX_COMMIT_ITERATIONS') * 2 provisionsCache = new WeakMap() virtualParametersCache = new WeakMap()