<div dir="ltr">Right now, the non-ref debugging code in astobj2 is triggered by a mix of AST_DEVMODE and AO2_DEBUG and both get set if you want to run the test framework.  I've noticed though that the inclusion of the debugging code can actually hide problems as well as highlight them, especially related to performance and locking.   Case in point:  Try running 'test execute category /main/astobj2 name thrash' with REF_DEBUG turned on and off.  While the test passes both ways, the timing is significantly different (and not what you'd expect).  Luckily, you can turn REF_DEBUG on and off from menuselect.<div>
<br></div><div>To provide a little more flexibility and visibility, I'd like to propose the following...</div><div><br></div><div>1.  Change astobj2 so the non-ref debugging code is dependent on AO2_DEBUG solely instead of the mix of AST_DEVMODE and AO2_DEBUG.  (REF_DEBUG would remain as is)</div>
<div><br></div><div>2.  Remove the code that automatically sets AO2_DEBUG if TEST_FRAMEWORK is defined.</div><div><br></div><div>3.  Add AO2_DEBUG to the menuselect extended compiler flags right next to REF_DEBUG.</div><div>
<br></div><div>This way you can run the test framework in either production or debugging mode.  The code change to do this is trivial but I thought I'd run it by you guys first.</div><div><br></div><div>Thoughts?</div>
<div><br></div><div><br></div></div>