[Mono-dev] Oracle Managed Client

Leszek Ciesielski skolima at gmail.com
Fri Oct 5 12:57:16 UTC 2012


Run Moma on it. If the number of P/Invokes is reasonable, it might be
feasible to just write a compatibility layer for them. As long as they
only call into standard kernel32 API that's doable.

On Fri, Oct 5, 2012 at 8:48 AM, Ventsislav Mladenov
<ventsislav.mladenov at gmail.com> wrote:
> Hi Bojan,
> Thanks for the tip, It's look like the fully managed provider is not so
> managed.
> With full exception stacktrace and IL spy the result is two P/Invoke
> functions
>
>     [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
>     [return: MarshalAs(UnmanagedType.Bool)]
>     private static extern bool GlobalMemoryStatusEx([In] [Out]
> OracleTuner.SystemInfo.MEMORYSTATUSEX lpBuffer);
>     [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
>     private static extern void GlobalMemoryStatus([In] [Out]
> OracleTuner.SystemInfo.MEMORYSTATUS lpBuffer);
>
>
>
> On 10/04/2012 10:00 PM, Bojan Rajkovic wrote:
>>
>> Hi Ventsislav,
>>
>> Try running it with mono --trace=E:all to see what the actual exception
>> is.
>>
>> —Bojan
>>
>> On Oct 1, 2012, at 9:31 AM, Ventsislav Mladenov
>> <ventsislav.mladenov at gmail.com> wrote:
>>
>>> Hi,
>>>    Yesterday the oracle has released beta version of ODP.NET which they
>>> claim that is fully managed. I tried it on Linux/Mono - 2.11.4 but I'm
>>> getting an exception on connection open.
>>>
>>> Invalid type Oracle.ManagedDataAccess.Client.OracleCommand for instance
>>> field OracleInternal.ServiceObjects.OracleGlobalizationImpl:m_cmd
>>>
>>> Unhandled Exception:
>>> System.TypeLoadException: A type load exception has occurred.
>>>   at Oracle.ManagedDataAccess.Client.OracleConnection.Open () [0x00000]
>>> in <filename unknown>:0
>>> Invalid type Oracle.ManagedDataAccess.Client.OracleCommand for instance
>>> field Oracle.ManagedDataAccess.Client.OracleTransaction:m_command
>>> [ERROR] FATAL UNHANDLED EXCEPTION: System.TypeLoadException: A type load
>>> exception has occurred.
>>>   at Oracle.ManagedDataAccess.Client.OracleConnection.Open () [0x00000]
>>> in <filename unknown>:0
>>>
>>> I do not know Is it Mono related or Oracle related problem, It's more
>>> likely it is mono related because the provider works well on Windows/.NET
>>>
>>> --
>>>
>>> Sincerely yours
>>>    Ventsislav Mladenov
>>>
>>> _______________________________________________
>>> Mono-devel-list mailing list
>>> Mono-devel-list at lists.ximian.com
>>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
>
>
> --
>
> Sincerely yours
>    Ventsislav Mladenov
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list


More information about the Mono-devel-list mailing list