*** gumpa_afk has quit IRC | 00:16 | |
*** gumpa_afk_ has joined #zope3-dev | 00:17 | |
*** gumpa_afk_ is now known as gumpa_afk | 00:17 | |
*** tarek has joined #zope3-dev | 00:17 | |
*** tonico|away is now known as tonico | 00:22 | |
*** gumpa_afk has quit IRC | 00:41 | |
*** J1m has quit IRC | 00:42 | |
*** timte has quit IRC | 00:47 | |
*** Aiste has joined #zope3-dev | 01:17 | |
*** _tarek has joined #zope3-dev | 01:20 | |
*** tarek has quit IRC | 01:25 | |
*** _tarek has quit IRC | 01:25 | |
*** Aiste has quit IRC | 02:02 | |
*** harobed_ has joined #zope3-dev | 02:08 | |
*** harobed_ has quit IRC | 02:44 | |
*** tonico is now known as tonico|away | 03:11 | |
*** wrobel has quit IRC | 03:25 | |
*** xenru|clone has joined #zope3-dev | 04:04 | |
*** xenru has quit IRC | 04:19 | |
*** projekt01 has left #zope3-dev | 04:25 | |
*** baijum has joined #zope3-dev | 06:35 | |
*** niemeyer has quit IRC | 07:43 | |
*** ksmith99 has quit IRC | 07:57 | |
*** WebMaven has joined #zope3-dev | 07:59 | |
*** natea has joined #zope3-dev | 08:07 | |
*** rocky has joined #zope3-dev | 08:12 | |
*** ktwilight has quit IRC | 08:40 | |
*** xenru has joined #zope3-dev | 09:05 | |
*** natea has quit IRC | 09:11 | |
*** xenru|clone has quit IRC | 09:17 | |
*** dokai has quit IRC | 09:26 | |
*** xenru|clone has joined #zope3-dev | 09:29 | |
*** rocky has quit IRC | 09:29 | |
*** tgkuo has joined #zope3-dev | 09:33 | |
*** xenru has quit IRC | 09:43 | |
*** wrobel has joined #zope3-dev | 10:07 | |
*** tgkuo has left #zope3-dev | 10:14 | |
*** ktwilight has joined #zope3-dev | 10:38 | |
*** ignas has joined #zope3-dev | 10:47 | |
*** jukart has joined #zope3-dev | 11:17 | |
*** baijum_ has joined #zope3-dev | 11:21 | |
*** baijum has quit IRC | 11:35 | |
*** baijum_ has quit IRC | 11:38 | |
*** xenru has joined #zope3-dev | 11:49 | |
*** jukart has quit IRC | 11:51 | |
*** ignas_ has joined #zope3-dev | 11:56 | |
*** baijum has joined #zope3-dev | 11:57 | |
*** dokai has joined #zope3-dev | 11:58 | |
*** ignas has quit IRC | 11:59 | |
*** xenru has quit IRC | 12:03 | |
*** xenru has joined #zope3-dev | 12:04 | |
*** xenru|clone has quit IRC | 12:04 | |
*** MJ has quit IRC | 12:43 | |
*** dunny has quit IRC | 13:08 | |
*** jkakar has quit IRC | 13:53 | |
*** regebro has joined #zope3-dev | 13:56 | |
*** harobed_ has joined #zope3-dev | 14:14 | |
*** jkakar has joined #zope3-dev | 14:17 | |
*** alga has joined #zope3-dev | 14:46 | |
*** russf has joined #zope3-dev | 14:50 | |
*** russf has left #zope3-dev | 14:57 | |
*** baijum_ has joined #zope3-dev | 15:07 | |
*** projekt01 has joined #zope3-dev | 15:08 | |
projekt01 | benji, ayt? | 15:09 |
---|---|---|
*** ignas_ has quit IRC | 15:12 | |
benji | here, projekt01 | 15:22 |
*** baijum has quit IRC | 15:27 | |
*** baijum_ has quit IRC | 15:27 | |
projekt01 | benji, is there a license problem with the z3c.javascript package? | 15:30 |
*** J1m has joined #zope3-dev | 15:31 | |
benji | not that I know of specifically; there have been some discussions of what code can be put in the repo, but I don't recall anything about z3c.javascript | 15:32 |
projekt01 | benji, thanks, I just was reading this mails. | 15:33 |
*** ignas has joined #zope3-dev | 16:01 | |
*** jinty has joined #zope3-dev | 16:21 | |
*** siren99 has joined #zope3-dev | 16:32 | |
projekt01 | Note: there is some incredible work from Adam Groszer. He started to build a ZODB Browser as a wxPython application. | 17:05 |
projekt01 | You can find the code at: | 17:05 |
projekt01 | svn://svn.zope.org/repos/main/z3c.zodbbrowser/sandbox/src/z3c/zodbbrowser | 17:05 |
ignas | err, how tu run that thing ? :) | 17:12 |
ignas | oh :) tried running wrong file | 17:12 |
*** ofer has joined #zope3-dev | 17:24 | |
projekt01 | ignas, does it work? | 17:24 |
ignas | yes | 17:24 |
projekt01 | how did yo start it? | 17:25 |
projekt01 | Do you use a software/instance Zope3 setup? | 17:25 |
ignas | mkdir z3c | 17:25 |
ignas | touch z3c/__init__.py | 17:25 |
projekt01 | Ok, I guess this will work out of the box, right? | 17:25 |
ignas | by this you mean ? | 17:26 |
ignas | "this" | 17:26 |
projekt01 | Can you add a comment about to start the ZODB Browser like you did? | 17:26 |
projekt01 | This should mean with a make zope instance setup | 17:27 |
projekt01 | My sample describes a special setup if you use a trunk based setup with a additional src folder like used e.g. in eclipse | 17:27 |
ignas | well, i don't really use a mkzopeinstance setup ... | 17:28 |
projekt01 | but you use a software home and a instance home, right? | 17:29 |
ignas | it's either schooltool (uses Zope3 as a set of libraries, not even touches z3.py) | 17:29 |
projekt01 | Ah, I see | 17:29 |
ignas | or ivija, but ivija symlynks directly into zope3 directories i think | 17:29 |
ignas | so i just used PYTHONPATH=.:schooltool/Zope3/src:schooltool/src/ python z3c/zodbbrowser/main.py | 17:30 |
projekt01 | On windows this doesn't work so easy ;-) | 17:31 |
ignas | on windows i'd write a bat file that sets environment variables the windows way i guess ... | 17:32 |
*** siren99 has quit IRC | 17:33 | |
projekt01 | What do you think about the ZODB Browser? It's cool isn't it? | 17:34 |
*** harobed_ has quit IRC | 17:37 | |
ignas | well, Zope3 inspector is more powerful at the moment ... | 17:42 |
projekt01 | Doesn't help if your Zope isn't running ;-) | 17:43 |
ignas | if your Zope is not running you can start it :) | 17:43 |
ignas | same for the zodbbrowser ;) | 17:43 |
ignas | it can't help you if it's not running | 17:44 |
projekt01 | And what about lost objects? The ZODB Browser shows you the database content and not the traversable content objects. | 17:44 |
ignas | what do you mean by "the traversable content objects" | 17:45 |
projekt01 | introspector shows you only objects which are traversable by the API you implemented in your product. | 17:45 |
ignas | are we both talking about Zope3 views that show you all interfaces implemented by some object, and all of it's attributes with links to apidoc ? | 17:45 |
ignas | btw - i have some objects that have attributes not defined by their interfaces, and zodbbrowser is not showing them (i accidentaly added name instead of first_name to objects) | 17:46 |
projekt01 | The ZODB Browser shows you tree view of the ZODB which is not always the same | 17:46 |
ignas | and introspector is showing them ... | 17:46 |
projekt01 | Think about objects which you delete and they reference somthing you missed to cleanup | 17:47 |
ignas | projekt01: what examples could you tell that would differ ? | 17:47 |
projekt01 | lost objects which reference each other but nothing traversable | 17:48 |
ignas | oh, and how do you access them in zodbbrowser ? | 17:48 |
projekt01 | Right now this isn't implemented in ZODB Browser, but could be done | 17:48 |
ignas | and why? | 17:48 |
ignas | as long as ZODB is concerned if you can't traverse into something - it does not exist | 17:48 |
projekt01 | no that's not true | 17:49 |
ignas | you don't delete anything from ZODB anyway | 17:49 |
ignas | could you illustrate this with some close to real use case scenario ? | 17:49 |
ignas | if it's not too difficult of course ... | 17:50 |
projekt01 | if two object reference each other and one of them is a container item and you delete this item the get never removed from the ZODB if you pack them because the carbage collector can't remove them | 17:50 |
ignas | a sec | 17:50 |
projekt01 | It's really bad if your ZODB is more then 2 GB and you delete everthing. And after pack the ZODB the Data.fs is still 2 GB ;-) | 17:51 |
ignas | you have object A that references object B and B references A | 17:51 |
ignas | you delete A | 17:51 |
ignas | from some container | 17:51 |
ignas | but you still can access object A through B | 17:52 |
ignas | as B references A | 17:52 |
projekt01 | and if you delete B? | 17:52 |
*** alga has quit IRC | 17:52 | |
projekt01 | I mean and if you delete B from a container? | 17:52 |
projekt01 | So we have still a reference form A to B | 17:53 |
ignas | well, then both objects will have no way to access them from root | 17:53 |
ignas | and will be packed i suppose | 17:53 |
projekt01 | no | 17:53 |
projekt01 | the are lost and the pack method can't remove them because of it's reference! | 17:54 |
ignas | then it's a bug in ZODB, and zodbbrowser won'd help that much ... | 17:54 |
*** ofer has quit IRC | 17:54 | |
ignas | i mean ZODB should handle circular dependencies between objects in some way ... | 17:55 |
projekt01 | yes it does and the result is, not to delete them. | 17:56 |
ignas | btw, don't all containers have circular relationship with their content ? | 17:56 |
ignas | so if i have a container A with items B,C,D | 17:56 |
ignas | and i delete A | 17:56 |
ignas | it stays | 17:56 |
ignas | which is either a bug, or a feature ;) | 17:56 |
ignas | and how will zodbbrowser help in such case? as one might have thousands of such objects | 17:56 |
ignas | someone should just fix the packing script to handle these things | 17:57 |
projekt01 | ISublocation does the cleanup via the obect remove event! I'm pretty shure not everybody knwos that and custom BTree implementation get not correct removed from the carbage collector | 17:57 |
projekt01 | e.g. self.foo = BTreeContainer() | 17:58 |
projekt01 | Such construct get never removed by itself | 17:58 |
ignas | are you absolutely sure that Zope3 does not handle circular references? | 18:00 |
ignas | as some emails written by jim as far as 2002 state quote: "In fact, circular references among persistent objects don't cause memory leaks." | 18:01 |
projekt01 | Yup, I have a project which I ad asite an remove them, after pack the ZODB, the DATa.fs is still the same size ;-( | 18:01 |
*** siren99 has joined #zope3-dev | 18:01 | |
ignas | well, the problem might be different | 18:01 |
ignas | or you asked people that work on ZODB and they told you that ZODB can't handle circular references ? | 18:02 |
projekt01 | We discusse this also a the last Sprint which Adam shows his ZODB Browser. This was also the reason he startet to develop that tool. | 18:02 |
ignas | http://www.zope.org/Documentation/Articles/ZODB1 - the docs even state: "You can just use normal Python references. In fact, you can even use circular references." | 18:03 |
projekt01 | I'm, absolutly shure, I'm running the second time into this problem. | 18:04 |
ignas | if removing objects with circular references poses problems it might be a bug | 18:04 |
ignas | that should be fixed in zodb | 18:04 |
projekt01 | Yes, you can, btu you have to cleanup this references by yourself! | 18:04 |
projekt01 | No, why? That's the developers job. | 18:04 |
ignas | nope, not really, if they state that they support circular references - they should support them | 18:05 |
ignas | which means support them without 3rd party tools | 18:05 |
projekt01 | I hope we can implement a visualization for such "lost" objects into the ZODB Browser. | 18:05 |
ignas | if it is the way you say - objects are leaked, then why visualise something that would be removed with an evolution script after the bug is fixed ? | 18:07 |
projekt01 | I'm not shure if such a circular reference cleanup is good, I think such a cleanup can only be done if you check all refences from each object recursive, and this can end in a neverending loop which has to stop at some time. If so, we never can guarantee to cleanup all references. | 18:08 |
ignas | sorry, but this problem has been solved a lot of times | 18:09 |
ignas | all garbage collectors for languages like python, common-lisp, scheme, java, c#3333 etc. | 18:09 |
ignas | deal with such problems | 18:09 |
ignas | and they do that pretty well i'd say | 18:09 |
ignas | the mark and sweep is an example of an algorithm that would solve it nicely ... | 18:10 |
projekt01 | I agree on that, I'm not the right person for asking why this happens, i just know that it happens. | 18:10 |
projekt01 | perhaps we have to ask this question to a ZODB guru | 18:11 |
ignas | i just think that it's either a bug that should get reported and solved in ZODB | 18:11 |
ignas | or you have refferences to objects that you are not aware of | 18:11 |
projekt01 | +1 | 18:12 |
ignas | so next time you encounter an unpackable ZODB, just put it in Zope collector or wherever they work on ZODB bugs | 18:12 |
projekt01 | you mean with a unpackable ZODB which get not smaller after running the pack method? | 18:13 |
ignas | yes | 18:14 |
ignas | with parameters you are passing to the pack method etc. | 18:14 |
*** siren99 has quit IRC | 18:14 | |
projekt01 | nothing special, just using the ZMI | 18:14 |
ignas | i think there was an option, like keep this much of the history | 18:16 |
projekt01 | ignas, Ok, will do that, thanks for the hint. | 18:16 |
*** natea has joined #zope3-dev | 18:27 | |
*** natea has quit IRC | 18:31 | |
*** J1m has quit IRC | 18:40 | |
*** WebMaven has quit IRC | 18:52 | |
*** natea has joined #zope3-dev | 19:04 | |
*** natea has quit IRC | 19:05 | |
*** natea has joined #zope3-dev | 19:07 | |
*** projekt01 has quit IRC | 19:31 | |
*** natea has quit IRC | 20:01 | |
*** philiKON has joined #zope3-dev | 20:03 | |
*** danfairs has joined #zope3-dev | 20:07 | |
*** mexiKON has joined #zope3-dev | 20:16 | |
*** philiKON has quit IRC | 20:16 | |
*** ignas has quit IRC | 20:31 | |
*** mexiKON has quit IRC | 20:39 | |
*** alecm has joined #zope3-dev | 20:40 | |
*** danfairs has quit IRC | 20:47 | |
*** rocky has joined #zope3-dev | 20:50 | |
regebro | Why can't I use testbrowser and layers at the same time without everything exploding is a fireworks display of weird errors? | 20:51 |
regebro | Well, I guess it could have something to do with layers not making much sense to me in the first place... :) | 20:52 |
regebro | Yeah, that was layers that made it explode. I don't get the finer details of using layers. Too much magic. | 21:00 |
regebro | Nope, the error came back. It' s official, layers suck. | 21:02 |
*** harobed_ has joined #zope3-dev | 21:04 | |
*** regebro has quit IRC | 21:07 | |
*** philiKON has joined #zope3-dev | 21:07 | |
*** natea has joined #zope3-dev | 21:17 | |
*** philiKON is now known as cafeteriaKON | 21:38 | |
*** rocky has quit IRC | 21:44 | |
*** alecm has quit IRC | 21:47 | |
*** cafeteriaKON has quit IRC | 21:59 | |
*** natea has quit IRC | 21:59 | |
*** srichter has joined #zope3-dev | 22:23 | |
*** dunny has joined #zope3-dev | 22:26 | |
*** natea has joined #zope3-dev | 23:25 | |
*** natea_ has joined #zope3-dev | 23:31 | |
*** philiKON has joined #zope3-dev | 23:35 | |
*** ofer has joined #zope3-dev | 23:44 | |
*** natea has quit IRC | 23:47 | |
*** natea has joined #zope3-dev | 23:52 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!