Skip to content

Commit 03326c6

Browse files
authored
Merge pull request #444 from Breeding-Insight/feature/BI-2450
[BI-2450]BrAPI Server DB connections exhausted on biapi startup caching
2 parents d4677ab + f83b841 commit 03326c6

File tree

8 files changed

+23
-7
lines changed

8 files changed

+23
-7
lines changed

.env.template

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,4 +61,12 @@ AWS_GENO_BUCKET=<s3 bucket for genotypic data uploads>
6161
AWS_S3_ENDPOINT=<s3 endpoint, default https://s3.us-east-1.amazonaws.com>
6262

6363
BRAPI_VENDOR_SUBMISSION_ENABLED=false #can a submission be sent to a vendor via BrAPI
64-
BRAPI_VENDOR_CHECK_FREQUENCY=1d #how often to check for vendor updates for sample submissions
64+
BRAPI_VENDOR_CHECK_FREQUENCY=1d #how often to check for vendor updates for sample submissions
65+
66+
#The initial caching of each type of object needs to be staggered by the prescribed number of seconds
67+
GERMPLASM_START_DELAY=5s
68+
STUDY_START_DELAY=10s
69+
TRIAL_START_DELAY=15s
70+
TRAIT_START_DELAY=20s
71+
OBSERVATION_START_DELAY=25s
72+
OBSERVATION_UNIT_START_DELAY=30s

src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public BrAPIGermplasmDAO(ProgramDAO programDAO, ImportDAO importDAO, BrAPIDAOUti
7878
this.brAPIEndpointProvider = brAPIEndpointProvider;
7979
}
8080

81-
@Scheduled(initialDelay = "2s")
81+
@Scheduled(initialDelay = "${startup.delay.germplasm}")
8282
public void setup() {
8383
if(!runScheduledTasks) {
8484
return;

src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIObservationDAO.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ public BrAPIObservationDAO(ProgramDAO programDAO,
8787
this.programCache = programCacheProvider.getProgramCache(this::fetchProgramObservations, BrAPIObservation.class);
8888
}
8989

90-
@Scheduled(initialDelay = "3s")
90+
@Scheduled(initialDelay = "${startup.delay.observation}")
9191
public void setup() {
9292
if(!runScheduledTasks) {
9393
return;

src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIObservationUnitDAO.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ public BrAPIObservationUnitDAO(ProgramDAO programDAO,
9595
this.programCache = programCacheProvider.getProgramCache(this::fetchProgramObservationUnits, BrAPIObservationUnit.class);
9696
}
9797

98-
@Scheduled(initialDelay = "3s")
98+
@Scheduled(initialDelay = "${startup.delay.observation_unit}")
9999
public void setup() {
100100
if(!runScheduledTasks) {
101101
return;

src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIStudyDAO.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public BrAPIStudyDAO(ProgramDAO programDAO, ImportDAO importDAO, BrAPIDAOUtil br
6565
this.programCache = programCacheProvider.getProgramCache(this::fetchProgramStudy, BrAPIStudy.class);
6666
}
6767

68-
@Scheduled(initialDelay = "2s")
68+
@Scheduled(initialDelay = "${startup.delay.study}")
6969
public void setup() {
7070
if(!runScheduledTasks) {
7171
return;

src/main/java/org/breedinginsight/brapi/v2/dao/impl/BrAPITrialDAOImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ public BrAPITrialDAOImpl(ProgramCacheProvider programCacheProvider,
8181
}
8282

8383

84-
@Scheduled(initialDelay = "2s")
84+
@Scheduled(initialDelay = "${startup.delay.trial}")
8585
public void setup() {
8686
if(!runScheduledTasks) {
8787
return;

src/main/java/org/breedinginsight/daos/impl/TraitDAOImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ public TraitDAOImpl(Configuration config,
109109
this.runScheduledTasks = runScheduledTasks;
110110
}
111111

112-
@Scheduled(initialDelay = "2s")
112+
@Scheduled(initialDelay = "${startup.delay.trait}")
113113
public void setup() {
114114
if(!runScheduledTasks) {
115115
return;

src/main/resources/application.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,3 +205,11 @@ aws:
205205
buckets:
206206
genotype:
207207
bucket: ${AWS_GENO_BUCKET}
208+
startup:
209+
delay:
210+
germplasm: ${GERMPLASM_START_DELAY:2s}
211+
study: ${STUDY_START_DELAY:2s}
212+
trial: ${TRIAL_START_DELAY:2s}
213+
trait: ${TRAIT_START_DELAY:2s}
214+
observation: ${OBSERVATION_START_DELAY:3s}
215+
observation_unit: ${OBSERVATION_UNIT_START_DELAY:3s}

0 commit comments

Comments
 (0)