Error processing request
Parameters
CONTENT_LENGTH | 0 |
REQUEST_METHOD | GET |
REQUEST_URI | /revision/thread%2Dring+benchmark?V=4 |
QUERY_STRING | V=4 |
CONTENT_TYPE | |
DOCUMENT_URI | /revision/thread-ring+benchmark |
DOCUMENT_ROOT | /var/www/nikit/nikit/nginx/../docroot |
SCGI | 1 |
SERVER_PROTOCOL | HTTP/1.1 |
HTTPS | on |
REMOTE_ADDR | 172.71.254.217 |
REMOTE_PORT | 49792 |
SERVER_PORT | 4443 |
SERVER_NAME | wiki.tcl-lang.org |
HTTP_HOST | wiki.tcl-lang.org |
HTTP_CONNECTION | Keep-Alive |
HTTP_ACCEPT_ENCODING | gzip, br |
HTTP_X_FORWARDED_FOR | 52.14.168.56 |
HTTP_CF_RAY | 87f3944dfd5622c4-ORD |
HTTP_X_FORWARDED_PROTO | https |
HTTP_CF_VISITOR | {"scheme":"https"} |
HTTP_ACCEPT | */* |
HTTP_USER_AGENT | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected]) |
HTTP_CF_CONNECTING_IP | 52.14.168.56 |
HTTP_CDN_LOOP | cloudflare |
HTTP_CF_IPCOUNTRY | US |
Body
Error
Unknow state transition: LINE -> END
-code
1
-level
0
-errorstack
INNER {returnImm {Unknow state transition: LINE -> END} {}} CALL {my render_wikit {thread-ring benchmark} {See http://shootout.alioth.debian.org/gp4/benchmark.php?test=threadring&lang=all
----
[jmn]
I tried the following, but it errors out with "can't create a new thread" - even though my system appears to have plenty of free memory.
Any ideas as to what limit I'm hitting?
''[escargo] 4 Jun 2008'' - Well, how about telling us what version of Tcl and system you are using,
plus a description of its hardware resources?
=======
set ring_size 503
set N 1000
package require Thread
proc done {} {
set ::done 1
}
set script {
proc accept {t} {
if {$t == 0} {
puts stdout "%i%"
thread::send -async %m% done
return
}
thread::send -async %n% [list accept [expr {$t - 1}] ]
}
%do%
}
set t1 [set tnext [thread::create {thread::wait}]]
for {set i $ring_size} {$i >1} {incr i -1} {
set tnext [thread::create [string map [list %m% [thread::id] %i% $i %n% $tnext %do% "thread::wait"] $script]]
}
#close the ring
set script [string map [list %m% [thread::id] %i% 1 %n% $tnext %do% [list accept $N]] $script]
thread::send -async $t1 $script
vwait ::done
======
----
!!!!!!
%| [Category Performance] |%
!!!!!!} regexp2} CALL {my render {thread-ring benchmark} {See http://shootout.alioth.debian.org/gp4/benchmark.php?test=threadring&lang=all
----
[jmn]
I tried the following, but it errors out with "can't create a new thread" - even though my system appears to have plenty of free memory.
Any ideas as to what limit I'm hitting?
''[escargo] 4 Jun 2008'' - Well, how about telling us what version of Tcl and system you are using,
plus a description of its hardware resources?
=======
set ring_size 503
set N 1000
package require Thread
proc done {} {
set ::done 1
}
set script {
proc accept {t} {
if {$t == 0} {
puts stdout "%i%"
thread::send -async %m% done
return
}
thread::send -async %n% [list accept [expr {$t - 1}] ]
}
%do%
}
set t1 [set tnext [thread::create {thread::wait}]]
for {set i $ring_size} {$i >1} {incr i -1} {
set tnext [thread::create [string map [list %m% [thread::id] %i% $i %n% $tnext %do% "thread::wait"] $script]]
}
#close the ring
set script [string map [list %m% [thread::id] %i% 1 %n% $tnext %do% [list accept $N]] $script]
thread::send -async $t1 $script
vwait ::done
======
----
!!!!!!
%| [Category Performance] |%
!!!!!!}} CALL {my revision {thread-ring benchmark}} CALL {::oo::Obj6482189 process revision/thread%2Dring+benchmark} CALL {::oo::Obj6482187 process}
-errorcode
NONE
-errorinfo
Unknow state transition: LINE -> END
while executing
"error $msg"
(class "::Wiki" method "render_wikit" line 6)
invoked from within
"my render_$default_markup $N $C $mkup_rendering_engine"
(class "::Wiki" method "render" line 8)
invoked from within
"my render $name $C"
(class "::Wiki" method "revision" line 31)
invoked from within
"my revision $page"
(class "::Wiki" method "process" line 56)
invoked from within
"$server process [string trim $uri /]"
-errorline
4