Subject: Re: [X2Go-Dev] Bug#471: ATTENTION @Mike#1 - serious bug in x2goserver upgrade script (debian wheezy+squeeze)

From: Stefan Baur <[email-masked]>
Date: Thu, 03 Apr 2014 09:52:58 +0200

Gah. E_NOTENOUGHCAFFEINE. This was supposed to go to the list and
bugtracker as well.

-------- Original-Nachricht --------
Betreff: Re: [X2Go-Dev] Bug#471: ATTENTION @Mike#1 - serious bug in
x2goserver upgrade script (debian wheezy+squeeze)
Datum: Thu, 03 Apr 2014 09:50:09 +0200
Von: Stefan Baur <[email-masked]>
Antwort an: Stefan Baur <[email-masked]>,
[email-masked], [email-masked]
An: Mike Gabriel <[email-masked]>

Addendum:

This is part of the "ps ax" output on one of the affected machines:

 2563 pts/2    S+     0:00 apt-get upgrade -y
 4958 pts/1    S+     0:00 /usr/bin/perl -w /usr/share/debconf/frontend
/var/lib/dpkg/info/x2goserver.postinst configure 4.0.1.13-0x2go1+
 4962 pts/1    Z+     0:00 [x2goserver.post] <defunct>
 5004 pts/1    S+     0:00 /usr/bin/perl /usr/sbin/x2gocleansessions

manually killing x2gocleansessions (" kill $(pidof x2gocleansessions)")
seems to be a workaround, but still, we need a real fix in the form of
an updated package.

-Stefan

Am 03.04.2014 08:47, schrieb Stefan Baur:
> Package: x2goserver
> Severity: grave
> Version: 4.0.1.14
> 
> Hi Mike,
> 
> this is happening on
> 
> x2goserver (4.0.1.14-0x2go1+git20140402.842+squeeze.main.1)
> 
> as well.
> 
> Please help! All my machines are stuck in the upgrade process! This is
> not good!
> 
> -Stefan
> 
> 
> -------- Original-Nachricht --------
> Betreff: [X2Go-User] Unable to upgrade
> Datum: Wed, 2 Apr 2014 19:14:53 +0300
> Von: Panayotis Katsaloulis <[email-masked]>
> An: [email-masked]
> 
> Hello all!
> 
> I have installed x2go, I can connect - everything is fine.
> In the past I think there was a problem when I tried to launch a client
> (as xterm session), and which I was unable to properly close, so I
> forced close it.
> 
> The problem is that I am unable to upgrade through apt-get upgrade though.
> 
> Now when I try to upgrade I get this message:
> 
> Processing triggers for menu (2.1.46) ...
> Setting up x2goserver (4.0.1.14-0x2go1+git20140402.842+wheezy.main.1) ...
> Group x2gouser already exists.
> User x2gouser already exists.
> [info] Cleaning up stale X2Go sessions..
> 
> … and the screen remains like this forever.
> 
> The uname -a command produces the following result:
> 
> Linux danube 3.13-1-amd64 #1 SMP Debian 3.13.7-1 (2014-03-25) x86_64
> GNU/Linux
> 
> Any help?
> 
> --
> Panayotis
> 
> 
> _______________________________________________
> X2Go-User mailing list
> [email-masked]
> https://lists.berlios.de/mailman/listinfo/x2go-user
> _______________________________________________
> X2Go-Dev mailing list
> [email-masked]
> https://lists.berlios.de/mailman/listinfo/x2go-dev
>

---

From: Stefan Baur <[email-masked]>
Date: Thu, 03 Apr 2014 10:13:30 +0200

Further Info:

1) I'm guessing it's a race condition, with two instances of
x2gocleansessions running simpultaneously and locking each other up:

e.g. sample output:

ps ax|grep clean
 1995 ?        S      0:36 /usr/bin/perl /usr/sbin/x2gocleansessions
16142 pts/0    S+     0:05 /usr/bin/perl /usr/sbin/x2gocleansessions

2) The kill command given below in my previous e-mail doesn't work.
What worked was this:

ps ax | grep x2gocleansessions | grep perl \
| awk ' { print $1 }' | xargs -n 1 kill

(the backslash is so it can be broken up in two lines)
You have to run this in a second terminal session (as root) while the
apt-get upgrade process is stuck in the first.

It will then continue without reporting an error.

-Stefan

---

From: Mike Gabriel <[email-masked]>
Date: Thu, 03 Apr 2014 08:19:08 +0000

Hi Stefan, hi Panayotis

> seems to be a workaround, but still, we need a real fix in the form of

Can you please:

   o upgrade to 4.0.1.14
   o killall x2gocleansessions once the init script hangs during upgrade
   o replace /usr/sbin/x2gocleansessions by this file [1]
   o sudo service x2goserver start
   o now it should not hang...

Sorry, I forgot one cherry-pick to the release/4.0.1.x branch in  
x2goserver.git.

[1]  
http://code.x2go.org/gitweb?p=x2goserver.git;a=blob;f=x2goserver/sbin/x2gocleansessions;h=7fc5e8a428bcbd7867e2083f897915a2b286b32b;hb=336917af0dc087e4540fb3d55eb501d2fa4349be

Greets,
Mike
-- 

DAS-NETZWERKTEAM
mike gabriel, herweg 7, 24357 fleckeby
fon: +49 (1520) 1976 148

GnuPG Key ID 0x25771B31
mail: [email-masked], http://das-netzwerkteam.de

freeBusy:
https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb

---

From: Panayotis Katsaloulis <[email-masked]>
Date: Thu, 3 Apr 2014 11:32:35 +0300

Strangely. even after a reboot the problem persisted.
I had already uninstalled and re-installed the package, with no luck either.

So, I killed the x2gocleansessions manually as proposed. Then upgrade script worked as expected.
No more hanging happened.
I didn’t manually replace the script, but it should have been done by the re-installation.

On April 3, 2014 at 11:19:13 AM, Mike Gabriel ([email-masked]) wrote:
> > 4962 pts/1 Z+ 0:00 [x2goserver.post]  

--  
Panayotis

---

From: Stefan Baur <[email-masked]>
Date: Thu, 03 Apr 2014 10:47:34 +0200

Am 03.04.2014 10:19, schrieb Mike Gabriel:
>> 2563 pts/2    S+     0:00 apt-get upgrade -y 4958 pts/1    S+
>> 0:00 /usr/bin/perl -w /usr/share/debconf/frontend 
>> /var/lib/dpkg/info/x2goserver.postinst configure
>> 4.0.1.13-0x2go1+ 4962 pts/1    Z+     0:00 [x2goserver.post]
>> <defunct> 5004 pts/1    S+     0:00 /usr/bin/perl
>> /usr/sbin/x2gocleansessions

> o upgrade to 4.0.1.14

That is actually what I was doing - no idea why the ps output suggests
that the 4.0.1.13-postinst is being called.

> o killall x2gocleansessions once the init script hangs during

I used

instead as I came up with that before you replied.
(I wasn't sure if killall does more nasty things, and the system I was
trying it on was already b0rked enough.)

... so I skipped this part ...
> o replace /usr/sbin/x2gocleansessions by this file [1] o sudo
> service x2goserver start

> Sorry, I forgot one cherry-pick to the release/4.0.1.x branch in 

Gna. Gnagnagna. :-/

-Stefan

---

From: Mike Gabriel <[email-masked]>
Date: Thu, 03 Apr 2014 09:31:30 +0000

>> o now it should not hang...

Does service x2goserver start now work? Does the system reboot without  
hanging?

Mike
-- 

DAS-NETZWERKTEAM

GnuPG Key ID 0x25771B31

freeBusy:

---

From: Stefan Baur <[email-masked]>
Date: Thu, 03 Apr 2014 11:41:37 +0200

Am 03.04.2014 11:31, schrieb Mike Gabriel:
> Does service x2goserver start now work? Does the system reboot 
> without hanging?

Seems to work just fine here.

/etc/init.d/x2goserver start

squeeze:
Cleaning up stale X2Go sessions..
And returns to the prompt immediately.

wheezy:
[info] Cleaning up stale X2Go sessions..
And returns to the prompt immediately.

I rebooted my test machines (users wouldn't be happy about unscheduled
reboots on the production ones) and it worked, too.

-Stefan

---

From: Mike Gabriel <[email-masked]>
Date: Thu, 03 Apr 2014 09:43:59 +0000

Hi Stefan,

> reboots on the production ones) and it worked, too.

Ok. Same here.

Packages (4.0.1.15) are building on jenkins.x2go.org...  
(Lauchpad/Ubuntu builds will follow soon).

Mike
-- 

DAS-NETZWERKTEAM

GnuPG Key ID 0x25771B31

freeBusy:

---

From: Stefan Baur <[email-masked]>
Date: Thu, 03 Apr 2014 12:18:51 +0200

> (Lauchpad/Ubuntu builds will follow soon).

Build failed. :-(

What's wrong?

-Stefan