Bug 1331855

Summary: docker-latest-storage-setup fails with error "not a valid identifier"
Product: Red Hat Enterprise Linux 7 Reporter: Micah Abbott <miabbott>
Component: docker-latestAssignee: Lokesh Mandvekar <lsm5>
Status: CLOSED ERRATA QA Contact: atomic-bugs <atomic-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.2CC: lsu, qcai, vgoyal
Target Milestone: rcKeywords: Extras, ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: docker-latest-1.10.3-20.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-05-12 14:56:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Micah Abbott 2016-04-29 20:02:17 UTC
Description of problem:
When running 'docker-latest-storage-setup' on an upgraded RHELAH, the service fails with the error:

/usr/bin/docker-latest-storage-setup: line 372: local: `docker-latest_devmapper_meta_dir=/var/lib/docker-latest/devicemapper/metadata/': not a valid identifier


Version-Release number of selected component (if applicable):
# rpm -q docker-latest
docker-latest-1.10.3-19.el7.x86_64


How reproducible:
Pretty consistently

Steps to Reproduce:
1.  Boot into RHELAH 7.2.3-1
2.  Upgrade to 7.2.4 and reboot
3.  systemctl stop docker
4.  systemctl start docker-latest-storage-setup


Actual results:
Apr 29 19:56:10 rhel-atomic-7.2-test systemd[1]: Starting Docker Storage Setup...
Apr 29 19:56:10 rhel-atomic-7.2-test docker-latest-storage-setup[11457]: /usr/bin/docker-latest-storage-setup: line 372: local: `docker-latest_devmapper_meta_dir=/var/lib/docker-latest/devicemapper/metadata/': not a valid identifier
Apr 29 19:56:10 rhel-atomic-7.2-test systemd[1]: docker-latest-storage-setup.service: main process exited, code=exited, status=1/FAILURE
Apr 29 19:56:10 rhel-atomic-7.2-test systemd[1]: Failed to start Docker Storage Setup.
Apr 29 19:56:10 rhel-atomic-7.2-test systemd[1]: Unit docker-latest-storage-setup.service entered failed state.
Apr 29 19:56:10 rhel-atomic-7.2-test systemd[1]: docker-latest-storage-setup.service failed.



Expected results:
'docker-latest-pool' LV created


Additional info:
I found that if I change the name of the variable 'docker-latest_devmapper_meta_dir' in the script to use all underscores 'docker_latest_devmapper_meta_dir', the script will run sucessfully.


-bash-4.2# cp /usr/bin/docker-latest-storage-setup /var/
-bash-4.2# sed -i 's/docker-latest_devmapper_meta_dir/docker_latest_devmapper_meta_dir/' /var/docker-latest-storage-setup 
-bash-4.2# /var/docker-latest-storage-setup 
  Rounding up size to full physical extent 24.00 MiB
  Logical volume "docker-latest-poolmeta" created.
  Logical volume "docker-latest-pool" created.
  WARNING: Converting logical volume atomicos/docker-latest-pool and atomicos/docker-latest-poolmeta to pool's data and metadata volumes.
  THIS WILL DESTROY CONTENT OF LOGICAL VOLUME (filesystem etc.)
  Converted atomicos/docker-latest-pool to thin pool.
  Logical volume "docker-latest-pool" changed.
-bash-4.2# lvs
  LV                 VG       Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  docker-latest-pool atomicos twi-a-t--- 4.00g             0.48   0.16                            
  docker-pool        atomicos twi-a-t--- 6.70g             0.87   0.16                            
  root               atomicos -wi-ao---- 2.93g                                                    
-bash-4.2# systemctl start docker-latest
-bash-4.2# docker info
Containers: 0
Images: 0
Server Version: 1.10.3
Storage Driver: devicemapper
 Pool Name: atomicos-docker--latest--pool
 Pool Blocksize: 524.3 kB
 Base Device Size: 10.74 GB
 Backing Filesystem: xfs
 Data file: 
 Metadata file: 
 Data Space Used: 20.45 MB
 Data Space Total: 4.295 GB
 Data Space Available: 4.275 GB
 Metadata Space Used: 40.96 kB
 Metadata Space Total: 25.17 MB
 Metadata Space Available: 25.12 MB
 Udev Sync Supported: true
 Deferred Removal Enabled: true
 Deferred Deletion Enabled: true
 Deferred Deleted Device Count: 0
 Library Version: 1.02.107-RHEL7 (2015-12-01)
Execution Driver: native-0.2
Logging Driver: journald
Kernel Version: 3.10.0-327.18.2.el7.x86_64
Operating System: Red Hat Enterprise Linux Atomic Host 7.2
CPUs: 2
Total Memory: 1.797 GiB
Name: rhel-atomic-7.2-test
ID: 7CGH:IC22:KP25:XCZU:LD6K:56GI:DX26:FFED:XJFO:P4Q5:K3JP:CJ4S

Comment 2 Vivek Goyal 2016-04-29 20:54:08 UTC
Lokesh, we had discussed this one. We don't have to replace the variable name with docker-latest. Did you get a chance to make it working.

Comment 3 Lokesh Mandvekar 2016-05-02 18:19:23 UTC
upcoming fix...

Comment 5 Luwen Su 2016-05-03 09:58:23 UTC
Prepare:
A free disk in vm 
Disk /dev/vda: 8589 MB

config file:
# cat /etc/sysconfig/docker-latest-storage-setup 
# Edit this file to override any configuration options specified in
# /usr/lib/docker-latest-storage-setup/docker-latest-storage-setup.
#
# For more details refer to "man docker-latest-storage-setup"
WIPE_SIGNATURES=true
DEVS=/vda
VG=docker-latest


Reproduced in docker-latest-1.10.3-19.el7.x86_64
#docker-latest-storage-setup
..............
If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)
  Physical volume "/dev//vda1" successfully created
  Volume group "docker-latest" successfully created
/usr/bin/docker-latest-storage-setup: line 372: local: `docker-latest_devmapper_meta_dir=/var/lib/docker-latest/devicemapper/metadata/': not a valid identifier

Verified in docker-latest-1.10.3-21.el7.x86_64
clean the env first:
#vgremove -ff docker-latest ; pvremove -ff /dev/vda1
#mkfs /dev/vda

#docker-latest-storage-setup
.....................
THIS WILL DESTROY CONTENT OF LOGICAL VOLUME (filesystem etc.)
  Converted docker-latest/docker-latest-pool to thin pool.
  Logical volume "docker-latest-pool" changed.

Comment 6 Lokesh Mandvekar 2016-05-03 15:35:44 UTC
*** Bug 1332230 has been marked as a duplicate of this bug. ***

Comment 8 errata-xmlrpc 2016-05-12 14:56:29 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-1057.html