[
https://issues.apache.org/jira/browse/GOBBLIN-1773?focusedWorklogId=844193&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-844193
]
ASF GitHub Bot logged work on GOBBLIN-1773:
-------------------------------------------
Author: ASF GitHub Bot
Created on: 07/Feb/23 23:18
Start Date: 07/Feb/23 23:18
Worklog Time Spent: 10m
Work Description: umustafi commented on code in PR #3636:
URL: https://github.com/apache/gobblin/pull/3636#discussion_r1099374152
##########
gobblin-service/src/main/java/org/apache/gobblin/service/modules/scheduler/GobblinServiceJobScheduler.java:
##########
@@ -330,8 +330,9 @@ public AddSpecResponse onAddSpec(Spec addedSpec) {
// Check quota limits against run immediately flows or adhoc flows before
saving the schedule
// In warm standby mode, this quota check will happen on restli API layer
when we accept the flow
- if (!this.warmStandbyEnabled &&
(!jobConfig.containsKey(ConfigurationKeys.JOB_SCHEDULE_KEY) ||
PropertiesUtils.getPropAsBoolean(jobConfig,
ConfigurationKeys.FLOW_RUN_IMMEDIATELY, "false"))) {
- // This block should be reachable only for the first execution for the
adhoc flows (flows that either do not have a schedule or have
runImmediately=true.
+ if (!this.warmStandbyEnabled &&
!jobConfig.containsKey(ConfigurationKeys.JOB_SCHEDULE_KEY)) {
+ // This block should be reachable only for the execution for the adhoc
flows
+ // For flow that has scheduler but run-immediately set to be true, we
won't check teh quota as we will use a different execution id later
Review Comment:
typo `the`
##########
gobblin-service/src/main/java/org/apache/gobblin/service/modules/scheduler/GobblinServiceJobScheduler.java:
##########
@@ -330,8 +330,9 @@ public AddSpecResponse onAddSpec(Spec addedSpec) {
// Check quota limits against run immediately flows or adhoc flows before
saving the schedule
Review Comment:
lets update this to be adhoc flows only
##########
gobblin-service/src/main/java/org/apache/gobblin/service/modules/scheduler/GobblinServiceJobScheduler.java:
##########
@@ -330,8 +330,9 @@ public AddSpecResponse onAddSpec(Spec addedSpec) {
// Check quota limits against run immediately flows or adhoc flows before
saving the schedule
// In warm standby mode, this quota check will happen on restli API layer
when we accept the flow
Review Comment:
afaik
`[FlowConfigV2ResourceLocalHandler](https://github.com/apache/gobblin/blob/69f3f9c33c9679d723c447fbe626db8f1b7afa9e/gobblin-service/src/main/java/org/apache/gobblin/service/modules/restli/GobblinServiceFlowConfigV2ResourceHandlerWithWarmStandby.java#L106)`
and
`[FlowCatalog](https://github.com/apache/gobblin/blob/69f3f9c33c9679d723c447fbe626db8f1b7afa9e/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/spec_catalog/FlowCatalog.java#L403
)` are not doing quota check on adding the spec. Where do we do the check in
API layer?
Issue Time Tracking
-------------------
Worklog Id: (was: 844193)
Remaining Estimate: 0h
Time Spent: 10m
> Fix bug in quota manager of gobblinservice
> ------------------------------------------
>
> Key: GOBBLIN-1773
> URL: https://issues.apache.org/jira/browse/GOBBLIN-1773
> Project: Apache Gobblin
> Issue Type: Improvement
> Reporter: Zihan Li
> Priority: Major
> Time Spent: 10m
> Remaining Estimate: 0h
>
> We used to check the quota when we accept flow for ad-hoc flow and run
> immediately flow. But we only use the same execution id for ad-hoc flow. So
> for a run immediately flow, we will check quota once with a random execution
> id, and then really run the job with a different execution id and forget the
> first one. This will cause us to double-check the quota for a run immediately
> flow and never release one of them.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)