From eslick at media.mit.edu Mon Feb 2 23:46:47 2009 From: eslick at media.mit.edu (Ian Eslick) Date: Mon, 2 Feb 2009 18:46:47 -0500 Subject: [cl-prevalence-devel] Extending the serializer Message-ID: I've extended cl-prevalence slightly to support some custom serialization and deserialization of user data types. The attached diff contains a patch that allows users to hook into the serialization protocol at the appropriate places. Here is an example of how to hook into the protocol. The last two functions (of 3) were added in the diff. ;; Serializer support for persistent objects (defmethod s-serialization::serialize-xml-internal ((object persistent) stream serialization-state) (declare (ignore serialization-state)) (write-string "" stream)) (defmethod s-serialization::deserialize-xml-new-element-aux ((name (eql :persistent)) attributes) (elephant::controller-recreate-instance *store-controller* (parse-integer (s-serialization::get-attribute-value :id attributes)))) ;; Not needed in this app: ;; (defgeneric deserialize-xml-finish-element-aux ((name (eql :persistent)) attributes parent-seed seed) ;; seed) Regards, Ian -------------- next part -------------- A non-text attachment was scrubbed... Name: serialization-generalize.diff Type: application/octet-stream Size: 1497 bytes Desc: not available URL: -------------- next part -------------- From sky at viridian-project.de Tue Feb 3 15:25:26 2009 From: sky at viridian-project.de (Leslie P. Polzer) Date: Tue, 3 Feb 2009 16:25:26 +0100 (CET) Subject: [cl-prevalence-devel] Extending the serializer In-Reply-To: References: Message-ID: <64262.88.73.239.67.1233674726.squirrel@mail.stardawn.org> > I've extended cl-prevalence slightly to support some custom > serialization and deserialization of user data types. The attached > diff contains a patch that allows users to hook into the serialization > protocol at the appropriate places. I have applied your patch to my development branch at http://bitbucket.org/skypher/cl-prevalence/ From eslick at media.mit.edu Tue Feb 3 16:38:39 2009 From: eslick at media.mit.edu (Ian Eslick) Date: Tue, 3 Feb 2009 11:38:39 -0500 Subject: [cl-prevalence-devel] Extending the serializer In-Reply-To: <64262.88.73.239.67.1233674726.squirrel@mail.stardawn.org> References: <64262.88.73.239.67.1233674726.squirrel@mail.stardawn.org> Message-ID: Is your branch going to be integrated with the mainline (perhaps you should get commit permissions) or are you likely to maintain a parallel branch that deals with weblocks integration issues? Ian On Feb 3, 2009, at 10:25 AM, Leslie P. Polzer wrote: > >> I've extended cl-prevalence slightly to support some custom >> serialization and deserialization of user data types. The attached >> diff contains a patch that allows users to hook into the >> serialization >> protocol at the appropriate places. > > I have applied your patch to my development branch at > > http://bitbucket.org/skypher/cl-prevalence/ > > > _______________________________________________ > cl-prevalence-devel site list > cl-prevalence-devel at common-lisp.net > http://common-lisp.net/mailman/listinfo/cl-prevalence-devel From sky at viridian-project.de Tue Feb 3 17:24:01 2009 From: sky at viridian-project.de (Leslie P. Polzer) Date: Tue, 3 Feb 2009 18:24:01 +0100 (CET) Subject: [cl-prevalence-devel] Extending the serializer Message-ID: <62902.88.73.239.67.1233681841.squirrel@mail.stardawn.org> > Is your branch going to be integrated with the mainline (perhaps you > should get commit permissions) or are you likely to maintain a > parallel branch that deals with weblocks integration issues? This branch contains changes that I'd like to see in the main repository. I intend to contribute more to cl-prevalence since it's a central component of some of my applications. I have asked Sven for commit access but he hasn't responded yet. He's probably not reading mail right now. In the meantime all my contributions will go into the hg branch, which is also easier to work with than CVS. From avodonosov at yandex.ru Fri Feb 6 23:18:45 2009 From: avodonosov at yandex.ru (Anton Vodonosov) Date: Sat, 7 Feb 2009 01:18:45 +0200 Subject: [cl-prevalence-devel] clisp patch In-Reply-To: <89976532.20090113004547@yandex.ru> References: <89976532.20090113004547@yandex.ru> Message-ID: <25155450.20090207011845@yandex.ru> Hello. I discovered, that I am not the first who proposed clisp patch (and also not the first who noticed duplicated #+sbcl): http://common-lisp.net/pipermail/cl-prevalence-devel/2005-May/000073.html BTW, my patch is not as exhaustive as Tomas' one, I only defined slot serialization (without pathname seralization and the probe-file fix), but event in that state I am successfully ... testing cl-prevalence on clisp 2.46/Windows. Best regards, - Anton on Tuesday, January 13, 2009, 12:45:47 AM Anton wrote: > Hello. > Attached is the patch (against CVS HEAD) for SERIALIZABLE-SLOTS > methods for CLISP. I've just tried cl-prevalece. With this patch > I can presist/load objects. > Is porting of cl-prevalence as trivial as implementing these two > methods? > BTW, why these methods have #+sbcl conditionals two times? > Best regards, > - Anton From avodonosov at yandex.ru Fri Feb 6 23:30:30 2009 From: avodonosov at yandex.ru (Anton Vodonosov) Date: Sat, 7 Feb 2009 01:30:30 +0200 Subject: [cl-prevalence-devel] what concurrency approach you use with cl-prevalence Message-ID: <505700958.20090207013030@yandex.ru> Hello everyone, Could you share your approach to concurrency in combination with cl-prevalence? As far as I understand, simultaneous transactions (IOW modifications) of the database are impossible, because all transactions use the same transaction log file and therefore must happen sequentially to avoid the transaction log corruption caused by concurrent writes. What about reading operations for persistent data? Has anyone implemented multiple-read/single write locking? Or you don't care and just user one global lock for all your database? Best regards, - Anton From sky at viridian-project.de Sat Feb 7 09:22:23 2009 From: sky at viridian-project.de (Leslie P. Polzer) Date: Sat, 7 Feb 2009 10:22:23 +0100 (CET) Subject: [cl-prevalence-devel] CLISP patch Message-ID: <62891.88.73.241.184.1233998543.squirrel@mail.stardawn.org> Anton, could you merge your patch with Tomas Zellerin's? His patch should also be separated into CLISP-specific and other parts. Leslie From avodonosov at yandex.ru Sun Feb 8 22:18:40 2009 From: avodonosov at yandex.ru (Anton Vodonosov) Date: Mon, 9 Feb 2009 00:18:40 +0200 Subject: [cl-prevalence-devel] CLISP patch In-Reply-To: <62891.88.73.241.184.1233998543.squirrel@mail.stardawn.org> References: <62891.88.73.241.184.1233998543.squirrel@mail.stardawn.org> Message-ID: <1632479918.20090209001840@yandex.ru> Hello Leslie, If you plan commit a clisp patch (I do not insist, the same as Tomas), I suggest to commit only serialization fix and probe-directory fix (Tomas' patch also includes fixes to sysdeps: sockets and multiprocessing. sockets for CLISP are already included into s-sysdeps. Multiprocessing is simulated using unix fork and semaphores; imho it is not very appropriate because it works in another address space and only on unixes). That way clisp users will be able to use cl-prevalence, but not all the demos will work (in particular the one requiring multiprocessing). I.e. clisp will be partially supported. Resulting patch will consist of only several lines. What do you think? Best regards, - Anton on Saturday, February 7, 2009, 11:22:23 AM Leslie wrote: > Anton, > could you merge your patch with Tomas Zellerin's? > His patch should also be separated into CLISP-specific > and other parts. > Leslie > _______________________________________________ > cl-prevalence-devel site list > cl-prevalence-devel at common-lisp.net > http://common-lisp.net/mailman/listinfo/cl-prevalence-devel