[SqueakDBX] MAC OSX 10.6 + squeakDBX + Oracle 10.2 issues

Colin Doherty colin.doherty at gmail.com
Sun Aug 1 17:38:47 UTC 2010


Hi,

Ok I've tried using the Squeak5.7b1 64-32 VM with the Pharo 1.1 image and
opendbx-1.5.0 with debug-log option, the error is:

Error: call to an external function failed.

This from Pharo debug log:

THERE_BE_DRAGONS_HERE
Error: A call to an external function failed
1 August 2010 6:16:57 pm

VM: Mac OS - intel - 1064 - Squeak4.1 of 17 April 2010 [latest update:
#9957] 19.0
Image: Pharo-1.1-11411 [Latest update: #11411]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir /Users/Development/Smalltalk/Squeak64bit/Contents/Resources
Trusted Dir /foobar/tooBar/forSqueak/bogus/
Untrusted Dir /foobar/tooBar/forSqueak/bogus/

OpenDBXMacOSX(Object)>>error:
Receiver: an OpenDBXMacOSX
Arguments and temporary variables:
aString: 'A call to an external function failed'
Receiver's instance variables:
an OpenDBXMacOSX

OpenDBXMacOSX(Object)>>externalCallFailed
Receiver: an OpenDBXMacOSX
Arguments and temporary variables:
errCode: 0
Receiver's instance variables:
an OpenDBXMacOSX

OpenDBXMacOSX(OpenDBXUnix)>>apiInitialize:backend:host:port:
Receiver: an OpenDBXMacOSX
Arguments and temporary variables:
handle: a WordArray(0)
backend: 'oracle'
host: 'hostname.com'
port: '1521'
Receiver's instance variables:
an OpenDBXMacOSX

DBXOraclePlatform(DBXPlatform)>>createConnection:
Receiver: a DBXOraclePlatform
Arguments and temporary variables:
aConnection: a DBXConnection
err: nil
handleArray: a WordArray(0)
handle: nil
Receiver's instance variables:
a DBXOraclePlatform

DBXConnection>>connect
Receiver: a DBXConnection
Arguments and temporary variables:

Receiver's instance variables:
platform: a DBXOraclePlatform
settings: a DBXConnectionSettings
handle: nil
open: a ValueHolder
connected: a ValueHolder
result: nil


UndefinedObject>>DoIt
Receiver: nil
Arguments and temporary variables:
conn: a DBXConnection
connectionSettings: a DBXConnectionSettings
rs: nil
Receiver's instance variables:
nil

Compiler>>evaluate:in:to:notifying:ifFail:logged:
Receiver: a Compiler
Arguments and temporary variables:
textOrStream: '|conn connectionSettings rs |

connectionSettings:= DBXConnectio...etc...
aContext: nil
receiver: nil
aRequestor: a TextMorphForShoutEditor
failBlock: [FakeClassPool adopt: nil.
^ #failedDoit]
logFlag: true
methodNode: DoIt
| conn connectionSettings rs |
connectionSettings := DBXConn...etc...
method: (UndefinedObject>>#DoIt "a CompiledMethod(570949632)")
value: nil
toLog: nil
itsSelection: nil
itsSelectionString: nil
Receiver's instance variables:
sourceStream: a ReadStream '|conn connectionSettings rs |

connectionSettings:=...etc...
requestor: a TextMorphForShoutEditor
class: UndefinedObject
category: nil
context: nil
parser: a Parser



No error messages were produced in /var/log/system.log when this occurred
and no additional opendbx debug log was produced that I could see.

I've run the FFIPlugin tests, these two failed in the standard Pharo-1.1
with  Squeak 4.2.5beta1U VM:

FFIPluginTests>>#testLongLongs
FFIPluginTests>>#testPoint2

With the  Squeak 64-32 5.7b1 VM all the FFIPluginTests produced an
error/failed, it is an experimental 64bit VM though so I guess that's
expected ?

Thanks
Colin


On Sun, Aug 1, 2010 at 5:24 PM, Mariano Martinez Peck <marianopeck at gmail.com
> wrote:

>
>
> On Sun, Aug 1, 2010 at 5:04 PM, Colin Doherty <colin.doherty at gmail.com>wrote:
>
>> Hi,
>>
>> I've tried using the Pharo 1.1 OneClick image (not sure what the VM
>> version is for this) and have tried Squeak Seaside 3.0 image,  Squeak/VM
>> version 4.1 I think ?. I installed it using Metacello. This is the version
>> of OpenDBX: OpenDBX-Core-MarianoMartinezPeck.246 and
>> SqueakDBX-Smalltalk-Dialect-MarianoMartinezPeck.3 from what I can see in
>> ConfigurationOfSqueakDBX>>version11.
>>
>>
> Ok, this is perfect. Now...could you test the same image of Pharo 1.1 but
> using another VM than the one that it is in the one click.
>
> The one click VM is Squeak 4.2.5beta1U
> Can you try with Squeak 64-32 5.7b1 ??
> ftp://ftp.smalltalkconsulting.com/Squeak%2064-32%205.7b1.app.zip
>
> In addition (to see if we have more logs) can you enable the debug mode in
> those VMs ?
>
> to do that, you need to open the .app (show package contents) and then, in
> the file Info.plist  you have to enable debug mode:
>
>     <key>SqueakDebug</key>
>     <integer>1</integer>
>
> or...from the mac os tool to edit .plist
>
> then...open first the Mac OS Console, and luckily we will have more
> information.
>
>
>
>> I've just tried a simple connect example:
>>
>> |conn connectionSettings rs |
>>
>> connectionSettings:= DBXConnectionSettings
>> host:'hostname.com'
>> port:'1521'
>> database:'mysid'
>> userName:'username'
>> userPassword: 'pw'.
>>
>> conn := DBXConnection platform: DBXOraclePlatform new settings:
>> connectionSettings.
>> conn connect.
>> conn open.
>> rs := conn execute: 'select job from emp'.
>>
>>
> Ok...what happens if you do all that but not the conn execute ?  (i mean,
> jut connect and open).  Try this:
>
> |conn connectionSettings rs |
>
> connectionSettings:= DBXConnectionSettings
> host:'hostname.com'
> port:'1521'
> database:'mysid'
> userName:'username'
> userPassword: 'pw'.
>
> conn := DBXConnection platform: DBXOraclePlatform new settings:
> connectionSettings.
> conn connect.
> conn open.
> conn disconnect.
>
> does it work?
>
>
>
>> I've done no tests of FFI but it installed ok as far as I could see.
>>
>>
> No, but they came with FFI. Check in the category FFI-Tests  there are
> tests like FFIPluginTests
>
>
>
>> I'm using opendbx-1.4.5.
>>
>
> Ok...can you please recompile using the debug mode enabled?
>   To do that  ./configure --enable-debug-log   and then a .log file per
> connection is generated in the directory where you are calling opendbx
>
> However, if I remember correctly, this was added in opendbx-1.5.0, not in
> 1.4.5.
>
> You can download it from:
> http://linuxnetworks.de/opendbx/download/libopendbx-1.5.0.tar.gz
>
> So...compile like that, and run your test again. Then, please send the
> generated log.
>
> Let's do all these tests, and then we can contact someone to help us.
>
> Thanks
>
> Mariano
>
>
>>
>> Thanks
>> Colin
>>
>>
>> On Sun, Aug 1, 2010 at 3:17 PM, Mariano Martinez Peck <
>> marianopeck at gmail.com> wrote:
>>
>>> HI. wow...never saw this problem.
>>>
>>> Which Squeak VM are you using?
>>>
>>> What is exactly what you are running in the image side that brings that
>>> error ?
>>>
>>> thanks
>>>
>>> mariano
>>>
>>> On Sun, Aug 1, 2010 at 4:04 PM, Colin Doherty <colin.doherty at gmail.com>wrote:
>>>
>>>> Hi,
>>>>
>>>> I've tried installing squeakDBX and got it installed using the 32 bit
>>>> Oracle 10.2.0.4 instant client using this config:
>>>>
>>>> CFLAGS="-m32" CPPFLAGS="-m32 -I/usr/local/instantclient10_2/sdk/include"
>>>> LDFLAGS="-arch i386 -L/usr/local/instantclient10_2" ./configure
>>>> --disable-utils --with-backends="oracle"
>>>>
>>>> However, I'm getting the following error when I try to use it in either
>>>> squeak 4.1 or pharo 1.1:
>>>>
>>>> Out of memory error
>>>>
>>>> This is from the log:
>>>>
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading /Users/DevelopmentSmalltalk/Pharo/Plugins/opendbx.so
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading /Users/Development/Smalltalk/Pharo/Plugins/opendbx.dylib
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading /Users/Development/Smalltalk/Pharo/Plugins/libopendbx
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading /Users/Development/Smalltalk/Pharo/Plugins/libopendbx.so
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading /Users/Development/Smalltalk/Pharo/Plugins/libopendbx.dylib
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading ./opendbx.bundle/Contents/MacOS/opendbx
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading ./opendbx
>>>> Jul 31 20:57:47: --- last message repeated 1 time ---
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading ./opendbx.so
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading ./opendbx.dylib
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading ./libopendbx
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading ./libopendbx.so
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading ./libopendbx.dylib
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading
>>>> /Users/Development/Smalltalk/Pharo/Pharo-1.1-OneClick.app/Contents/Resources/opendbx.bundle/Contents/MacOS/opendbx
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> tryLoading
>>>> /Users/Development/Smalltalk/Pharo/Pharo-1.1-OneClick.app/Contents/Resources/opendbx
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> ioFindExternalFunctionIn(odbx_init, 2155408)
>>>> Jul 31 20:57:47 MacBook Squeak VM Opt[22081]: Squeak VM
>>>> Opt(22081,0xa0bf2500) malloc: *** error for object 0xf1f2f3f4: pointer being
>>>> freed was not allocated\n*** set a breakpoint in malloc_error_break to debug
>>>>  Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]: Squeak
>>>> VM Opt(22081,0xa0bf2500) malloc: *** error for object 0xf1f2f3f4: pointer
>>>> being freed was not allocated
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]: *** set a
>>>> breakpoint in malloc_error_break to debug
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> ioFindExternalFunctionIn(odbx_error, 2155408)
>>>> Jul 31 20:57:47 MacBook [0x0-0x39039].org.squeak.pharo[22081]:
>>>> ioFindExternalFunctionIn(odbx_error_type, 2155408)
>>>> Jul 31 21:01:49 MacBook Safari[8492]: INSERT-HANG-DETECTED: Tx
>>>> time:18.496361, # of Inserts: 0, # of bytes written: 0, Did shrink: YES
>>>> Jul 31 21:05:31 MacBook [0x0-0x39039].org.squeak.pharo[22081]: VM:
>>>> MouseModifierStateCarbon buttonStateBits 1 modifier
>>>>
>>>> I've also tried compiling a 64 bit version which worked and used the
>>>> experimental 64 bit squeak vm, this doesn't work but generates no errors.
>>>> Any ideas on how to fix the 32 bit out of memory issue ?
>>>>
>>>> Thanks
>>>>
>>>> _______________________________________________
>>>> SqueakDBX mailing list
>>>> SqueakDBX at lists.squeakfoundation.org
>>>> http://lists.squeakfoundation.org/mailman/listinfo/squeakdbx
>>>>
>>>>
>>>
>>> _______________________________________________
>>> SqueakDBX mailing list
>>> SqueakDBX at lists.squeakfoundation.org
>>> http://lists.squeakfoundation.org/mailman/listinfo/squeakdbx
>>>
>>>
>>
>> _______________________________________________
>> SqueakDBX mailing list
>> SqueakDBX at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/mailman/listinfo/squeakdbx
>>
>>
>
> _______________________________________________
> SqueakDBX mailing list
> SqueakDBX at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/squeakdbx
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeakdbx/attachments/20100801/75d62148/attachment-0001.htm


More information about the SqueakDBX mailing list