daos icon indicating copy to clipboard operation
daos copied to clipboard

DAOS-9206 dfs: add container hints for better object class selection

Open mchaarawi opened this issue 2 years ago • 4 comments

DAOS object class selection today is either done explicitly by the user or otherwise automatically depending on the type of the object. However this has proven to be still not sufficient from a user perspective as there is not control on the sharding with automatic selection. For example:

  • EC is automatically chosen for files / arrays, but would be be bad for small files vs replication
  • S1 or G1 is chosen for directories, but for fat directories, SX/GX is better

This PR adds some flags to POSIX containers passed at creation time:

  • dir_oclass (to set explicit oclass for directories to distinguish from files)
  • hints: tiny/small/medium/large_file/dir to help DAOS better choose an object class for files or directories

mchaarawi avatar Jun 15 '22 15:06 mchaarawi

Test stage checkpatch completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-9375/1/execution/node/131/log

daosbuild1 avatar Jun 15 '22 15:06 daosbuild1

Test stage checkpatch completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-9375/2/execution/node/133/log

daosbuild1 avatar Jun 15 '22 15:06 daosbuild1

Test stage Unit Test completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-9375/3/execution/node/736/log

daosbuild1 avatar Jun 15 '22 16:06 daosbuild1

Bug-tracker data: Ticket title is 'New POSIX container options (hints) for default object classes' Status is 'Open' Labels: 'triaged' Job should run at elevated priority (3) https://daosio.atlassian.net/browse/DAOS-9206

github-actions[bot] avatar Aug 09 '22 19:08 github-actions[bot]

Test stage checkpatch completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-9375/12/execution/node/174/log

daosbuild1 avatar Sep 22 '22 12:09 daosbuild1

Do you want functional test coverage for the hints and/or dir obj class?

i have added DFS tests for the hints. the dir oclass probably need to add some nlt tests. i will do that in a follow on PR.

mchaarawi avatar Sep 27 '22 21:09 mchaarawi

Do you want functional test coverage for the hints and/or dir obj class?

i have added DFS tests for the hints. the dir oclass probably need to add some nlt tests. i will do that in a follow on PR.

Sure. Let me know if you want help with any ftest additions

daltonbohning avatar Sep 27 '22 22:09 daltonbohning

-1 because of the doxygen warning, if this is landed as-is then all builds will fail with that warning until fixed.

where is the doxygen warning? the PR is green so how will PRs fail?

mchaarawi avatar Sep 28 '22 12:09 mchaarawi

Test stage Functional Hardware Medium completed with status UNSTABLE. https://build.hpdd.intel.com/job/daos-stack/job/daos//view/change-requests/job/PR-9375/19/testReport/(root)/

daosbuild1 avatar Sep 28 '22 23:09 daosbuild1

refreshed with README update (no code changes)

mchaarawi avatar Sep 30 '22 19:09 mchaarawi

Test stage Python Bandit check completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-9375/20/execution/node/144/log

daosbuild1 avatar Sep 30 '22 19:09 daosbuild1

Test stage Python Bandit check completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-9375/21/execution/node/143/log

daosbuild1 avatar Sep 30 '22 19:09 daosbuild1

Test stage Functional Hardware Large completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-9375/21/execution/node/1186/log

daosbuild1 avatar Oct 02 '22 02:10 daosbuild1

-1 because of the doxygen warning, if this is landed as-is then all builds will fail with that warning until fixed.

your comments have been addressed, can you please review again?

mchaarawi avatar Oct 03 '22 21:10 mchaarawi

rebase to resolve conflict

mchaarawi avatar Oct 11 '22 22:10 mchaarawi

Test stage Functional Hardware Large completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-9375/22/execution/node/1169/log

daosbuild1 avatar Oct 12 '22 05:10 daosbuild1

failed test is unrelated and tracked here: https://daosio.atlassian.net/browse/DAOS-11749

mchaarawi avatar Oct 12 '22 12:10 mchaarawi