@@ -59,6 +59,7 @@ public class Config {
5959 private static final String P_DISKIO_MODE = "diskio.mode" ;
6060 private static final String P_SYNC_LOCK_ENABLE = "sync.lock.enable" ;
6161 private static final String P_SYNC_PERIOD = "sync.period" ;
62+ private static final String P_RETRIEVE_QUEUE_SIZE = "retrieve.queue.size" ;
6263 private static final String P_CODEPAGE = "codepage" ;
6364 private static final String P_DATEFORMAT = "dateformat" ;
6465 private static final int MAX_NODE_ID = 64 ;
@@ -80,7 +81,8 @@ public class Config {
8081 private static final int FILES_AMOUNT_DEFAULT =4 ;
8182 private static final String DISKIO_MODE_DEFAULT ="rws" ;
8283 private static final boolean SYNC_LOCK_ENABLE_DEFAULT =false ;
83- private static final int SYNC_PERIOD_DEFAULT =5 ;
84+ private static final int SYNC_PERIOD_DEFAULT =2000 ;
85+ private static final int RETRIEVE_QUEUE_SIZE_DEFAULT =10000 ;
8486 private static final String CODEPAGE_DEFAULT ="UTF-8" ;
8587 private static final String DATEFORMAT_DEFAULT ="dd.MM.yyyy" ;
8688
@@ -101,6 +103,7 @@ public class Config {
101103 public final String DISKIO_MODE ;
102104 public final boolean SYNC_LOCK_ENABLE ;
103105 public final int SYNC_PERIOD ;
106+ public final int RETRIEVE_QUEUE_SIZE ;
104107 public final String CODEPAGE ;
105108 public final String DATEFORMAT ;
106109
@@ -158,6 +161,7 @@ private Config() {
158161 DISKIO_MODE = validateDiskioMode (p .getProperty (P_DISKIO_MODE ));
159162 SYNC_LOCK_ENABLE = validateSyncLock (p .getProperty (P_SYNC_LOCK_ENABLE ));
160163 SYNC_PERIOD = validateSyncPeriod (p .getProperty (P_SYNC_PERIOD ));
164+ RETRIEVE_QUEUE_SIZE = validateQueueSize (p .getProperty (P_RETRIEVE_QUEUE_SIZE ));
161165 } else {
162166 DB_PATH = DB_PATH_DEFAULT ;
163167 JOURNAL_PATH = JOURNAL_PATH_DEFAULT ;
@@ -178,6 +182,7 @@ private Config() {
178182 DISKIO_MODE = DISKIO_MODE_DEFAULT ;
179183 SYNC_LOCK_ENABLE = SYNC_LOCK_ENABLE_DEFAULT ;
180184 SYNC_PERIOD = SYNC_PERIOD_DEFAULT ;
185+ RETRIEVE_QUEUE_SIZE = RETRIEVE_QUEUE_SIZE_DEFAULT ;
181186 }
182187 System .setProperty ("com.sun.management.jmxremote.port" ,"8111" );
183188 System .setProperty ("com.sun.management.jmxremote.authenticate" ,"false" );
@@ -324,7 +329,19 @@ private static String validateDiskioMode(String mode) {
324329 private static int validateSyncPeriod (String value ) {
325330 try {
326331 int p = Integer .valueOf (value );
327- if (p > 0 && p < 10000 ) {
332+ if (p > 9 && p < 60001 ) {
333+ return p ;
334+ }
335+ } catch (NumberFormatException e ) {
336+ logger .error ("sync period value is not valid - use default value" );
337+ }
338+ return SYNC_PERIOD_DEFAULT ;
339+ }
340+
341+ private static int validateQueueSize (String value ) {
342+ try {
343+ int p = Integer .valueOf (value );
344+ if (p > 0 && p < 100000000 ) {
328345 return p ;
329346 }
330347 } catch (NumberFormatException e ) {
0 commit comments