Skip to content

Instantly share code, notes, and snippets.

@jmercouris
Last active October 17, 2018 11:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jmercouris/fed349a02fbcec01346fcefc441c7559 to your computer and use it in GitHub Desktop.
Save jmercouris/fed349a02fbcec01346fcefc441c7559 to your computer and use it in GitHub Desktop.
(defroute ("/create/component" :method :POST) (&key |name| |material| |machine-time| |file|)
(with-logged-in
(let* ((filename (concatenate 'string
(hash-password (write-to-string (id (get-user (gethash :email *session*)))))
(gethash "filename" (second |file|))))
(data (slot-value (first |file|) 'flexi-streams::vector))
(file-path (merge-pathnames filename *data-storage-directory*))
(material (first |material|))
(machine-time (first |machine-time|))
(name (first |name|)))
(with-open-file (s file-path
:if-does-not-exist :create
:if-exists :supersede :direction :output
:element-type '(unsigned-byte 8))
(write-sequence data s)
(create-component (gethash :email *session*)
file-path
material
machine-time
name)))
(render-page
(cl-markup:markup
(:h1 "Component created.")))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
error
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Fcgi server is started.
Listening on localhost:9000.
77.14.1.52 - [17/Oct/2018:11:52:45 +00:00] "GET / HTTP/1.1" 200 2050 "-" "-"
77.14.1.52 - [17/Oct/2018:11:52:49 +00:00] "GET /create/component HTTP/1.1" 200 1963 "-" "-"
77.14.1.52 - [17/Oct/2018:11:52:50 +00:00] "GET /login HTTP/1.1" 200 2028 "-" "-"
77.14.1.52 - [17/Oct/2018:11:52:57 +00:00] "POST /login HTTP/1.1" 200 1780 "-" "-"
77.14.1.52 - [17/Oct/2018:11:52:58 +00:00] "GET /create/component HTTP/1.1" 200 2323 "-" "-"
Backtrace for: #<SB-THREAD:THREAD "clack-handler-fcgi" RUNNING {1006FD55A3}>
0: ((LAMBDA NIL :IN UIOP/IMAGE:PRINT-BACKTRACE))
1: ((FLET "THUNK" :IN UIOP/STREAM:CALL-WITH-SAFE-IO-SYNTAX))
2: (SB-IMPL::%WITH-STANDARD-IO-SYNTAX #<CLOSURE (FLET "THUNK" :IN UIOP/STREAM:CALL-WITH-SAFE-IO-SYNTAX) {8C25BED4B}>)
3: (UIOP/STREAM:CALL-WITH-SAFE-IO-SYNTAX #<CLOSURE (LAMBDA NIL :IN UIOP/IMAGE:PRINT-BACKTRACE) {1001A9659B}> :PACKAGE :CL)
4: (UIOP/IMAGE:PRINT-CONDITION-BACKTRACE #<SIMPLE-ERROR "~@<When attempting to ~A, the slot ~S is missing from the ~
object ~S.~@:>" {1001A964F3}> :STREAM #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDERR* {1000002593}> :COUNT NIL)
5: (LACK.MIDDLEWARE.BACKTRACE::PRINT-ERROR #<SIMPLE-ERROR "~@<When attempting to ~A, the slot ~S is missing from the ~
object ~S.~@:>" {1001A964F3}> (:SERVER-NAME "conceptx.co" :SERVER-PORT 443 :REMOTE-PORT 56119 :REMOTE-ADDR "77.14.1
.52" :SERVER-PROTOCOL :HTTP/1.1 :REQUEST-URI "/create/component" ...) #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDERR* {1000002593}>)
6: ((FLET "H0" :IN "/root/quicklisp/dists/quicklisp/software/lack-20180831-git/src/middleware/backtrace.lisp") #<SIMPLE-ERROR
"~@<When attempting to ~A, the slot ~S is missing from the ~
object ~S.~@:>" {1001A964F3}>)
7: (SB-KERNEL::%SIGNAL #<SIMPLE-ERROR "~@<When attempting to ~A, the slot ~S is missing from the ~
object ~S.~@:>" {1001A964F3}>)
8: (ERROR "~@<When attempting to ~A, the slot ~S is missing from the ~
object ~S.~@:>" "read the slot's value (slot-value)" VECTOR #<SB-SYS:FD-STREAM for "file /tmp/tmpGHU3ALSX.tmp" {100
186DC93}>)
9: ((:METHOD SLOT-MISSING (T T T T)) #<unused argument> #<SB-SYS:FD-STREAM for "file /tmp/tmpGHU3ALSX.tmp" {100186DC93}> VECT
OR SLOT-VALUE NIL) [fast-method]
10: ((LAMBDA (SB-PCL::OBJECT) :IN SB-PCL::SLOT-MISSING-INFO) #<SB-SYS:FD-STREAM for "file /tmp/tmpGHU3ALSX.tmp" {100186DC93}>
)
11: ((LAMBDA (&KEY :|name| :|material| :|machine-time| :|file| &ALLOW-OTHER-KEYS) :IN "/root/ConceptX/src/web.lisp") :|name|
("A" #<HASH-TABLE :TEST EQUAL :COUNT 1 {100185D2B3}> #<HASH-TABLE :TEST EQUAL :COUNT 1 {1001868953}>) :|material| ("iron" #<H
ASH-TABLE :TEST EQUAL :COUNT 1 {100185E0B3}> #<HASH-TABLE :TEST EQUAL :COUNT 1 {100185DAC3}>) :|machine-time| ("1000" #<HASH-
TABLE :TEST EQUAL :COUNT 1 {100185ECF3}> #<HASH-TABLE :TEST EQUAL :COUNT 1 {100185E6F3}>) :|file| (#<SB-SYS:FD-STREAM for "fi
le /tmp/tmpGHU3ALSX.tmp" {100186DC93}> #<HASH-TABLE :TEST EQUAL :COUNT 2 {100185F9C3}> #<HASH-TABLE :TEST EQUAL :COUNT 2 {100
185F343}>))
12: ((LABELS MYWAY.MAPPER::DISPATCH-WITH-RULES :IN MYWAY.MAPPER:DISPATCH) (#<NINGLE.ROUTE:NINGLE-ROUTE {1002C1EBB3}> #<NINGLE
.ROUTE:NINGLE-ROUTE {1002C1EBC3}> #<NINGLE.ROUTE:NINGLE-ROUTE {1002C1EBD3}> #<NINGLE.ROUTE:NINGLE-ROUTE {1002C1EBE3}> #<NINGL
E.ROUTE:NINGLE-ROUTE {1002C1EBF3}> #<NINGLE.ROUTE:NINGLE-ROUTE {1002C1EC03}> #<NINGLE.ROUTE:NINGLE-ROUTE {1002C1EC13}> #<NING
LE.ROUTE:NINGLE-ROUTE {1002C1EC23}> #<NINGLE.ROUTE:NINGLE-ROUTE {1002C1EC33}> #<NINGLE.ROUTE:NINGLE-ROUTE {1002C1EC43}> #<NIN
GLE.ROUTE:NINGLE-ROUTE {1002C1EC53}> #<NINGLE.ROUTE:NINGLE-ROUTE {1002C1EC63}> ...))
13: ((:METHOD LACK.COMPONENT:CALL (NINGLE.APP:<APP> T)) #<CONCEPTX.WEB::<WEB> {10027BC303}> #<unused argument>) [fast-method]
14: ((:METHOD LACK.COMPONENT:CALL (CAVEMAN2.APP:<APP> T)) #<CONCEPTX.WEB::<WEB> {10027BC303}> (:LACK.SESSION.OPTIONS (:ID "09
9e7077287181602dba96c02d14603a5303561e" :NEW-SESSION NIL :CHANGE-ID NIL :EXPIRE NIL) :LACK.SESSION #<HASH-TABLE :TEST EQUAL :
COUNT 2 {1002907263}> :SERVER-NAME "conceptx.co" :SERVER-PORT 443 :REMOTE-PORT 56119 :REMOTE-ADDR "77.14.1.52" ...)) [fast-me
thod]
15: ((:METHOD LACK.COMPONENT:CALL :AROUND (NINGLE.APP:<APP> T)) #<CONCEPTX.WEB::<WEB> {10027BC303}> (:LACK.SESSION.OPTIONS (:
ID "099e7077287181602dba96c02d14603a5303561e" :NEW-SESSION NIL :CHANGE-ID NIL :EXPIRE NIL) :LACK.SESSION #<HASH-TABLE :TEST E
QUAL :COUNT 2 {1002907263}> :SERVER-NAME "conceptx.co" :SERVER-PORT 443 :REMOTE-PORT 56119 :REMOTE-ADDR "77.14.1.52" ...)) [f
ast-method]
16: ((LAMBDA (CONCEPTX.APP::ENV) :IN "/root/ConceptX/app.lisp") (:LACK.SESSION.OPTIONS (:ID "099e7077287181602dba96c02d14603a
5303561e" :NEW-SESSION NIL :CHANGE-ID NIL :EXPIRE NIL) :LACK.SESSION #<HASH-TABLE :TEST EQUAL :COUNT 2 {1002907263}> :SERVER-
NAME "conceptx.co" :SERVER-PORT 443 :REMOTE-PORT 56119 :REMOTE-ADDR "77.14.1.52" ...))
17: ((LAMBDA (LACK.MIDDLEWARE.SESSION::ENV) :IN "/root/quicklisp/dists/quicklisp/software/lack-20180831-git/src/middleware/se
ssion.lisp") (:LACK.SESSION.OPTIONS (:ID "099e7077287181602dba96c02d14603a5303561e" :NEW-SESSION NIL :CHANGE-ID NIL :EXPIRE N
IL) :LACK.SESSION #<HASH-TABLE :TEST EQUAL :COUNT 2 {1002907263}> :SERVER-NAME "conceptx.co" :SERVER-PORT 443 :REMOTE-PORT 56
119 :REMOTE-ADDR "77.14.1.52" ...))
18: (LACK.UTIL:FUNCALL-WITH-CB #<CLOSURE (LAMBDA (LACK.MIDDLEWARE.SESSION::ENV) :IN "/root/quicklisp/dists/quicklisp/software
/lack-20180831-git/src/middleware/session.lisp") {1001FDCD0B}> (:SERVER-NAME "conceptx.co" :SERVER-PORT 443 :REMOTE-PORT 5611
9 :REMOTE-ADDR "77.14.1.52" :SERVER-PROTOCOL :HTTP/1.1 :REQUEST-URI "/create/component" ...) #<CLOSURE (LAMBDA (LACK.MIDDLEWA
RE.ACCESSLOG::RES) :IN "/root/quicklisp/dists/quicklisp/software/lack-20180831-git/src/middleware/accesslog.lisp") {100184810
B}>)
19: ((LAMBDA (LACK.MIDDLEWARE.BACKTRACE::ENV) :IN "/root/quicklisp/dists/quicklisp/software/lack-20180831-git/src/middleware/
backtrace.lisp") (:SERVER-NAME "conceptx.co" :SERVER-PORT 443 :REMOTE-PORT 56119 :REMOTE-ADDR "77.14.1.52" :SERVER-PROTOCOL :
HTTP/1.1 :REQUEST-URI "/create/component" ...))
20: ((FLET CLACK.HANDLER.FCGI::MAIN-LOOP :IN CLACK.HANDLER.FCGI:RUN) #.(SB-SYS:INT-SAP #X8C27BFFA8))
21: (CL-FASTCGI::SERVER-ON-FD #<CLOSURE (FLET CLACK.HANDLER.FCGI::MAIN-LOOP :IN CLACK.HANDLER.FCGI:RUN) {1006FD81CB}> 4 :FLAG
S 0)
22: (CLACK.HANDLER.FCGI:RUN #<CLOSURE (LAMBDA (LACK.MIDDLEWARE.BACKTRACE::ENV) :IN "/root/quicklisp/dists/quicklisp/software/
lack-20180831-git/src/middleware/backtrace.lisp") {100650515B}> :DEBUG NIL :PORT 9000 :FD NIL)
23: ((LAMBDA NIL :IN BORDEAUX-THREADS::BINDING-DEFAULT-SPECIALS))
24: ((FLET SB-UNIX::BODY :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE))
25: ((FLET "WITHOUT-INTERRUPTS-BODY-4" :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE))
26: ((FLET SB-THREAD::WITH-MUTEX-THUNK :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE))
27: ((FLET "WITHOUT-INTERRUPTS-BODY-1" :IN SB-THREAD::CALL-WITH-MUTEX))
28: (SB-THREAD::CALL-WITH-MUTEX #<CLOSURE (FLET SB-THREAD::WITH-MUTEX-THUNK :IN SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE
) {8C25BFE2B}> #<SB-THREAD:MUTEX "thread result lock" owner: #<SB-THREAD:THREAD "clack-handler-fcgi" RUNNING {1006FD55A3}>> N
IL T NIL)
29: (SB-THREAD::INITIAL-THREAD-FUNCTION-TRAMPOLINE #<SB-THREAD:THREAD "clack-handler-fcgi" RUNNING {1006FD55A3}> NIL #<CLOSURE (LAMBDA NIL :IN BORDEAUX-THREADS::BINDING-DEFAULT-SPECIALS) {1006FD554B}> NIL)
30: ("foreign function: call_into_lisp")
31: ("foreign function: new_thread_trampoline")
32: ("foreign function: pthread_create")
Above backtrace due to this condition:
When attempting to read the slot's value (slot-value), the slot VECTOR is missing from the object #<SB-SYS:FD-STREAM for "file /tmp/tmpGHU3ALSX.tmp" {100186DC93}>.
Request:
SERVER-NAME: "conceptx.co"
SERVER-PORT: 443
REMOTE-PORT: 56119
REMOTE-ADDR: "77.14.1.52"
SERVER-PROTOCOL: :HTTP/1.1
REQUEST-URI: "/create/component"
SCRIPT-NAME: "/create/component"
CONTENT-LENGTH: 1316085
CONTENT-TYPE: "multipart/form-data; boundary=----WebKitFormBoundary5xXrUjSGNfQnPoBJ"
REQUEST-METHOD: :POST
QUERY-STRING: ""
HEADERS:
cookie: "lack.session=099e7077287181602dba96c02d14603a5303561e"
content-length: "1316085"
dnt: "1"
referer: "https://conceptx.co/create/component"
connection: "keep-alive"
user-agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Safari/605.1.15"
origin: "https://conceptx.co"
content-type: "multipart/form-data; boundary=----WebKitFormBoundary5xXrUjSGNfQnPoBJ"
accept-encoding: "br, gzip, deflate"
accept-language: "en-us"
accept: "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
host: "conceptx.co"
PATH-INFO: "/create/component"
URL-SCHEME: "http"
RAW-BODY: #<FLEXI-STREAMS::VECTOR-INPUT-STREAM {1001868443}>
CLACK.STREAMING: T
COOKIES: (("lack.session" . "099e7077287181602dba96c02d14603a5303561e"))
QUERY-PARAMETERS: NIL
BODY-PARAMETERS: (("name" "A"
#<HASH-TABLE :TEST EQUAL :COUNT 1 {100185D2B3}>
#<HASH-TABLE :TEST EQUAL :COUNT 1 {1001868953}>)
("material" "iron"
#<HASH-TABLE :TEST EQUAL :COUNT 1 {100185E0B3}>
#<HASH-TABLE :TEST EQUAL :COUNT 1 {100185DAC3}>)
("machine-time" "1000"
#<HASH-TABLE :TEST EQUAL :COUNT 1 {100185ECF3}>
#<HASH-TABLE :TEST EQUAL :COUNT 1 {100185E6F3}>)
("file"
#<SB-SYS:FD-STREAM for "file /tmp/tmpGHU3ALSX.tmp" {100186DC93}>
#<HASH-TABLE :TEST EQUAL :COUNT 2 {100185F9C3}>
#<HASH-TABLE :TEST EQUAL :COUNT 2 {100185F343}>))
QUERY-PARAMETERS: NIL
When attempting to read the slot's value (slot-value), the slot VECTOR is
missing from the object
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment