I will just add that the failures I was experiencing involved storing "documents" with deep hierarchies of heterogeneous items. Something along the lines of EMR's (electronic medical records - which if you have any experience in that domain - are very complex).
The failures would manifest as randomly thrown exceptions while trying to read a particularly large and complex hierarchy - which would result in documents missing segments when rendered. Rescuing the data took a couple weeks of constantly trying to read smaller chunks and retrying when exceptions were thrown. So I would include tests along those lines before trusting it with important data. The database I was working with was quite large when reads began to fail. > On Jun 24, 2018, at 3:33 PM, Matias Maretto <mgmare...@hotmail.com> wrote: > > Thank you for the info Peter ; I have been working storing and retrieving > data , everything works fine. I have an ODBPErsistDictionary with almost > 20.000 objects on it, I really get sorprised of how fast can resolve > "select:[] commands"; I know it is not related with the subjet we are > working, but well đ > > > > > De: Pharo-users <pharo-users-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> en nombre de PBKResearch > <pe...@pbkresearch.co.uk <mailto:pe...@pbkresearch.co.uk>> > Enviado: domingo, 24 de junio de 2018 05:54 p. m. > Para: 'Any question about pharo is welcome' > Asunto: Re: [Pharo-users] OmniBase for Pharo 6 > > Hi Matias (and EstebanLM) > > I have explained the problem with storing and retrieving Date. Looking > through the OmniBase code in the repository, I see that there is a whole > series of extensions for many of the standard classes, which provide methods > for serializing and deserializing instances of those classes. The extension > for Date class ignores the start time, and simply saves the day number; the > retrieval method can only use the days, and so cannot take account of the > offset for the time zone. If it is necessary to save and restore dates in a > way which is time-zone sensitive, it will be necessary to modify the code for > serializing dates to store day and offset. I have not yet worked out how the > methods are structured, so I have not tried to recode, but all the methods I > have looked at are only one or two lines, so it should not be difficult. > > Looking through the classes with extensions, I realise that we may need to > check rather more examples to be sure that everything is handled correctly. I > did one little test with String. The standard test in TestEquality just > stores and retrieves âHello Worldâ. To check that it could handle other > encodings, I tried the test with a German string encoded in utf8. This worked > OK. So thus far everything is fine, but it would be a good idea to check > correct retrieval each time we persist a new class of object. > > Best wishes > > Peter Kenny > > From: Pharo-users <pharo-users-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> On Behalf Of Matias Maretto > Sent: 23 June 2018 19:40 > To: Any question about pharo is welcome <pharo-users@lists.pharo.org > <mailto:pharo-users@lists.pharo.org>> > Subject: Re: [Pharo-users] OmniBase for Pharo 6 > > Hi Peter, thanks for the news. I have been doing some tests, persisting > diferent kind of objects and until now everythings works fine. > If you find anything else, please let me now. > > Thanks. > Matias. > > > De: Pharo-users <pharo-users-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> en nombre de PBKResearch > <pe...@pbkresearch.co.uk <mailto:pe...@pbkresearch.co.uk>> > Enviado: sĂĄbado, 23 de junio de 2018 05:18 p. m. > Para: 'Any question about pharo is welcome' > Asunto: Re: [Pharo-users] OmniBase for Pharo 6 > > Hi Matias > > A further report. I have worked through the test suite in OmniBaseTests, > running each test individually. I now have all green except two â > testEquality, which fails on the storage and retrieval of âDate todayâ, and > testGC, which fails for reasons I have not yet found. > > The worrying thing is the apparent change in the instance variables of Date â > see my exchange with Alistair Grant in another thread. I shall try to work > through the way OmniBase saves and resets the instvars, just in case it might > be a general problem. > > I shall let you know of anything else I find. > > Peter Kenny > > From: Pharo-users <pharo-users-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> On Behalf Of PBKResearch > Sent: 23 June 2018 09:18 > To: 'Any question about pharo is welcome' <pharo-users@lists.pharo.org > <mailto:pharo-users@lists.pharo.org>> > Subject: Re: [Pharo-users] OmniBase for Pharo 6 > > Matias > > Thanks. I have made this change, but it does not affect the tests I have run. > > I have focused on getting the test suite in OmniBaseTests to run. So far I > still have 5 greens, 7 reds and one orange. The greens are all the first five > test methods in the browser list; it seems it half fails on the sixth one > (TestEquality), hence the orange, and then red for all the rest. > > One problem is that the test database is created at the start of the test > suite, and then not removed at the end. This seems to mess up the next > attempt to run the tests. I tried to run the OmniBaseTests>>#tearDown > manually, but it fails, so I have to exit Pharo and delete the test database > in Windows. > > I intend to continue running the test suite, but I shall run the tests > individually, and put breakpoints in those that fail. I shall report here if > I make any progress. > > Best wishes > > Peter Kenny > > From: Pharo-users <pharo-users-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> On Behalf Of Matias Maretto > Sent: 23 June 2018 01:37 > To: Any question about pharo is welcome <pharo-users@lists.pharo.org > <mailto:pharo-users@lists.pharo.org>> > Subject: Re: [Pharo-users] OmniBase for Pharo 6 > > Peter: I think I found the problem. On ODBFileStream class >> > accessModeReadOnly the "o" on "only" is not capital. It is > ^#accessModeReadonly when should be ^#accessModeReadOnly ; so on the > ODBWin32FileStream >> createOn: createMode: accessMode: shareMode: > cacheMode: this part fails: > accessMode = #accessModeReadOnly ifTrue: [acMode := 2147483648 > "GENERIC_READ"]. > So it cant open the users file for read. I have fix it and at least for now > I didn't get any "block" error. > > > > De: Pharo-users <pharo-users-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> en nombre de PBKResearch > <pe...@pbkresearch.co.uk <mailto:pe...@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-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> On Behalf Of Matias Maretto > Sent: 22 June 2018 22:54 > To: Any question about pharo is welcome <pharo-users@lists.pharo.org > <mailto:pharo-users@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-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> en nombre de PBKResearch > <pe...@pbkresearch.co.uk <mailto:pe...@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-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> On Behalf Of Matias Maretto > Sent: 22 June 2018 21:07 > To: Any question about pharo is welcome <pharo-users@lists.pharo.org > <mailto:pharo-users@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-boun...@lists.pharo.org > <mailto:pharo-users-boun...@lists.pharo.org>> en nombre de Esteban Lorenzano > <esteba...@gmail.com <mailto:esteba...@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 <s...@clipperadams.com > > <mailto:s...@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 > > <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 <http://forum.world.st/> > Pharo Smalltalk Users forum and mailing list archive. Pharo User Forum > > > > >