[Pharo-users] OmniBase for Pharo 6

Matias Maretto mgmaretto at hotmail.com
Fri Jun 22 19:57:45 EDT 2018


Peter: when I run code like this example:


db := OmniBase createOn: 'C:\temp\testOmni'.
aTrans := db newTransaction.

aTrans root at: 'Hello' put: (OrderedCollection with: 1 with: 2 with: 3).
aTrans commit.
db close.

db := OmniBase openOn: 'C:\temp\testOmni'.
aTrans := db newTransaction.
(aTrans root at: 'Hello') size



Everything is fine, but sometimes when I close an reopen the base I get the "lock" error, but even when I get the error the base is still opened and transactions run fine. I will take a closer look to the lockFIle method.

I will tell you if I find a solution. (I am using Win 7).







________________________________
De: Pharo-users <pharo-users-bounces at lists.pharo.org> en nombre de PBKResearch <peter at pbkresearch.co.uk>
Enviado: viernes, 22 de junio de 2018 10:39 p. m.
Para: 'Any question about pharo is welcome'
Asunto: Re: [Pharo-users] OmniBase for Pharo 6


Matias



Thanks for the hints. I now have 5 greens, but all the rest are red. I am still getting the ‘File cannot be locked’ message. Are you doing better than that? I may try a few trials using it for real, rather than the test suite.



Thanks again



Peter Kenny



From: Pharo-users <pharo-users-bounces at lists.pharo.org> On Behalf Of Matias Maretto
Sent: 22 June 2018 22:54
To: Any question about pharo is welcome <pharo-users at lists.pharo.org>
Subject: Re: [Pharo-users] OmniBase for Pharo 6



Hi Peter, yes I had the same error at the beginning. I have done 2 minor  changes. Now it seems to be working fine (Although I am still running more tests). Here:



ODBWin32FileStream >>

closeHandle: aHandle

"Close an open Win32 object handle, freeing any resources held by it.

Once closed a handle is no longer valid. Answer whether the function

succeeds.

See Win32 SDK help for more information.



BOOL CloseHandle(

HANDLE  hObject

// handle of object to close

);"



"<apicall: ulong 'CloseHandle' (long) module:'kernel32.dll'>"

^ self ffiCall: #(ulong CloseHandle(long aHandle))







ODBWin32FileStream >>

lockFile: aHandle offsetLow: loPos offsetHigh: hiPos lengthLow: loLength lengthHigh: hiLength

"<apicall: long 'LockFile' (long ulong ulong ulong ulong) module: 'kernel32.dll'>"



^ self

ffiCall: #(long LockFile #(long aHandle , ulong loPos , ulong hiPos , ulong loLength , ulong hiLength))







________________________________

De: Pharo-users <pharo-users-bounces at lists.pharo.org<mailto:pharo-users-bounces at lists.pharo.org>> en nombre de PBKResearch <peter at pbkresearch.co.uk<mailto:peter at pbkresearch.co.uk>>
Enviado: viernes, 22 de junio de 2018 09:45 p. m.
Para: 'Any question about pharo is welcome'
Asunto: Re: [Pharo-users] OmniBase for Pharo 6



Matias



I have just loaded Esteban’s package in a new Pharo 6.1 under Windows 10. I get an error message saying ‘File cannot be locked. Try again?’. When I select ‘no’, all tests are run and give red. Are you still running on win 7? If so, I must be doing something wrong. Can you give more details of the FFI corrections you made, please?



Many thanks



Peter Kenny



From: Pharo-users <pharo-users-bounces at lists.pharo.org<mailto:pharo-users-bounces at lists.pharo.org>> On Behalf Of Matias Maretto
Sent: 22 June 2018 21:07
To: Any question about pharo is welcome <pharo-users at lists.pharo.org<mailto:pharo-users at lists.pharo.org>>
Subject: Re: [Pharo-users] OmniBase for Pharo 6



Esteban: it's working fine, I had to made a minor corrections on 2 FFI calls and now everithing seems to be working fine.

For What I saw with Voyage-UnqLite only String Objects can be used to searilize; Omnibase allow to persist almost any kind of objects, thats the part I like about it.







________________________________

De: Pharo-users <pharo-users-bounces at lists.pharo.org<mailto:pharo-users-bounces at lists.pharo.org>> en nombre de Esteban Lorenzano <estebanlm at gmail.com<mailto:estebanlm at gmail.com>>
Enviado: jueves, 21 de junio de 2018 08:19 p. m.
Para: Any question about pharo is welcome
Asunto: Re: [Pharo-users] OmniBase for Pharo 6



I did it manually and I took like 5 min :P
but this was really easy, just a bunch of FFI calls.

Esteban

> On 21 Jun 2018, at 15:31, Sean P. DeNigris <sean at clipperadams.com<mailto:sean at clipperadams.com>> wrote:
>
> EstebanLM wrote
>> I just made a “blind port”… migrated the old FFI to new UFFI
>
> Did you do this manually or use some migration tool? How long did it take?
>
>
>
> -----
> Cheers,
> Sean
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html

Smalltalk - Pharo Smalltalk Users | Mailing List Archive<http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html>

forum.world.st

Pharo Smalltalk Users forum and mailing list archive. Pharo User Forum



>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-users_lists.pharo.org/attachments/20180622/79ce1922/attachment-0001.html>


More information about the Pharo-users mailing list