Jammy subiquity/curtin fails raid install: invalid storage config data

Bug #1954848 reported by Paride Legovini
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
subiquity
New
Undecided
Unassigned

Bug Description

Raid1 install fails on jammy-live-server-amd64 with subiquity cde71504 from stable/ubuntu-22.04. Full logs attached. Interesting excerpt:

Traceback (most recent call last):
  File "/snap/subiquity/2942/lib/python3.8/site-packages/curtin/commands/main.py", line 202, in main
    ret = args.func(args)
  File "/snap/subiquity/2942/lib/python3.8/site-packages/curtin/log.py", line 97, in wrapper
    return log_time("TIMED %s: " % msg, func, *args, **kwargs)
  File "/snap/subiquity/2942/lib/python3.8/site-packages/curtin/log.py", line 79, in log_time
    return func(*args, **kwargs)
  File "/snap/subiquity/2942/lib/python3.8/site-packages/curtin/commands/block_meta.py", line 99, in block_meta
    extract_storage_ordered_dict(cfg))
  File "/snap/subiquity/2942/lib/python3.8/site-packages/curtin/storage_config.py", line 389, in extract_storage_ordered_dict
    raise ValueError("invalid storage config data")
ValueError: invalid storage config data

Revision history for this message
Paride Legovini (paride) wrote :
Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

storage:
  config: []
  version: 1

How did we do that??

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

Oh hah I think this is a race (and nothing to do with RAID, actually). Here is what happens:

1) A udev block subsystem event is received so we start to run probert.
2) The filesystem config is submitted (and we stop listening to udev)
3) The probert run started in 1) completes and we load the probe data from probert, overwriting the config submitted in 2)
4) We write the curtin config out to disk, writing out a trivial storage config

The reason we haven't seen this before is that the changes to apt configuration means that the gap between 2) and 4) above can now be waaaay longer; before the config would be written to disk almost immediately after the filesystem config was submitted (perhaps there was a window for as long as the confirmation dialog was showing? not sure).

Paride Legovini (paride)
tags: added: rls-ff-incoming rls-jj-incoming
Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :
Revision history for this message
Paride Legovini (paride) wrote :

This is also affecting the "reuse existing partitions" test case.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.