Quicklisp hang when fetching asdf.lisp

162 views
Skip to first unread message

Makarov Alexey

unread,
Oct 27, 2010, 10:52:35 AM10/27/10
to Quicklisp
Hello! I try use Quicklisp on SBCL 1.0.37 (from sbcl.org) and SBCL
1.0.42 (https://sites.google.com/site/dmitryvksite/sbcl-distr/
sbcl-1.0.42-threads.msi), operation system is Windows XP (64 bit).

Quicklisp hang on fetch when I try to quickload any system.

CL-USER> (ql:quickload "cl-gtk2-gtk")
To load "cl-gtk2-gtk":
Load 5 ASDF systems:
bordeaux-threads cffi closer-mop iterate trivial-garbage
Install 1 Quicklisp release:
cl-gtk2
; Fetching #<URL "http://beta.quicklisp.org/archive/cl-gtk2/2010-10-06/
cl-gtk2-20101006-git.tgz">
; 367.57KB
============================

In this place they stop. Also, this problem is repeated when quicklisp
is fetching asdf.lisp:

CL-USER> (load "c:/quicklisp.lisp")

==== quicklisp quickstart loaded ====

To continue, evaluate: (quicklisp-quickstart:install)

T
CL-USER> (quicklisp-quickstart:install)
; Fetching #<URL "http://beta.quicklisp.org/quickstart/asdf.lisp">
; 144.48KB
========================


But not repeated when fetching quicklisp.tar:


(in-package quicklisp-quickstart)
#<PACKAGE "QUICKLISP-QUICKSTART">
QUICKLISP-QUICKSTART> (let ((tmptar (qmerge "tmp/quicklisp.tar")))
(renaming-fetch *quicklisp-tar-url* tmptar)
(unpack-tarball tmptar :directory (qmerge "./")))
; Fetching #<URL "http://beta.quicklisp.org/quickstart/quicklisp.tar">
; 160.00KB
==================================================
163,840 bytes in 0.78 seconds (204.87KB/sec)
WARNING: Unknown tar block payload code -- 103
NIL

Do you have any ideas to solve this problem?

Zach Beane

unread,
Oct 27, 2010, 9:34:54 PM10/27/10
to quic...@googlegroups.com
Hmm, that is pretty strange. I'm not sure what might be happening. Is
there you can interrupt SBCL and get a backtrace from the point where it
hangs?

Thanks,
Zach

Nikodemus Siivola

unread,
Oct 28, 2010, 2:27:38 AM10/28/10
to quic...@googlegroups.com
On 28 October 2010 04:34, Zach Beane <xa...@xach.com> wrote:
> Hmm, that is pretty strange. I'm not sure what might be happening. Is
> there you can interrupt SBCL and get a backtrace from the point where it
> hangs?

He can't -- Control-C on Windows will just take down the process, unfortunately.

The best (pretty lame) bet is probably to (TRACE "QL") or something like that.

Cheers,

-- Nikodemus

Makarov Alexey

unread,
Oct 28, 2010, 2:56:06 AM10/28/10
to quic...@googlegroups.com
Sorry, it seems the problem is not of Quicklisp, because on my computer
installed anti-virus - AVG 2011, if I disable it, the Quicklisp work
fine.

--
Makarov Alexey <alex...@yandex.ru>

Anton Kovalenko

unread,
Oct 28, 2010, 3:03:18 AM10/28/10
to quic...@googlegroups.com
Nikodemus Siivola <nikodemu...@gmail.com> writes:

Original posted mentioned dmitryvk's threaded build of SBCL for windows.
I'm going to implement Control-C handling for threaded builds (as part
of a larger win32 I/O improvement effort, currently restricted mostly to
thread-related issues: http://github.com/akovalenko/sbcl-win32-threads ).

There is a problem with Control-C, however: what thread should receive a signal?
(on Windows, "console control handlers" are invoked in entirely separate
system thread, so it has to be turned into interrupt_lisp_thread, and
some existing lisp thread has to be selected as a recipient).

--
Regards, Anton Kovalenko
+7(916)345-34-02 | Elektrostal' MO, Russia

Nikodemus Siivola

unread,
Oct 28, 2010, 3:16:54 AM10/28/10
to quic...@googlegroups.com
On 28 October 2010 10:03, Anton Kovalenko <an...@sw4me.com> wrote:

> Original posted mentioned dmitryvk's threaded build of SBCL for windows.
> I'm going to implement Control-C handling for threaded builds (as part
> of a larger win32 I/O improvement effort, currently restricted mostly to
> thread-related issues: http://github.com/akovalenko/sbcl-win32-threads ).
>
> There is a problem with Control-C, however: what thread should receive a signal?
> (on Windows, "console control handlers" are invoked in entirely separate
> system thread, so it has to be turned into interrupt_lisp_thread, and
> some existing lisp thread has to be selected as a recipient).

This is probably best take to sbcl-devel. :)

Cheers,

-- Nikodemus

Zach Beane

unread,
Oct 28, 2010, 6:54:31 AM10/28/10
to quic...@googlegroups.com
Ouch. I'm not sure how I can work around that. I don't want people to
have to turn off anti-virus to use Quicklisp!

Makarov Alexey

unread,
Oct 28, 2010, 1:39:48 PM10/28/10
to quic...@googlegroups.com
Probably reason of a problem open connection with the server in time file records in (lambda () (save-response file header cbuf)):

(defun fetch (url file &key (follow-redirects t) quietly
(maximum-redirects *maximum-redirects *))
"Request URL and write the body of the response to FILE."
....
(if quietly
(save-response file header cbuf)
(call-with-progress-bar (content-length header)
(lambda ()
(save-response file header cbuf))))))
....)

It is noticed that the problem appears not constantly, but anyhow is present at least for one file at (quicklisp-quickstart:install).

Reply all
Reply to author
Forward
0 new messages