-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
feat(ingestion): file-based state checkpoint provider #9029
feat(ingestion): file-based state checkpoint provider #9029
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
one nit, but broadly looks good
Next step is going to be starting to refactor our stateful ingestion tests to start using this - maybe we can start with the lookml tests
...gestion/src/datahub/ingestion/source/state_provider/file_ingestion_checkpointing_provider.py
Outdated
Show resolved
Hide resolved
...gestion/src/datahub/ingestion/source/state_provider/file_ingestion_checkpointing_provider.py
Outdated
Show resolved
Hide resolved
...gestion/src/datahub/ingestion/source/state_provider/file_ingestion_checkpointing_provider.py
Outdated
Show resolved
Hide resolved
"state": { | ||
"formatVersion": "1.0", | ||
"serde": "base85-bz2-json", | ||
"payload": "LRx4!F+o`-Q(4)<4JiNuUmt)_WdINa0@Mn>@BivB0a-v1sF;Ar&}h&A0K-EjK*+=xnKU%Oib;?JVrrXB7?aRqCarWwpZm8v5Yh+DsN{|c*msMh9%WJXjKPvIPsDn^@g3;DD9Q9kBh?*|=8M4uRW$_0HKn3XhN;RhAcLIBhLnO2%UA@Ykl;h&Xx(^@2;Y9C#d4g3K_2CA-I*M)h{NMA8Nu4C3XjEQYdh{nR--&lfRUsTL}OOkOO435f=1nKzYJ^9)mbBljM0}gaqy26URw1=q<80Eb9y)y?Vl88kG;g~MToq#r%6tr<yx^i_E#v)8~7vUJum>K9U`U?k}RS<@^?i@<c?y}RaZG9JGf09m`0f!sz%!^wDYcoJR{ix%d2rWCL+XvG>1M1@9*%tk}1N3hRzUaNB" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
eventually I'd like to change this so that the compression is tied to the state provider, not the checkpoint object - but we can save that for a future PR
...gestion/src/datahub/ingestion/source/state_provider/file_ingestion_checkpointing_provider.py
Outdated
Show resolved
Hide resolved
...gestion/tests/unit/stateful_ingestion/provider/test_file_ingestion_checkpointing_provider.py
Outdated
Show resolved
Hide resolved
metadata-ingestion/tests/unit/stateful_ingestion/state/test_stateful_ingestion.py
Outdated
Show resolved
Hide resolved
metadata-ingestion/tests/unit/stateful_ingestion/state/test_stateful_ingestion.py
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mostly looks good, just a few minor things
...tion/src/datahub/ingestion/source/state_provider/datahub_ingestion_checkpointing_provider.py
Show resolved
Hide resolved
@@ -17,15 +17,25 @@ | |||
|
|||
|
|||
class DatahubIngestionStateProviderConfig(IngestionCheckpointingProviderConfig): | |||
datahub_api: Optional[DatahubClientConfig] = DatahubClientConfig() | |||
datahub_api: DatahubClientConfig = DatahubClientConfig() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this should remain optional
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is no use of making it optional. It will just add the extra useless if condition of checking datahub_api because of lint error.
Still if it needs to remain optional let me know.
Checklist