Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 136959 - webapps gets uninstalled on reinstall w/ USE="vhost"
Summary: webapps gets uninstalled on reinstall w/ USE="vhost"
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Web Application Packages Maintainers
URL:
Whiteboard:
Keywords:
: 133057 135365 (view as bug list)
Depends on:
Blocks:
 
Reported: 2006-06-16 00:57 UTC by José González Monlleó
Modified: 2007-01-04 06:33 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description José González Monlleó 2006-06-16 00:57:25 UTC
when I reinstall(same version) some web aplicattion as squirremail, the pages of /var/www are removed, wouldn't remove this directory until that user execute webapp-config
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2006-06-16 02:09:13 UTC
That's an intended behaviour if you don't have USE="vhosts" set. If you do, then reopen this bug.
Comment 2 José González Monlleó 2006-06-19 09:45:36 UTC
I have USE="... vhost" set
Comment 3 Jakub Moc (RETIRED) gentoo-dev 2006-06-19 09:50:03 UTC
Well, sorry you'll need to describe better what's going then. What's exactly removed? Attach some emerge output or whatever.
Comment 4 José González Monlleó 2006-06-20 10:00:41 UTC
I emerge phpmyadmin, and I install phpmyadmin in a vhost named "terminal" ( webapp-config -I -h terminal -d phpmyadmin phpmyadmin 2.8.0.4), then phpmyadmin is installed in /var/www/terminal.

When I re-emerge phpmyadmin (same version) "emerge --oneshot phpmyadmin", the instalation in /var/www/terminal/htdocs/phpmyadmin is removed and shouldn't removed of this directory. 

Only should remove this directory if you unmerge phpmyadmin.
Comment 5 Renat Lumpau (RETIRED) gentoo-dev 2006-07-01 00:49:39 UTC
*** Bug 135365 has been marked as a duplicate of this bug. ***
Comment 6 Renat Lumpau (RETIRED) gentoo-dev 2006-07-01 01:06:46 UTC
*** Bug 133057 has been marked as a duplicate of this bug. ***
Comment 7 Renat Lumpau (RETIRED) gentoo-dev 2006-07-01 01:07:39 UTC
this is http://www.vhost-tools.org/ticket/32
Comment 8 Marcus D. Hanwell (RETIRED) gentoo-dev 2006-09-23 00:34:43 UTC
I still have USE="vhosts" set and did an emerge -ev world on my server yesterday to try and fix an issue forgetting about this bug. I can confirm that this bug is still present and it has removed each and every installation of every webapp I had on my server.

I am just in the process of restoring them now. This is an absolutely terrible bug to still have as it destroys service. Is there any reason this still hasn't been fixed? Is there something I could do to help out or do people just not feel that this is an important bug? When running a server this is the last thing I want to see happen - disruption in service.

I synced up the tree yesterday night before commencing with the emerge and have
app-admin/webapp-config-1.50.15 installed along with several webapps all from the main tree (no overlays or anything on my stable server).
Comment 9 FieldySnuts 2006-09-23 03:53:29 UTC
I cannot confirm this issue. However it may be due to the fact that the main location webapps are installed to, and where I then install them for use in, are on differing partitions.

My understanding is that if webapp can make symlinks, it does this. Apparently a situation where it cannot do this is when it's being installed for use on a different partition, at which point copies are made.

Am I thinking along the right lines here?

Portage 2.1.1 (default-linux/amd64/2006.0, gcc-3.4.6, glibc-2.3.6-r4, 2.6.16-netwerkz x86_64)
=================================================================
System uname: 2.6.16-netwerkz x86_64 Intel(R) Xeon(TM) CPU 2.80GHz
Gentoo Base System version 1.12.5
Last Sync: Sat, 23 Sep 2006 10:00:08 +0000
ccache version 2.3 [disabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: [Not Present]
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=x86-64 -Os -pipe -fomit-frame-pointer -fforce-addr -mno-tls-direct-seg-refs"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /var/bind"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=x86-64 -Os -pipe -fomit-frame-pointer -fforce-addr -mno-tls-direct-seg-refs"
DISTDIR="/usr/gentoo/distfiles"
FEATURES="autoconfig distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict"
GENTOO_MIRRORS="ftp://mirror.datapipe.net/gentoo http://gentoo.mirrors.pair.com/ http://mirror.usu.edu/mirrors/gentoo/"
LINGUAS=""
MAKEOPTS="-j3"
PKGDIR="/usr/gentoo/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 apache2 bash-completion berkdb bzip2 crypt dlloader elibc_glibc ftp hardened input_devices_evdev input_devices_keyboard input_devices_mouse kernel_linux ncurses nls nptl nptlonly pam perl pic pie python readline ssl tcpd unicode userland_GNU userlocales vhosts video_cards_apm video_cards_ark video_cards_ati video_cards_chips video_cards_cirrus video_cards_cyrix video_cards_dummy video_cards_fbdev video_cards_glint video_cards_i128 video_cards_i810 video_cards_mga video_cards_neomagic video_cards_nv video_cards_rendition video_cards_s3 video_cards_s3virge video_cards_savage video_cards_siliconmotion video_cards_sis video_cards_sisusb video_cards_tdfx video_cards_tga video_cards_trident video_cards_tseng video_cards_v4l video_cards_vesa video_cards_vga video_cards_via video_cards_vmware video_cards_voodoo xml2 zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 10 Marcus D. Hanwell (RETIRED) gentoo-dev 2006-09-23 04:01:23 UTC
The bahaviour I am seeing involved the webapp, phpmyadmin for arguments sake, being re-emerged, and then it removes the old version and in that step calls webapp-config to remove *all* webapp-config installed instances. So phpmyadmin is still installed but webapp-config has been called to remove every installation!

A very irritating bug. Shouldn't you just stop webapp-config from being called to remove instances altogether? It doesn't automatically install instances when the vhost USE flag is set, so why should it automatically remove them at all either? It does not seem logical to me. The eclass could be modified quite easily to give consistent behaviour at least. This wouldn't fix it for the case where the vhost USE flag is not set though. IMHO it would still be incorrect to call webapp-config to remove a webapp on a re-merge of the webapp.

Hope you understand what I mean now - phpmyadmin is already installed, I have installed an instance using webapp-config. Then I re-emerge the same version of phpmyadmin and the unmerge after the emerge removes all instances.
Comment 11 FieldySnuts 2006-09-23 04:13:04 UTC
Hm. Okay. I do use phpmyadmin and have upgraded it multiple times, sounds like having my stuff on different partitions is saving me here. Though if more people are having the issue you are, I find it rather difficult to believe others aren't reporting here, or on IRC.

Anyway, this isn't a chat so unless any further info is needed from me, i'll shut my trap.
Comment 12 Marcus D. Hanwell (RETIRED) gentoo-dev 2006-09-23 04:20:35 UTC
I think you are misunderstanding. If you *upgrade* any webapp then it goes into a *new slot* and so emerge doesn't unmerge the old instance. I think this is the key, and most people never re-emerge the same version which causes the previous instance to be unmerged.

cryos htdocs # emerge -pv phpmyadmin

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] dev-db/phpmyadmin-2.9.0  USE="vhosts" 0 kB

Notice the R, not U, meaning it will be re-emerged. Now try emerging it and you will get any webapp-config instances unmerged. If these are your active sites it will probably make you unhappy. I did a complete rebuild of all packages on my server (i.e. emerge -ev world) and this of course re-emerged all of my webapps too. I am surprised more people are not reporting this issue, but it isn't something people do all the time. It is nonetheless quite a nasty bug when you encounter it.
Comment 13 Ian P. Christian 2006-09-23 04:59:50 UTC
I also confirm this - I'm amazing it's still a bug too, as far as I'm concerend webapp config should be completly blocked untill this is fixed, because encouraging people to use it when it's working like this is awful.  I've had trac sites of mine go down due to it several times 
Comment 14 Marcus D. Hanwell (RETIRED) gentoo-dev 2006-09-28 03:29:03 UTC
What is stopping you from modifying the function webapp_pkg_prerm () function? Instead of automatically removing anything just warn users they need to uninstall x, y and z. Then users don't get nasty surprises - I don't think the current implementation is helping anyone. Just leave the following, and remove the if else block around it then we can be advised upon what is left remaining, pick it up in elog etc...

            ewarn "Don't forget to use webapp-config to remove the copy of"
            ewarn "${PN}-${PVR} installed in"
            ewarn
            ewarn "    ${x}"
Comment 15 Stuart Herbert (RETIRED) gentoo-dev 2006-09-30 04:14:06 UTC
Hi,

I'm sorry for the delay in someone fixing this bug.  I've started looking into it.  Hopefully I'll have a fix soon.

Best regards,
Stu
Comment 16 Renat Lumpau (RETIRED) gentoo-dev 2007-01-03 12:19:09 UTC
folks,

I finally got around to looking at this. I patched the eclass so that w-c does not get called to remove any copies of a web app installed into a virtual host if USE=vhosts. This means that nothing will get uninstalled on reinstall.

Please test and reopen if it's still broken.
Comment 17 Marcus D. Hanwell (RETIRED) gentoo-dev 2007-01-03 12:46:28 UTC
It is great to hear that such a critical bug has finally been fixed - this bit me more than once I am afraid... I will test is as soon as I get chance to. Thanks.