Hi,
About a year ago I mailed a problem concerning the debugger in vw7.4.1.
Alan knight responded that the error had to do with the debugger in combination
with DLL/CC and said that AR 52122 existed for this problem (I’ve
appended the mail conversation below).
Is it possible to know the status of this AR 52122? This is a very
annoying problem for us.
Thanks,
Mark
=== previous mail conversation below ===
Re: Problem with Debugger &
Oracle EXDI in 7.4.1
Yes, there seems to have been some kind of a regression with respect to
stepping and DLL/CC methods in 7.4 in general. AR 52122 looks to be the
relevant thing. I don't know of a workaround at the moment.
At 08:02 AM 4/2/2007, Mark Plas wrote:
There appears to be a problem with the debugger in vw 7.4.1.
This is what I do:
I open a vanilla 7.4.1 image.
I load the Oracle EXDI parcel
I accept the following class method on an arbitrary class (ActionButton class
in my example):
doInTransaction: aBlock
| connection
|
connection
:= OracleConnection new.
connection
username: 'username'.
connection
environment: 'database.
connection
connect: 'password'.
connection
begin.
[aBlock
ensure: [connection commit]] ensure: [connection disconnect]
Then I perform the following piece of Smalltalk code:
self halt.
self doInTransaction: [Transcript show: test]
Beause of the halt the debugger opens and I start stepping through the code by
using the F6 key (=Step). After pressing it three times, I end up at the end of
the block. If I then step one more time I get an exception on OracleNTInterface
saying:
unsupported
operation
I get this error only when I use the debugger to step through the code.
It seems that debugger messes something up if you try to step out of a block.
This doesnt occur in a VW 7.3.1 image.
Perhaps it has something to do with ExternalInterface subclasses &
simulation of byte code execution in the debugger?
Has anyone encountered this before? (And is there a fix for it?)
Thanks in advance,
Mark
The stack trace is here:
Unhandled exception: unsupported operation
OracleNTInterface(ExternalInterface)>>externalAccessFailedWith:
OracleNTInterface(OracleInterface)>>OCITransCommit:with:with:
ExternalMethod>>unlinkedCall:arguments:
OracleConnection>>commitExternal
optimized [] in [] in ExternalDatabaseTransaction>>finishTransaction:method:
BlockClosure>>on:do:
optimized [] in ExternalDatabaseTransaction>>finishTransaction:method:
optimized [] in [] in ExternalDatabaseFramework>>participantsDo:
WeakArray(SequenceableCollection)>>do:
optimized [] in ExternalDatabaseFramework>>participantsDo:
BlockClosure>>ensure:
optimized [] in RecursionLock>>critical:
BlockClosure>>ensure:
Semaphore>>critical:
RecursionLock>>critical:
OracleTransaction(ExternalDatabaseFramework)>>participantsDo:
OracleTransaction(ExternalDatabaseTransaction)>>finishTransaction:method:
OracleTransaction(ExternalDatabaseTransaction)>>commit
OracleConnection(ExternalDatabaseConnection)>>commit
optimized [] in [] in ActionButton class>>doInTransaction:
BlockClosure>>valueAsUnwindBlockFrom:
BlockClosure>>ensure:
optimized [] in ActionButton class>>doInTransaction:
BlockClosure>>ensure:
ActionButton class>>doInTransaction:
ActionButton class>>unboundMethod
ActionButton class(Object)>>performMethod:arguments:
ActionButton class(Object)>>performMethod:
TextEditorController(ParagraphEditor)>>evaluateCompiled:
--
Alan Knight [|], Cincom Smalltalk Development
_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc