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

Colin Doherty colin.doherty at gmail.com
Sun Aug 1 18:03:04 UTC 2010


Hi Again,

Just tried Pharo 1.1 click image with Squeak 4.2.5beta1U VM and
opendbx-1.5.0 and got a different error:

DBXFatalError: FATAL OpenDBX: Loading backend library failed

system.log:

Aug  1 18:53:45 MacBook [0x0-0x85085].org.squeak.pharo[15272]: Loading
backend library oracle, liboraclebackend.so or
/usr/local/lib/opendbx/liboraclebackend.so failed
Aug  1 18:53:45 MacBook [0x0-0x85085].org.squeak.pharo[15272]:
dlopen(/usr/local/lib/opendbx/liboraclebackend.so, 1): Library not loaded:
/b/32_216/rdbms/lib/libclntsh.dylib.10.1
Aug  1 18:53:45 MacBook [0x0-0x85085].org.squeak.pharo[15272]:   Referenced
from: /usr/local/lib/opendbx/liboraclebackend.so
Aug  1 18:53:45 MacBook [0x0-0x85085].org.squeak.pharo[15272]:   Reason:
image not found

The directory /b/32_216/rdbms/lib  doesn't exist, not sure if it's a 32/64
bit issue on this OS. Everything compiled as 32 bit but this platform also
support 64 bit.

Thanks
Colin




On Sun, Aug 1, 2010 at 6:38 PM, Colin Doherty <colin.doherty at gmail.com>wrote:

> 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/db1d72c1/attachment.htm


More information about the SqueakDBX mailing list