Bug#775733: xemacs21-gnome-*: hangs during upgrade from squeeze -> wheezy -> jessie

2015-04-25 Thread Mark Brown
On Fri, Mar 27, 2015 at 11:58:01PM +0100, gregor herrmann wrote:
> On Tue, 24 Mar 2015 10:18:44 -0700, Mark Brown wrote:

> > Actually having opened the logs I'm not seeing the command lines, the
> > logs appear to start with displaying output from the commend.

> And the output shows the used command lines very close to the top:

> % grep -n "Command line" xemacs21-gnome-mule* 

Near, but not actually at, the top where one would expect to find them
(and frankly the lines are so long that if I did see them I'm pretty
sure I'd just have skipped over them).


signature.asc
Description: Digital signature


Bug#775733: xemacs21-gnome-*: hangs during upgrade from squeeze -> wheezy -> jessie

2015-03-27 Thread gregor herrmann
On Tue, 24 Mar 2015 10:18:44 -0700, Mark Brown wrote:

> Actually having opened the logs I'm not seeing the command lines, the
> logs appear to start with displaying output from the commend.

And the output shows the used command lines very close to the top:

% grep -n "Command line" xemacs21-gnome-mule* 
xemacs21-gnome-mule.patched.pass.log:7:0m0.0s INFO: Command line arguments: 
/srv/piuparts/sbin/piuparts --skip-logrotatefiles-test --warn-on-others 
--no-eatmydata --scriptsdir /etc/piuparts/scripts --allow-database 
--warn-on-leftovers-after-purge -i /etc/shells --scriptsdir 
/etc/piuparts/scripts-jessie --warn-on-debsums-errors --proxy 
http://localhost:3128 --mirror 'http://ftp.de.debian.org/debian main' --tmpdir 
/tmp/piupartss --arch amd64 -b /srv/piuparts/slave/basetgz/squeeze_amd64.tar.gz 
-d squeeze -d wheezy -d jessie --apt xemacs21-gnome-mule=None --bindmount 
/tmp/xem2 --testdebs-repo /tmp/xem2 --distupgrade-to-testdebs --log-file 
xemacs21-gnome-mule.patched.pass.log
xemacs21-gnome-mule_None.fail.log:41:0m0.0s INFO: Command line arguments: 
/srv/piuparts/sbin/piuparts --skip-logrotatefiles-test --warn-on-others 
--no-eatmydata --scriptsdir /etc/piuparts/scripts --allow-database 
--warn-on-leftovers-after-purge -i /etc/shells --scriptsdir 
/etc/piuparts/scripts-jessie --warn-on-debsums-errors --proxy 
http://localhost:3128 --mirror 'http://ftp.de.debian.org/debian main' --tmpdir 
/tmp/piupartss --arch amd64 -b /srv/piuparts/slave/basetgz/squeeze_amd64.tar.gz 
-d squeeze -d wheezy -d jessie -d testing --apt xemacs21-gnome-mule=None


Cheers,
gregor

-- 
 .''`.  Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
 : :' : Debian GNU/Linux user, admin, and developer -  https://www.debian.org/
 `. `'  Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
   `-   NP: Red Hot Chili Peppers: Savior


signature.asc
Description: Digital Signature


Bug#775733: xemacs21-gnome-*: hangs during upgrade from squeeze -> wheezy -> jessie

2015-03-24 Thread Mark Brown
On Wed, Mar 18, 2015 at 12:41:56AM +0100, Andreas Beckmann wrote:
> On 2015-03-17 11:21, Mark Brown wrote:

> > OK, thanks for the command lines.  How about the analysis for the patch?
> > I'm not keen on just applying random changes without understanding.

Actually having opened the logs I'm not seeing the command lines, the
logs appear to start with displaying output from the commend.

> As I understood #735268, the strict dependency xemacs21-support ->
> xemacs21 is no longer needed, so I removed that as well to break the
> circular dependency and always have a deterministic configuration order
> of the xemacs21 packages - that would simplify further debugging (which
> luckily was not needed). All xemacs21* packages passed my piuparts tests
> after applying this patch - no more hangs :-)

So you made this additional change in the hope that it might be
useful rather than as a targetted part of the same fix?  It is bad
practice to mix unrelated changes into a single patch since it makes
things harder to follow, means that review issues from unrelated changes
can mean that good parts of the change can't be applied or directed
appropriately.


signature.asc
Description: Digital signature


Bug#775733: xemacs21-gnome-*: hangs during upgrade from squeeze -> wheezy -> jessie

2015-03-17 Thread Andreas Beckmann
On 2015-03-17 11:21, Mark Brown wrote:
> OK, thanks for the command lines.  How about the analysis for the patch?
> I'm not keen on just applying random changes without understanding.

The Conflicts against the old transitional packages ensure they get
removed before the new versions are unpacked.

Circular package dependencies are problematic, since they need to be
broken arbitrarily to form a dag in order to perform topsort to get a
possible package configuration order.
circular deps often exhibit problems during upgrades in some corner
cases - recently the ancient one between perl and perl-modules removed
since it caused upgrade issues (reproducible ones, but there were
probably a lot of spurious ones in the past).
Since there are at least 2 points where the dependency can be broken, a
subtle change in the system can cause apt to do the break elsewhere -
maybe doing a much worse decision than before.

As I understood #735268, the strict dependency xemacs21-support ->
xemacs21 is no longer needed, so I removed that as well to break the
circular dependency and always have a deterministic configuration order
of the xemacs21 packages - that would simplify further debugging (which
luckily was not needed). All xemacs21* packages passed my piuparts tests
after applying this patch - no more hangs :-)

Hope that helps.


Andreas


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Bug#775733: xemacs21-gnome-*: hangs during upgrade from squeeze -> wheezy -> jessie

2015-03-17 Thread Mark Brown
On Tue, Mar 17, 2015 at 01:56:34AM +0100, Andreas Beckmann wrote:
> Package: 
> src:xemacs21,xemacs21-gnome-mule,xemacs21-gnome-nomule,xemacs21-gnome-mule-canna-wnn
> Followup-For: Bug #775733
> 
> Attached are two new piuparts logs:
> * failure due to deadlock and timeout
> * success after patching xemacs
> 
> The logfiles contain the piuparts command lines used.

OK, thanks for the command lines.  How about the analysis for the patch?
I'm not keen on just applying random changes without understanding.


signature.asc
Description: Digital signature


Bug#775733: xemacs21-gnome-*: hangs during upgrade from squeeze -> wheezy -> jessie

2015-03-16 Thread Andreas Beckmann
Package: 
src:xemacs21,xemacs21-gnome-mule,xemacs21-gnome-nomule,xemacs21-gnome-mule-canna-wnn
Followup-For: Bug #775733

Attached are two new piuparts logs:
* failure due to deadlock and timeout
* success after patching xemacs

The logfiles contain the piuparts command lines used.


Andreas


xemacs21-gnome-mule_None.fail.log.gz
Description: application/gzip


xemacs21-gnome-mule.patched.pass.log.gz
Description: application/gzip


Bug#775733: xemacs21-gnome-*: hangs during upgrade from squeeze -> wheezy -> jessie

2015-03-13 Thread Andreas Beckmann
Followup-For: Bug #775733

Hi,

no longer building the transitional packages is not sufficient to fix
the hangs. But making the upgrade path deterministic by breaking the
circular dependency and ensuring the old transitional packages get
removed before the other xemacs21 packages are upgraded does the job.
Tested patch attached.

The removal probably does unregister something that otherwise causes
the hang ...


Andreas
diff -Nru xemacs21-21.4.22/debian/changelog xemacs21-21.4.22/debian/changelog
--- xemacs21-21.4.22/debian/changelog	2015-01-19 13:23:54.0 +0100
+++ xemacs21-21.4.22/debian/changelog	2015-03-13 17:51:40.0 +0100
@@ -1,3 +1,10 @@
+xemacs21 (21.4.22-12) UNRELEASED; urgency=medium
+
+  * Break circular dependency hell.  (Closes: #735268)
+  * Add conflicts against the old transitional packages.  (Closes: #775733)
+
+ -- Andreas Beckmann   Fri, 13 Mar 2015 17:14:18 +0100
+
 xemacs21 (21.4.22-11) unstable; urgency=low
 
   * Remove GNOME transitional packages which have been present for more
diff -Nru xemacs21-21.4.22/debian/control xemacs21-21.4.22/debian/control
--- xemacs21-21.4.22/debian/control	2015-01-19 13:23:01.0 +0100
+++ xemacs21-21.4.22/debian/control	2015-03-13 17:14:02.0 +0100
@@ -22,6 +22,7 @@
 Package: xemacs21-mule
 Architecture: any
 Depends: xemacs21-support (= ${source:Version}), xemacs21-bin (= ${binary:Version}), ${shlibs:Depends}, xemacs21-mulesupport (>= 2003.04.23-1), xemacs21-basesupport (>= 2003.04.23-1), emacsen-common, ${misc:Depends}
+Conflicts: xemacs21-gnome-mule
 Provides: emacsen, info-browser, mail-reader, news-reader, www-browser, xemacs21
 Description: highly customizable text editor -- Mule binary
  XEmacs is a full fledged programming language with a mail reader,
@@ -48,6 +49,7 @@
 Package: xemacs21-nomule
 Architecture: any
 Depends: xemacs21-support (= ${source:Version}), xemacs21-bin (= ${binary:Version}), ${shlibs:Depends}, xemacs21-basesupport (>= 2003.04.23-1), emacsen-common, ${misc:Depends}
+Conflicts: xemacs21-gnome-nomule
 Provides: emacsen, info-browser, mail-reader, news-reader, www-browser, xemacs21
 Description: highly customizable text editor -- Non-mule binary
  XEmacs is a full fledged programming language with a mail reader,
@@ -70,6 +72,7 @@
 Package: xemacs21-mule-canna-wnn
 Architecture: any
 Depends: xemacs21-support (= ${source:Version}), xemacs21-bin (= ${binary:Version}), ${shlibs:Depends}, xemacs21-mulesupport (>= 2003.04.23-1), xemacs21-basesupport (>= 2003.04.23-1), emacsen-common, ${misc:Depends}
+Conflicts: xemacs21-gnome-mule-canna-wnn
 Suggests: xfonts-cjk
 Provides: emacsen, info-browser, mail-reader, news-reader, www-browser, xemacs21
 Description: highly customizable text editor -- Mule binary compiled with Canna and Wnn
@@ -112,7 +115,7 @@
 Conflicts: xemacs-support, sgml-base (<< 1.23)
 Replaces: xemacs-support
 Suggests: xemacs21-supportel (= ${source:Version})
-Depends: emacsen-common, xemacs21 (= ${source:Version}), ${misc:Depends}
+Depends: emacsen-common, ${misc:Depends}
 Description: highly customizable text editor -- architecture independent support files
  XEmacs is a full fledged programming language with a mail reader,
  news reader, info browser, web browser, calendar, specialized editor


Bug#775733: xemacs21-gnome-*: hangs during upgrade from squeeze -> wheezy -> jessie

2015-01-19 Thread Andreas Beckmann
Package: xemacs21-gnome-mule,xemacs21-gnome-nomule,xemacs21-gnome-mule-canna-wnn
Version: 21.4.22-10
Severity: serious
User: debian...@lists.debian.org
Usertags: piuparts

Hi,

during a test with piuparts I noticed your package fails to upgrade from
'squeeze' to 'wheezy' to 'jessie'.
It installed fine in 'squeeze', and upgraded to 'wheezy' successfully,
keeping the squeeze version installed since there was no xemacs in
wheezy, but then the upgrade to 'jessie' hangs.


I'm attaching upgrade logs from xemacs21-mule (which was successful) and
xemacs21-gnome-mule (which failed) even though xemacs21-gnome-mule seems
to be only a transitional package depending on xemacs21-mule.

The commands running at the point where something hangs are


apt-get -yf dist-upgrade

/usr/bin/dpkg --force-unsafe-io --status-fd 13 --configure libgpm2:amd64 
x11-common:all libice6:amd64 libgmp10:amd64 libnettle4:amd64 libhogweed2:amd
64 libffi6:amd64 libp11-kit0:amd64 libtasn1-6:amd64 libgnutls-deb0-28:amd64 
libsasl2-modules-db:amd64 libsasl2-2:amd64 libldap-2.4-2:amd64 libsm6:amd64 
libx11-data:all libxau6:amd64 libxdmcp6:amd64 libxcb1:amd64 li
bx11-6:amd64 libxext6:amd64 libxt6:amd64 libxmu6:amd64 emacsen-common:all 
xemacs21-support:all xemacs21-bin:amd64 libjpeg62-turbo:amd64 libpng12-0:amd64 
libjbig0:amd64 libtiff5:amd64 libxpm4:amd64 libxaw7:amd64 xem
acs21-mulesupport:all libgdbm3:amd64 perl:amd64 perl-modules:all 
xemacs21-basesupport:all xemacs21-mule:amd64 libtext-charwidth-perl:amd64 
libtext-iconv-perl:amd64 liblocale-gettext-perl:amd64 bsdmainutils:amd64 de
bconf-i18n:all libclass-isa-perl:all libswitch-perl:all ucf:all xz-utils:amd64 
xemacs21:all xemacs21-gnome-mule:amd64

/bin/sh /var/lib/dpkg/info/emacsen-common.postinst configure 2.0.5

/usr/bin/perl -w /usr/lib/emacsen-common/emacs-package-install --postinst 
emacsen-common

[emacs-package-i] 

/bin/sh /usr/lib/emacsen-common/packages/install/emacsen-common xemacs21

xemacs21 --no-init-file --no-site-file -batch -f batch-byte-compile 
/etc/xemacs21/site-start.d/00debian-vars.el 
/usr/share/xemacs21/site-lisp/debian-
startup.el


The problem is reproducable.

strace on the xemacs process yields:

sudo strace -p 5247
Process 5247 attached - interrupt to quit
restart_syscall(<... resuming interrupted call ...>^C 
Process 5247 detached


cheers,

Andreas


xemacs21-gnome-mule_21.4.22-10.log.gz
Description: application/gzip


xemacs21-mule_21.4.22-10.log.gz
Description: application/gzip