|
|
|
[
Permlink
| « Hide
]
Nick Sieger - 10/Sep/07 08:26 PM
FYI, this issue was discovered debugging differences in SOAP4R between MRI and JRuby. It makes use of modules and nested classes, and includes the module. The const_from_name function is copied from SOAP4R.
This affects both defined? and const_defined? – neither currently searches the class/module hierarchy. Will fix with other ivar/cvar/constant work I'm doing now.
We'll need a fix on trunk too...will you be fixing this on trunk as well Bill?
Yes – actually, I'd like to merge all the ivar/cvar/constant code currently in bdortch/attrs back into trunk fairly soon, though it's not quite ready (I hope to wrap it up tonight/tomorrow). It should be mostly non-controversial (and definitely beneficial!), but there are a few things that need some feedback/discussion (maybe not in this thread):
As I said, I should have this stuff wrapped up in the next day or so. There are a couple of pieces not yet in SVN, notably a ConcurrentModuleVariableStore (in progress) that includes the constant optimization I mentioned, and also a concurrent implementation of RubySymbol.SymbolTable that shows a 15% improvement in bench_symbol before I've even hooked up the "fast" lookup method. The performance gains of all the "concurrent" code should be even more pronounced in multi-threaded benchmarks (I'm working on some). -Bill There should be a simple version of the fix that goes into 1.0.2 though. What you're describing Bill sounds more like an overhaul.
Fixed for 1_0 branch in commit 4347. Fixed in bdortch/attrs branch, awaiting merge to trunk.
Hmm, fix for 1_0 (4347) does not appear to be correct. Researching...
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||