Skip to content

Signed-off-by: onever23 <oleg.neverovitch@hpe.com>#18167

Draft
onever23 wants to merge 8 commits into
masterfrom
olegn/array-io-split-experimental
Draft

Signed-off-by: onever23 <oleg.neverovitch@hpe.com>#18167
onever23 wants to merge 8 commits into
masterfrom
olegn/array-io-split-experimental

Conversation

@onever23
Copy link
Copy Markdown
Contributor

@onever23 onever23 commented May 4, 2026

Modified dc_array_io() to handle large iod vectors by splitting them into batches

Steps for the author:

  • Commit message follows the guidelines.
  • Appropriate Features or Test-tag pragmas were used.
  • Appropriate Functional Test Stages were run.
  • At least two positive code reviews including at least one code owner from each category referenced in the PR.
  • Testing is complete. If necessary, forced-landing label added and a reason added in a comment.

After all prior steps are complete:

  • Gatekeeper requested (daos-gatekeeper added as a reviewer).

Modified dc_array_io() to handle large iod vectors by splitting them
into batches
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 4, 2026

Errors are component not formatted correctly,Ticket number prefix incorrect,Ticket number suffix is not a number. See https://daosio.atlassian.net/wiki/spaces/DC/pages/11133911069/Commit+Comments,Unable to load ticket data
https://daosio.atlassian.net/browse/Signed-off-by:

@onever23 onever23 requested a review from mchaarawi May 4, 2026 11:42
@daosbuild3
Copy link
Copy Markdown
Collaborator

@daosbuild3
Copy link
Copy Markdown
Collaborator

@daosbuild3
Copy link
Copy Markdown
Collaborator

@daosbuild3
Copy link
Copy Markdown
Collaborator

onever23 added 2 commits May 7, 2026 19:18
Signed-off-by: onever23 <oleg.neverovitch@hpe.com>
Signed-off-by: onever23 <oleg.neverovitch@hpe.com>
@daosbuild3
Copy link
Copy Markdown
Collaborator

@daosbuild3
Copy link
Copy Markdown
Collaborator

@daosbuild3
Copy link
Copy Markdown
Collaborator

@daosbuild3
Copy link
Copy Markdown
Collaborator

@daosbuild3
Copy link
Copy Markdown
Collaborator

@daosbuild3
Copy link
Copy Markdown
Collaborator

Added env variable to control splits
@daosbuild3
Copy link
Copy Markdown
Collaborator

daos_array_iod_t *iod = &splits.iod_v[sn];
d_sg_list_t *sgl = &splits.sgl_v[sn];
daos_size_t nr = splits.cnt > 1 ? splits.nrec[sn] : total_nr;
rc = dc_array_io_int(array, th, iod, sgl, op_type, task, nr);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i don't think this will work.
let's say your split into 5. if you call dc_array_io_int (... task) with the same task on all 5, the first 1 that completes will mark the whole operation as complete even if the others are in flight.
the other problem is you are launching all of them at the same time too, which defeats the purpose of the change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants