Ubiquity partitioning: default gives: "Invalid Size" [OK] button; requires xkill!

Bug #197838 reported by Jim Dennis
16
Affects Status Importance Assigned to Milestone
partman-partitioning (Ubuntu)
Fix Released
Undecided
Unassigned
Hardy
Fix Released
Undecided
Unassigned
ubiquity (Ubuntu)
Fix Released
High
Evan
Hardy
Fix Released
High
Evan

Bug Description

Binary package hint: ubiquity

Starting installer (ubiquity) from Hardy Heron Alpha5 (AMD64) on an Opteron system with 2 SATA disks
(320GiB each). Selecting defaults for all screens up to the partitioning step and selecting the default
on that screen: "Guided - resize SCSI1 (0,0,0), partition #1 (sda) and use freed space" (followed by a line
reading: "New partition size: /dev/sd... 12% (8...| Ubuntu 8.04 88% 6.6GB)"(*)

* (Note: resizing that window shows the first part of the "termometer graph" to read: /dev/sda1 12% 90x.xMB"
   where the x.x varies as you resize, from ~903.? up to about 909.9MB; that's a bug in its own right, the
   size of the proposed partition can't reasonably be related to the size of the dialog box describing it!)

Selecting [Forward] from this point results in an error dialog with title: "Invalid size" and contents reading: "Invalid size" and an [OK] button. (No, it's not "Okay"). Choosing [OK] or the title bar [X] buttons simply
redraws a new, identical window (recentered and resized if you moved the error dialog around).

You are now in an endless loop. (I used xkill from a terminal window to kill and restart ubiquity).

Presumably this happens because of something odd in my existing partitions. I'm guessing it's
trying to move (and preserve the contents of) one partition. Here's fdisk -l output:

root@ubuntu:~# fdisk -l

Disk /dev/sda: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x83491957

   Device Boot Start End Blocks Id System
/dev/sda1 1 974 7823623+ 83 Linux

Disk /dev/sdb: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000

Disk /dev/sdb doesn't contain a valid partition table

The one partition, /dev/sda1, actually is just a temporary partition I used to download the alpha5 ISO image before transferring it to a USB thumb drive ... to burn on another machine and complete the install (Yay for more bandwidth at work than at home. NOT!)

Other bugs:

 * xkill ubquity leaves a number of partman processes still running. I had to separately use the following command to clean up the mess: ps wax | grep pa[r]t | while read p x; do kill "$p"; done

 7151 ? S 0:00 /bin/sh /lib/partman/display.d/80manual_partitioning
 7154 ? S 0:00 /bin/sh /lib/partman/display.d/80manual_partitioning
 7156 ? S 0:00 /bin/sh /lib/partman/choose_partition/45auto/choices
 7159 ? S 0:00 /bin/sh /lib/partman/choose_partition/45auto/choices
 7161 ? R 0:00 /bin/sh /lib/partman/choose_partition/45auto/choices
16144 ? S 0:00 log-output -t ubiquity --pass-stdout /bin/partman
16145 ? S 0:00 /bin/sh /bin/partman
16244 ? S 0:01 parted_server

I then did an aptitude update, removed and re-installed ubiquity (on the off chance that a new version
might have already been released to fix the issue). I get identical behavior from version 1.7.14

/var/log/partman was 600K lines long after several iterations of duplicating this (while writing up this bug
report). Even moving it aside and doing just one test results in 895 lines (attached)

A relevant excerpt might be:

parted_server: Closing infifo and outfifo
parted_server: main_loop: iteration 4
parted_server: Opening infifo
Device: yes
Model: ATA MAXTOR STM332062
Path: /dev/sda
Sector size: 512
Sectors: 625142448
Sectors/track: 63
Heads: 255
Cylinders: 38913
Partition table: yes
Type: msdos
Partitions: # id length type fs path name
(0,0,0) (0,0,62) -1 0-32255 32256 primary label /dev/sda-1
(0,1,0) (973,254,62) 1 32256-8011422719 8011390464 primary ext2 /dev/sda1
(974,0,0) (38912,254,62) -1 8011422720-320070320639 312058897920 pri/log free /dev/sda-1
(38913,0,0) (38913,80,62) -1 320070320640-320072933375 2612736 primary label /dev/sda-1
Dump finished.
/lib/partman/init.d/35dump: IN: DUMP =dev=sdb
parted_server: Read command: DUMP
parted_server: command_dump()
parted_server: Opening outfifo
parted_server: OUT: OK

parted_server: Closing infifo and outfifo
parted_server: main_loop: iteration 5
parted_server: Opening infifo
Device: yes
Model: ATA MAXTOR STM332062
Path: /dev/sdb
Sector size: 512
Sectors: 625142448
Sectors/track: 63
Heads: 255
Cylinders: 38913
Partition table: no
/lib/partman/init.d/70update_partitions: *******************************************************
/lib/partman/init.d/70update_partitions: IN: PARTITIONS =dev=sda
parted_server: Read command: PARTITIONS
parted_server: command_partitions()
parted_server: Opening outfifo
parted_server: OUT: OK

Removing the one partition (which was not bootable, nor active; simply a ext2/ext3 filesystem created
by Hardy alpha4 LiveCD for transporting an ISO image around) ... works around the bug. (Installation
proceeds normally after this point.

Suggestions:

I haven't looked at the code to these Ubiquity partman scripts ... but it's clear that they are complex and
have many possible corner cases. Ubiquity should NEVER just get into an endless [OK] Error dialog loop
like this. That dialog is modal and it leaves the inexperienced user no recourse other than a reboot (which
is likely to entirely lose them as a prospective Ubuntu user).

Ubiquity should detect when any of the partman automatically_partition scripts fails and offer to try another
strategy, or fall back to manual partitioning. If all else fails ask the user (with vociferous warnings) if they
want to wipe the disks and start from a fresh slate.

Related branches

Revision history for this message
Jim Dennis (jimd) wrote :
Colin Watson (cjwatson)
Changed in ubiquity:
importance: Undecided → High
status: New → Confirmed
Revision history for this message
Evan (ev) wrote :

"* (Note: resizing that window shows the first part of the "termometer graph" to read: /dev/sda1 12% 90x.xMB"
   where the x.x varies as you resize, from ~903.? up to about 909.9MB; that's a bug in its own right, the
   size of the proposed partition can't reasonably be related to the size of the dialog box describing it!)"

I'm not sure I understand what you mean by this. The size of each box is proportional to the size of the partition it represents. This is intentional and meant to give the user a visual representation of the layout of that portion of their disk after resizing.

Also, can you please run the installer in debug mode (`ubiquity -d` in a terminal window) and attach /var/log/syslog, /var/log/partman, and /var/log/installer/debug when the invalid size dialog appears?

Thanks!

Evan (ev)
Changed in ubiquity:
assignee: nobody → evand
milestone: none → ubuntu-8.04
Evan (ev)
Changed in partman-partitioning:
status: New → Confirmed
Changed in ubiquity:
status: Confirmed → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubiquity - 1.8.2

---------------
ubiquity (1.8.2) hardy; urgency=low

  [ Evan Dandrea ]
  * Treat the dbfilter returning nonzero as a fatal error in the
    noninteractive frontend.
  * Clean up the reboot message in the noninteractive frontend.
  * Optimize the md5 check on file copy (LP: #198019).
  * Copy the locale over to the target system when using oem-config.
    This was previously fixed for the alternate CD in LP 181291.
  * Use + instead of : for a replacement character for m-a as it is
    explicitly allowed by debconf policy.
  * Break out of resizing the partition in cases where partman fed us bad
    boundary values (LP: #197838).
  * Don't miscalculate with nested partitions in 03partition_too_small (LP:
    #198039).
  * Automatic update of included source packages: apt-setup
    1:0.31ubuntu7, choose-mirror 2.19ubuntu5, clock-setup 0.92ubuntu3,
    console-setup 1.21ubuntu6, localechooser 1.42ubuntu4, migration-
    assistant 0.6.1, partman-auto 73ubuntu7, tzsetup 1:0.20.

  [ Mario Limonciello ]
  * Don't unnecessarily hardcode the return of get_hostname()
    in the noninteractive frontend.
  * Turn off console blanking in Ubiquity init script to prevent
    confusion on the noninteractive frontend.
  * Update mythbuntu ubiquity icon.

  [ Colin Watson ]
  * Fix crash if partitioning failed when partitioning was automated (see LP
    #206113).
  * Remove packages in the restricted section from the installed system if
    apt-setup/restricted is false.
  * Fix crash with the "don't use" partitioning option (LP: #132611).
  * Use localised, human-readable names for partitioning methods.
  * Reorganise the wrapper script to cope with kdesu's broken argument
    handling.
  * Add a "Format the partition?" checkbox to the partition edit dialog
    (LP: #184838).
  * Give reconfigured packages access to our X display, so that
    usplash.postinst can check its dimensions (LP: #188764).

 -- Evan Dandrea <email address hidden> Tue, 08 Apr 2008 02:02:23 -0400

Changed in ubiquity:
status: Fix Committed → Fix Released
Revision history for this message
Evan (ev) wrote :

This was fixed a while ago. Marking it as such.

Changed in partman-partitioning:
status: Confirmed → Fix Released
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Related questions

Remote bug watches

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