lack icon indicating copy to clipboard operation
lack copied to clipboard

lack/hunchentoot crashes on MacOS

Open slyrus opened this issue 8 years ago • 1 comments

When running my simple woo-crash test using hunchentoot, instead of woo, I see the following error:

Invalid index 11383 for (SIMPLE-ARRAY (UNSIGNED-BYTE 64) (8192)), should be a non-negative integer below 8192.
   [Condition of type SB-INT:INVALID-ARRAY-INDEX-ERROR]

Restarts:
 0: [ABORT] abort thread (#<THREAD "hunchentoot-worker-127.0.0.1:50761" RUNNING {1011B33643}>)

Backtrace:
  0: ((FLET #:BODY-FUN-694 :IN SB-KERNEL:%PUTHASH))
  1: (SB-KERNEL:%PUTHASH "07badbb316412cd313d853d70d6cd7aee693180d" #<HASH-TABLE :TEST EQUAL :COUNT 3445 {10048EEE53}> #<HASH-TABLE :TEST EQUAL :COUNT 0 {1011BDBBA3}>)
  2: (LACK.MIDDLEWARE.SESSION::FINALIZE #S(LACK.MIDDLEWARE.SESSION.STORE.MEMORY:MEMORY-STORE :STASH #<HASH-TABLE :TEST EQUAL :COUNT 3445 {10048EEE53}>) #S(LACK.MIDDLEWARE.SESSION.STATE.COOKIE:COOKIE-STATE ..
  3: (LACK.UTIL:FUNCALL-WITH-CB #<CLOSURE (LAMBDA (LACK.MIDDLEWARE.SESSION::ENV) :IN "/Users/sly/quicklisp/dists/quicklisp/software/lack-20161204-git/src/middleware/session.lisp") {10048442EB}> (:REQUEST-M..
  4: ((LAMBDA (LACK.MIDDLEWARE.BACKTRACE::ENV) :IN "/Users/sly/quicklisp/dists/quicklisp/software/lack-20161204-git/src/middleware/backtrace.lisp") (:REQUEST-METHOD :GET :SCRIPT-NAME "" :PATH-INFO "/" ...)..
  5: ((:METHOD HUNCHENTOOT:ACCEPTOR-DISPATCH-REQUEST (CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR T)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<HUNCHENTOOT:REQUEST {1011BDA533}>) [fa..
  6: ((:METHOD HUNCHENTOOT:HANDLE-REQUEST (HUNCHENTOOT:ACCEPTOR HUNCHENTOOT:REQUEST)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<HUNCHENTOOT:REQUEST {1011BDA533}>) [fast-method]
  7: ((:METHOD HUNCHENTOOT:PROCESS-REQUEST (T)) #<HUNCHENTOOT:REQUEST {1011BDA533}>) [fast-method]
  8: (HUNCHENTOOT::DO-WITH-ACCEPTOR-REQUEST-COUNT-INCREMENTED #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<CLOSURE (LAMBDA NIL :IN HUNCHENTOOT:PROCESS-CONNECTION) {1011BD98CB}>)
  9: ((:METHOD HUNCHENTOOT:PROCESS-CONNECTION (HUNCHENTOOT:ACCEPTOR T)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<USOCKET:STREAM-USOCKET {1011B32783}>) [fast-method]
 10: ((:METHOD HUNCHENTOOT:PROCESS-CONNECTION :AROUND (HUNCHENTOOT:ACCEPTOR T)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<USOCKET:STREAM-USOCKET {1011B32783}>) [fast-method]
 11: ((:METHOD HUNCHENTOOT:PROCESS-CONNECTION :AROUND (CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR T)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<USOCKET:STREAM-USOCKET {1011B32783}>)..
 12: ((FLET HUNCHENTOOT::PROCESS-CONNECTION% :IN HUNCHENTOOT::HANDLE-INCOMING-CONNECTION%) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<USOCKET:STREAM-USOCKET {1011B32783}>)
 13: ((LAMBDA NIL :IN BORDEAUX-THREADS::BINDING-DEFAULT-SPECIALS))
 14: ((FLET #:WITHOUT-INTERRUPTS-BODY-1148 :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE))
 15: ((FLET SB-THREAD::WITH-MUTEX-THUNK :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE))
 16: ((FLET #:WITHOUT-INTERRUPTS-BODY-358 :IN SB-THREAD::CALL-WITH-MUTEX))
 17: (SB-THREAD::CALL-WITH-MUTEX #<CLOSURE (FLET SB-THREAD::WITH-MUTEX-THUNK :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE) {A28FCFB}> #<SB-THREAD:MUTEX "thread result lock" owner: #<SB-THREAD:THREAD "..
 18: (SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE #<SB-THREAD:THREAD "hunchentoot-worker-127.0.0.1:50761" RUNNING {1011B33643}> NIL #<CLOSURE (LAMBDA NIL :IN BORDEAUX-THREADS::BINDING-DEFAULT-SPECIALS) {..
 19: ("foreign function: call_into_lisp")
 --more--

Followed by the following:

failed AVER: (NOT (ZEROP SB-IMPL::FREE-KV-SLOT))
This is probably a bug in SBCL itself. (Alternatively, SBCL
might have been corrupted by bad user code, e.g. by an undefined
Lisp operation like (FMAKUNBOUND 'COMPILE), or by stray pointers
from alien code or from unsafe Lisp code; or there might be a
bug in the OS or hardware that SBCL is running on.) If it seems
to be a bug in SBCL itself, the maintainers would like to know
about it. Bug reports are welcome on the SBCL mailing lists,
which you can find at <http://sbcl.sourceforge.net/>.
   [Condition of type SB-INT:BUG]

Restarts:
 0: [ABORT] abort thread (#<THREAD "hunchentoot-worker-127.0.0.1:50756" RUNNING {1011AF5ED3}>)

Backtrace:
  0: (SB-INT:BUG "~@<failed AVER: ~2I~_~S~:>" (NOT (ZEROP SB-IMPL::FREE-KV-SLOT)))
  1: (SB-IMPL::%FAILED-AVER (NOT (ZEROP SB-IMPL::FREE-KV-SLOT)))
  2: ((FLET #:BODY-FUN-694 :IN SB-KERNEL:%PUTHASH))
  3: (SB-KERNEL:%PUTHASH "d16974b4bb2d07e847f4ae96028f61bd99b33a70" #<HASH-TABLE :TEST EQUAL :COUNT 3464 {10048EEE53}> #<HASH-TABLE :TEST EQUAL :COUNT 0 {1011B1AC93}>)
  4: (LACK.MIDDLEWARE.SESSION::FINALIZE #S(LACK.MIDDLEWARE.SESSION.STORE.MEMORY:MEMORY-STORE :STASH #<HASH-TABLE :TEST EQUAL :COUNT 3464 {10048EEE53}>) #S(LACK.MIDDLEWARE.SESSION.STATE.COOKIE:COOKIE-STATE ..
  5: (LACK.UTIL:FUNCALL-WITH-CB #<CLOSURE (LAMBDA (LACK.MIDDLEWARE.SESSION::ENV) :IN "/Users/sly/quicklisp/dists/quicklisp/software/lack-20161204-git/src/middleware/session.lisp") {10048442EB}> (:REQUEST-M..
  6: ((LAMBDA (LACK.MIDDLEWARE.BACKTRACE::ENV) :IN "/Users/sly/quicklisp/dists/quicklisp/software/lack-20161204-git/src/middleware/backtrace.lisp") (:REQUEST-METHOD :GET :SCRIPT-NAME "" :PATH-INFO "/" ...)..
  7: ((:METHOD HUNCHENTOOT:ACCEPTOR-DISPATCH-REQUEST (CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR T)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<HUNCHENTOOT:REQUEST {1011B19623}>) [fa..
  8: ((:METHOD HUNCHENTOOT:HANDLE-REQUEST (HUNCHENTOOT:ACCEPTOR HUNCHENTOOT:REQUEST)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<HUNCHENTOOT:REQUEST {1011B19623}>) [fast-method]
  9: ((:METHOD HUNCHENTOOT:PROCESS-REQUEST (T)) #<HUNCHENTOOT:REQUEST {1011B19623}>) [fast-method]
 10: (HUNCHENTOOT::DO-WITH-ACCEPTOR-REQUEST-COUNT-INCREMENTED #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<CLOSURE (LAMBDA NIL :IN HUNCHENTOOT:PROCESS-CONNECTION) {1011B189BB}>)
 11: ((:METHOD HUNCHENTOOT:PROCESS-CONNECTION (HUNCHENTOOT:ACCEPTOR T)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<USOCKET:STREAM-USOCKET {1011AF5013}>) [fast-method]
 12: ((:METHOD HUNCHENTOOT:PROCESS-CONNECTION :AROUND (HUNCHENTOOT:ACCEPTOR T)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<USOCKET:STREAM-USOCKET {1011AF5013}>) [fast-method]
 13: ((:METHOD HUNCHENTOOT:PROCESS-CONNECTION :AROUND (CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR T)) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<USOCKET:STREAM-USOCKET {1011AF5013}>)..
 14: ((FLET HUNCHENTOOT::PROCESS-CONNECTION% :IN HUNCHENTOOT::HANDLE-INCOMING-CONNECTION%) #<CLACK.HANDLER.HUNCHENTOOT::CLACK-ACCEPTOR (host *, port 8080)> #<USOCKET:STREAM-USOCKET {1011AF5013}>)
 15: ((LAMBDA NIL :IN BORDEAUX-THREADS::BINDING-DEFAULT-SPECIALS))
 16: ((FLET #:WITHOUT-INTERRUPTS-BODY-1148 :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE))
 17: ((FLET SB-THREAD::WITH-MUTEX-THUNK :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE))
 18: ((FLET #:WITHOUT-INTERRUPTS-BODY-358 :IN SB-THREAD::CALL-WITH-MUTEX))
 19: (SB-THREAD::CALL-WITH-MUTEX #<CLOSURE (FLET SB-THREAD::WITH-MUTEX-THUNK :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE) {420BCFB}> #<SB-THREAD:MUTEX "thread result lock" owner: #<SB-THREAD:THREAD "..
 --more--

slyrus avatar Jun 06 '17 21:06 slyrus

Works OK here.

mdbergmann avatar Jun 16 '20 21:06 mdbergmann