From: <aku...@sh...> - 2014-07-06 17:18:16
|
Automated mail by fx, on behalf of aku...@sh... Ticket Change [8179f124fb728b3dbbc67c7dfbf8af876730787e] [New ticket [c11a51c482ba5720793d44340f76934c59718780|c11a51c482] Configuration race condition in accept types.] By dkf For Tcl Source Code On 2014-07-06T17:13:33.182 Details http://core.tcl.tk/tcl/tinfo?name=8179f124fb728b3dbbc67c7dfbf8af876730787e Ticket http://core.tcl.tk/tcl/tktview/c11a51c482ba5720793d44340f76934c59718780 Changed Fields assignee: nobody closer: nobody comment: If you're using the http package to do REST with content type negotiation, you need to configure the package's <tt>Accept:</tt> types mechanism from time to time. This is a bit of a broken API, in that there's no option to override from options passed to <tt>http::geturl</tt>. This is not the feature change I'm requesting. <p> <i>However,</i> if you're also using asynchronous connecting then you've got an additional problem in that the configuration of the <tt>-accept</tt> option is only read when the connection is made; two connections that require different <tt>Accept:</tt> headers will have a race condition between the two, and so which is used will be pretty much random. <b>This Is Wrong.</b> This is the bug I'm reporting. <p> Suggested fix, <i>without fixing the original API botch,</i> is to take a copy of <tt>$http(-accept)</tt> into the <tt>state</tt> array during <tt>http::geturl</tt> so that the value used in <tt>http::Connected</tt> is predictable. <p> See also: <a href="http://www.kroc.tk/forum/index.php?t=msg&th=1041&goto=5213&#msg_5 213">this thread</a> with the comment that prompted me to look into the potential feature request, and discover the race: <blockquote><tt><i>Ok well the final solution was that using -headers in the http::geturl doesn't seem to work when setting an "Accept" header - which kind of sucksâ¦</i></tt></blockquote> foundin: http 2.8.8 is_private: 0 login: dkf priority: 5 Medium resolution: None severity: Minor status: Open submitter: dkf subsystem: 29. http Package title: Configuration race condition in accept types type: Bug ------------------------------------------------------------ EuroTcl 2014, Jul 12-13, Munich/DE: http://www.eurotcl.tcl3d.org/ Tcl 2014 Con, Nov 10-14, Portland-OR/US: http://www.tcl.tk/community/tcl2014/ Send your abstracts to: tcl...@go..., by Sep 8 Registration is open. ------------------------------------------------------------ |