[lustre-discuss] selecting osts with llapi_layout_ost_index_set()

Andreas Dilger adilger at thelustrecollective.com
Thu May 21 06:20:06 UTC 2026


On May 20, 2026, at 16:41, John Bauer via lustre-discuss <lustre-discuss at lists.lustre.org> wrote:
> 
> I take it something changed between 2.14.0 and 2.15.5 concerning selectable osts when using llapi_layout_ost_index_set().
> I am not calling llapi_layout_pool_name_set() as I generally want to be able to select OSTs from the entire set of OSTs available in the file system.  Generally, most Lustre file systems do not have a pool for all OSTs. Without specifying a pool, it would seem that 2.14.0 allows me to only select OSTs that are in the pool that the containing directory is using.  But 2.15.5 allows me to select OSTs from the entire set.  If my OST selections are all in the parent's pool, the file inherits the directory's pool name.  If my OST selections are not all in the parent's pool, the selection is still valid but layout for the file indicates no pool name is set.  2.15.5 works just great.
> For 2.14.0 is there a way to specify no pool for a file, and not have it default to using the containing directory's pool, but rather have as valid the entire set of OSTs in the file system?

Most people want files created in a directory with a default layout containing pool to also inherit the pool.  Otherwise, apps that specify a "simple" layout like "lfs setstripe -c 4" will not be created in the OST pool designated for that directory.

In general, creating files with components using OSTs from multiple pools is probably the wrong thing to do.  If you want to create files with hybrid layouts, it should be OK to use PFL layouts with different OST pools for each component.

If there is a legit reason to ignore the OST pools when selecting OSTs for a *single component*, then it would be interesting to hear about it.

---
Andreas Dilger
Principal Lustre Architect
adilger at thelustrecollective.com





More information about the lustre-discuss mailing list