-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Jobservice control loop (based on #1140) #1156
Conversation
ecba551
to
a4a4dc4
Compare
/test test-end-to-end |
/kind feature |
a4a4dc4
to
4635773
Compare
eee144c
to
c4c1ae2
Compare
/test test-end-to-end-gcp |
c4c1ae2
to
5dd2490
Compare
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: oavdeev, woop The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/lgtm |
/test test-end-to-end-aws |
/test test-end-to-end-gcp |
1 similar comment
/test test-end-to-end-gcp |
dc46656
to
fd877cf
Compare
/retest |
2 similar comments
/retest |
/retest |
Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com>
Co-authored-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com>
Co-authored-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com>
…small fixes Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com>
- Move ensure_stream_ingestion_jobs to client - Move _job_to_proto to SparkJob & its subclasses (as .to_proto methods) - Remove list_jobs_by_hash from job launcher layer - Add .get_hash() to StreamIngestionJob objects, which replaces list_jobs_by_hash in a much nicer way - Add logic in dataproc launcher (completes all 3 spark modes) - Add hash to Job proto & RemoteStreamIngestionJob - Add bunch of docstrings Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com>
Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com>
Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com>
Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com>
Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com>
Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com>
Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com>
Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com>
fd877cf
to
54190e6
Compare
/lgtm |
New changes are detected. LGTM label has been removed. |
Signed-off-by: Willem Pienaar <git@willem.co>
b1ecfa7
to
bf44bef
Compare
Signed-off-by: Willem Pienaar <git@willem.co>
* Implement Job Service control loop for stream ingestion jobs Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com> * Update sdk/python/feast/job_service.py Co-authored-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com> * Update sdk/python/feast/job_service.py Co-authored-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com> * Ensure jobservice isn't running with failed control loop; also other small fixes Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com> * Code restructure (see commit message details) - Move ensure_stream_ingestion_jobs to client - Move _job_to_proto to SparkJob & its subclasses (as .to_proto methods) - Remove list_jobs_by_hash from job launcher layer - Add .get_hash() to StreamIngestionJob objects, which replaces list_jobs_by_hash in a much nicer way - Add logic in dataproc launcher (completes all 3 spark modes) - Add hash to Job proto & RemoteStreamIngestionJob - Add bunch of docstrings Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com> * Fix super -> super() Signed-off-by: Tsotne Tabidze <tsotnet@gmail.com> * make _job_to_proto a function Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> * move ensure_stream_ingestion_jobs back out of the client Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> * add tests for the job control loop Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> * fix _job_to_proto Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> * fix job cache state leak between tests Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> * fix docker-compose test Signed-off-by: Oleg Avdeev <oleg.v.avdeev@gmail.com> * Add retries to prevent download failure Signed-off-by: Willem Pienaar <git@willem.co> * Remove MAVEN_OPTS again Signed-off-by: Willem Pienaar <git@willem.co> Co-authored-by: Tsotne Tabidze <tsotnet@gmail.com> Co-authored-by: Willem Pienaar <git@willem.co>
What this PR does / why we need it:
See #1140 for start of the discussion. Compared to that PR, this addresses some comments and adds tests for the control loop logic.
Does this PR introduce a user-facing change?: