-
Notifications
You must be signed in to change notification settings - Fork 40
Add support for exporting data in the Data Loader via Consensus Commit #2740
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
Conversation
|
@brfrn169 san |
@ypeckstadt Basically, we don’t include new features in patch versions. As discussed with @feeblefakie, we’ve decided not to release 3.16 this week but to release it next week instead. So I think we can include this PR in that release. Thanks. |
|
FYI, as discussed in another place Slack conv. With the default config of transaction manager |
|
@brfrn169 san, @komamitsu san, |
| DistributedStorage storage = StorageFactory.create(scalarDbPropertiesFilePath).getStorage(); | ||
| return createExportManagerWithStorage(storage, scalarDbDao, fileFormat, taskFactory); | ||
| } else { | ||
| DistributedTransactionManager distributedTransactionManager = |
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.
Don't need to consider #2740 (comment) ?
|
@komamitsu san, @brfrn169 san (cc @ypeckstadt ) Based on comment from @thongdk8 , for export operations in transaction mode, is it acceptable to explicitly set scalar.db.transaction_manager to single-crud-operation, even if the user hasn’t specified this value in the database configuration file? |
|
@inv-jishnu I think it's a reasonable and safe option. But it depends on the requirement (e.g., users can use |
@inv-jishnu Let me discuss it with @feeblefakie. |
|
Based on our discussion, this code and PR is necessary and will represent the consensus-commit approach for the export. (which needs to be supported). At the same time, the single CRUD operation will be handled via another PR. That PR will basically remove all usage of DistributedStorage and replace it with usage of the Single CRUD interface. |
… feat/data-loader/export-trn
…ar-labs/scalardb into feat/data-loader/export-trn
|
After discussion in the team., it's clear that this PR is not required anymore and we the export will just be done using the DistributedTransactionManager instead. @inv-jishnu FYI |
Description
This PR adds support for transactional mode in data export within the Dataloader core, along with corresponding updates to the CLI.
Previously, the export functionality only supported storage mode because there was no transactional scanner API that allowed streaming data without loading everything into memory. With the introduction of a suitable transactional scanner, we can now support export in transaction mode as well.
Related issues and/or PRs
NA
Changes made
On core
On CLI
Checklist
Additional notes (optional)
NA
Release notes
Added transaction mode in data export on data loader core and CLI