*** btami has joined #gnuenterprise *** sjc has joined #gnuenterprise *** johannesV has joined #gnuenterprise *** btami has quit IRC *** johannesV has quit IRC *** johannesV has joined #gnuenterprise *** sjc has joined #gnuenterprise *** besonen has quit IRC *** cilkay has joined #gnuenterprise *** sjc has quit IRC *** sjc has joined #gnuenterprise *** reinhard has joined #gnuenterprise *** sjc has quit IRC *** holycow has quit IRC *** sjc has joined #gnuenterprise *** sjc has quit IRC *** sjc has joined #gnuenterprise *** kilo has joined #gnuenterprise good morning hi kilo hello austria which web end user interfaces are available? shmooz: AFAICT, none shmooz: several have been started, but none is fully functional and for most main developers, web is not a target so what UI is most used by non techies? gtk2 is most advanced windows is very close gnue-designer ? gnue-designer currently only supports the wx UI (usable under Windows and X) so once installed is there anything for people in this organization to use besides gnue-designer? please somebody say yes there is - look it up http something ok how does one actually use the financials? really am i lost here? am I missing something? *** wt has joined #gnuenterprise *** sjc has quit IRC shmooz: sorry i'm on the phone will answer as soon as i can ok thanks bud, I thought everyone went to sleep or was giving the silent you shold know the obvious here ;^) @weather LHUD kilo: The current temperature in Szeged, Hungary is 34°F. Conditions: Partly Cloudy. Humidity: 82%. Dew Point: 31°F. Pressure: 30.08 in (1018 hPa). Visibility: 6.0 miles (10.0 kilometers). UV: 0 out of 12 @weather MEM wt: The current temperature in Memphis International, Tennessee is 54°F (2:53 AM CST on November 16, 2004). Conditions: Overcast. Humidity: 77%. Dew Point: 46°F. Pressure: 30.45 in (1031 hPa). Visibility: 10.0 miles (16.1 kilometers). UV: 0 out of 12 @help wt: help [] @lsit @list wt: Admin, Alias, Amazon, Anonymous, Babelfish, BadWords, Bugzilla, Channel, ChannelLogger, ChannelStats, Config, Ctcp, Currency, DCC, Debian, Dict, Ebay, Factoids, Filter, Format, Fun, FunDB, Google, Herald, Http, Karma, Later, Lookup, Math, Misc, Network, Note, Owner, Poll, Python, RSS, RootWarner, Scheduler, Seen, Services, Sourceforge, Status, Todo, Topic, URL, Unix, User, UserInfo, (1 more message) @Admin oops @anonymous wt: (anonymous [ ...]) -- Command dispatcher for the Anonymous plugin. Use 'list Anonymous' to see the commands provided by this plugin. Use 'config list plugins.Anonymous' to see the configuration values for this plugin. In most cases this dispatcher command is unnecessary; in cases where more than one plugin defines a given command, use this command to tell the bot which plugin's command to use. @ebay wt: (ebay [ ...]) -- Command dispatcher for the Ebay plugin. Use 'list Ebay' to see the commands provided by this plugin. Use 'config list plugins.Ebay' to see the configuration values for this plugin. In most cases this dispatcher command is unnecessary; in cases where more than one plugin defines a given command, use this command to tell the bot which plugin's command to use. *** btami has joined #gnuenterprise @list wt: Admin, Alias, Amazon, Anonymous, Babelfish, BadWords, Bugzilla, Channel, ChannelLogger, ChannelStats, Config, Ctcp, Currency, DCC, Debian, Dict, Ebay, Factoids, Filter, Format, Fun, FunDB, Google, Herald, Http, Karma, Later, Lookup, Math, Misc, Network, Note, Owner, Poll, Python, RSS, RootWarner, Scheduler, Seen, Services, Sourceforge, Status, Todo, Topic, URL, Unix, User, UserInfo, (1 more message) @http wt: (http [ ...]) -- Command dispatcher for the Http plugin. Use 'list Http' to see the commands provided by this plugin. Use 'config list plugins.Http' to see the configuration values for this plugin. In most cases this dispatcher command is unnecessary; in cases where more than one plugin defines a given command, use this command to tell the bot which plugin's command to use. @list http wt: acronym, bender, cyborg, doctype, extension, freshmeat, geekquote, headers, kernel, netcraft, pgpkey, size, stockquote, title, and zipinfo @todo shmooz: of course there's a lot more to use than gnue-designer wt: http://supybot.sourceforge.net/docs/commands.html appserver, forms, and reports are in a fairly usable state and common and even navigator well, common is not something an "end-user" would "use" several people are developing application with these tools depends on the definition of 'end-user' financials is just being developed, so not yet usable kilo, don't think he means developer base is not either or is it? wt: for me, base is for packages what common is for tools ok we need to get .glds in for the base @monologue kilo: Your current monologue is at least 1 line long. so really to have an end useer usable install most of the packages have to be installed aswell. a b c @monologue kilo: Your current monologue is at least 4 lines long. shmooz: if you mean "accountant" or "secretary" with "end user" then we're not yet there reinhard, can you make a scripts dir in gnue-packages please? is ash alive again? yep reinhard, errr....gnue-packages/base, I mean I want to make a script that installs the base packages in the right order well as opposed to accountant and secretary how about sales people and service desk wt: ok, will do that reinhard, is there any way to list the forms on a server? find / -name "*.gfd" :) kilo, also, could you move the item-vat stuff to financials prolly under tax shmooz: the packages are just being built none of them is acutally usable what we have is the tools like forms, reports, etc item-vat to financials? ok I have a simple item-C.gld plz share with me what does 'prolly under tax' mean hmmmm arethose packages intended to be accessible remotely preferably via http kilo, the item-vat should prolly go under financials/tax ok, thx @roulette kilo: *click* @roulette btami: *click* reinhard: plz try roulette shmooz: gnu enterprise is clearly not a project to write a web based accounting program wt: plz try roulette @roulette *BANG* Hey, who put a blank in here?! * bigbrother reloads and spins the chambers. :)))))) lol rotfl hehe, kilo reads supybot docs :) kilo, is VAT the generic term for sales tax? reinhard, well how about a small general tech services group i think so. VAT = value added tax shmooz: i meant gnue is not primarly targeted at web applications @roulette wt: *click* what is roulette? oh I get it @roulette *BANG* Hey, who put a blank in here?! * bigbrother reloads and spins the chambers. :( wt: http://supybot.sourceforge.net/docs/plugins/Fun.html @roulette kilo: *click* @roulette *BANG* Hey, who put a blank in here?! * bigbrother reloads and spins the chambers. lol * wt hurts @roulette *BANG* Hey, who put a blank in here?! * bigbrother reloads and spins the chambers. * wt hurts again @roulette wt: *click* rotfl /msg btami he did not learn from the first one or has 9 lifes, like a cat I have more than 9 :-P @languages kilo: Portuguese, Chinese, German, Spanish, Japanese, French, English, Korean, and Italian @coin kilo: heads @uptime kilo: I have been running for 18 hours, 23 minutes, and 49 seconds. @cpu kilo: I have taken 123.88 seconds of user time and 6.32 seconds of system time, for a total of 130.20 seconds of CPU time. My children have taken 0.00 seconds of user time and 0.00 seconds of system time for a total of 0.00 seconds of CPU time. I'm taking up 10960 kB of memory. @cmd kilo: I offer a total of 393 commands in 51 command-based plugins. I have processed 28 commands. @dict licorice kilo: web1913 and wn responded: wn: licorice n 1: deep-rooted coarse-textured plant native to the Mediterranean region having blue flowers and pinnately compound leaves; widely cultivated in Europe for its long thick sweet roots [syn: {liquorice}, {Glycyrrhiza glabra}] 2: a black candy flavored with the dried root of the licorice plant [syn: {liquorice}]; web1913: Licorice (4 more messages) kilo: fyi, gsscvs does take multiple filenames (IIRC) i remember that way also, but i prefered to do it this way, imho it is cleaner this way *** sjc has joined #gnuenterprise reinhard: list properties are... ummm... forgotten? unfortunately you remember them so they are not forgotten ;-) :) gnue-schema can take multiple files and it processes them in a 'safe' order (regarding to constraints) and will they become true sometime? but after i'm finished with the memory-leaks i'll look at gnue-schema anyway (maybe i can remove the common-bug regarding gnue-schema) kilo: i'm not sure that is not good there is not a practical solution of transporting such a thing over the RPC interface bbl *** btami has quit IRC i remember you always blaming RPC... 8-) well, OTOH we have implemented stuff in appserver that I've said we won't implement just a week before more than once ;-) let me put it that way currently it's low priority lekma's memory leaks are highest priority (johannes is working on that right no) now docs are high priority several forms fixes are high priorit y me learning to type is high priority... prerequisit for docs... *** sjc has quit IRC hmm seems as if leaks in appserver are gone ... but the virtual memory displayed in top still grows (slowly but it grows) i'll add some gc-checks into rpc-server side then ... isnt it related to the python mem manager? the way it works @monologue kilo: Your current monologue is at least 3 lines long. no * johannesV back there were a lot of reference cycles in appserver and common such cyclic references couldn't be collected by python's gc like this one: l = []; l.append (l); del l this code-snipped produces a memory leak because the object "l" has to references, and after deleting it, one reference is left so gc cannot collect it, even though "l" is no longer reachable finding such situations in common and appserver is my current task ... ok, found another bunch of 105 leaking objects ... *** johannesV has quit IRC *** johannesV has joined #gnuenterprise *** kilo has quit IRC *** feti has left #gnuenterprise *** lekma has joined #gnuenterprise hi everyone *** jamest has joined #gnuenterprise hi lekma hi johannesV i'm still working on the leaks ... :( but i've removed a lot of them in common and appserver by now :( so you would have a new version for testing soon ... :) are somme of them coming from the form generation? leaks? johannesV: thx lekma, no most of them are due to reference cycles in datasource and drivers ok as well as in appserver ... johannesV: you could well commit what you have by now i intend today to switch to current svn so lekma can already test if is is getting better reinhard, there's a lot of debug-output in there now ah oh is there something that i should take care of coming from 0.3.1? i have still about 1680 *missing* objects after the first session get's closed jamest, yeah, there are a lot of 'unreachable' and 'not freeable' objects (regarding to garbage collection) really if we run appserver as daemon and starting the same form again and again appserver is eating memory btw it reminds me: when you close a generated form you don't actually close the session lekma, this is fixed in 0.3.1 oh ok same applies to 'normal' forms hows it happening some kind of circular reference? because the closeAll () never get's called in common jamest, right like in ResultSet/RecordSet jamest: common has some really evil circular references like where _cachedRecords [] has pointers to RecordSet instances pointing to the resultset reinhard, i've also solved the ref-probs on Connections () yeah what johannesV just says :) so common seems to be somehow clean now cool hope it didn't break anything (but i have not tested conditions by now where all that GObj* descendants have a _parent ... * johannesV is *hoping* too .... jamest: another funny circle is resultSet._dataObject._dataSource._currentResultSet the garbage collection will never free such a construct because every single member of this circle will keep a reference count of 1 blech unfortunately common is *full* of such circles because of the ... well ... not entirely clean encapsulation of the several objects lol that's one way to put it virtually every object references every other object somehow not entirely clean the goal of the mythical 0.6 release cycle :) the funny thing is that there is not a single circle like that in appserver (johannesV: please speak up if that's not correct ;-)) even though we didn't take special care about that hmm at least it seems so for the moment ... we haven't looked into language-interface very much by now i'd say that appserver has had a bit more design/structure and that common has kinda just grew after all you guys even put in those fancy comment things in appserver lol but more seriously appserver is the first app to run 24/7 based on common yes but report-server would also be so the problem is not appserver specific so I'm fairly positive we've never looked common running for long periods no, it's definately a common problem also i can very well envision and the encapsulation thing was sure to bite us in the arse we knew that but was holding off for 0.6 forms running for several days without restarting which, as stated before, is almost like asking for a pacifist in the whitehouse nothing but a dream a specific form, like order entry or like that rofl so johannes has already fixed much of this? * jamest can't imagine that would be an easy cleanup in datasources frankly, no he hasn't fixed it he has introduced some workarounds :) that hide the symptoms so from the user's perspective it looks like fixed sigh lol you mean the it keeps eating memory like a cavern troll eating rocks? :) memory is cheap labor costs aren't so buy more memory problem solved :) :) lekma, no it should work better than before, but the *right* solution would be to create a 'clean' model in common i'm gonna start a regression test with 20000 sessions (including request/fetch/load) .... i'm curious if it's eating all up ... jamest: and then you change gnue name to java... :) bah not bloody likely :) ok, seems as if i'm loosing about 1.35 kb per session which is kinda huge improvement ok, guys ... happy testing :) please drop me some lines if you find something relevant wow, after the last changes (in svn) using only request with condition does *not* create a leak so common seems to fit in quite well now so the leak is caused by the fetch? fetch does run *without* leaking now too checking load () now it's good looking *STRIKE* no more leaks on load () too so the last changes did it !!!! please try to do some testing too (especially lekma) johannesV: is it commited?? lekma, yeah since i've to leave now for a while i'll start another test with 20000 sessions johannesV: generated forms seem to be broken ImportError: cannot import name labels File , line 8, in form with svn forms and appserver lekma: you have to re-"gsscvs gnue.gsd" :( btw do you make regluar backups meanwhile? reinhard: yep :) but pg backup i didn't yet try to entirely backup with gsdgen ok what would be command line to bacup everything but the gnue base data?? i would *strongly* recommend backups if you use svn pg backup is ok I think and just in case I would include gnue base data into the backup but then how can i update with new gnue.gsd ?? ah that's the question you can just run gsscvs gnue.gsd over an existing database it will only change what needs to be changed and let all the rest of the db untouched ok i'll try that lekma: of course *after* a backup :) :) but actually I've even done with *our* real data (hotline) and it worked reinhard: yep it worked johannesV: the memory eating problem seems to be solved with generated forms but not with our xul client lekma: does your xul client call the close function? that is *very* important because it frees the memory associated with the session when the session is closed? yes without close, the session stays open forever (as we have no timeout) or you mean after every request?? no, when the session is closed then yes there a disconnect function that calls Session.close so it might well be that leaving a session open eats memory but closing that session an reopening a new one shouldn't eat more memory however, python doesn't return "freed" memory to the OS but keeps it for reuse but it works well with generated gnue-forms are there any hints to help me chase circular references in xul generation code ? johannesV would be able to give you hints (he is away at the moment, but will be back later) he played with garbage collection and debugging tools for 2 whole days now :) :) bbl *** jcater has joined #gnuenterprise *** wt has quit IRC *** sjc has joined #gnuenterprise lekma, how is that xul-client working ? it should be enough to call the session-managers close () method with the session-id to be closed this lead's to a implicit session.logout () which frees the resources *** lekma has quit IRC johannesV: jcater pointed out that python has a weak reference module as of 2.1 jamest, yes i know as a possible work around i think if encapsulation is done properly we don't need a workaround :) anyway, aren't weak-refs a bit dangerous ? like having a referenced instance beeing already destroyed I don't think so as if you follow the logic if a record set is still being referenced in an app it is being referenced by a result set I personally think weakrefs are the proper solution *** wendall911 has joined #gnuenterprise I think weakrefs could be a way to "break" circular references hmm, i've thought about weakrefs too, but didn't follow that path in very much detail however explicitly breaking the circle like johannesV did works, too as i've said, better would be a 'good' design ... * jcater missed that conversation :) johannesV: ? jcater: our love for object._this._is._so._wrong jcater, i mean, building classes which avoid circular refs by design or at least reduce to a minimum that's easy to say, of course jcater, yeah, i know :) jcater: we are not trying to offend you it's easy to say after the whole stuff has grown for years ... and the one looks at it please don't get us wrong reinhard: no, not offended /msg jcater i think they are just trying to find a way to sneak comments into the code during "updating" the code base but the great thing was the work all you guys have put in there before ... *lol* yeah, i love to insert comments ... :) just remember though the datasources you see are a reimplimentation based on lessons learned from the first time not to say there isn't room for improvements, of course :) :) :) but this is clearly all derek's fault I'd say there are several "levels" of object encapsulation :p <- just to be different you can take it very "strict" (nearly kinda religious) like I do (and I force johannesV to do) ;-) or you can be more flexible * johannesV hasn't to be forced to the flexible way gives you the power to very quickly implement stuff that wasn't originally planned one thing about the cleanup/redesign or whatever as you can do any thing at any place and have access to everything you need from everywhere you're not talking about going completely to accessor functions are you? getSomething() setSomething() however, I had to learn that the strict way can save you some headaches when it comes to details jamest: no jamest: good example (I hope at least) is in dbdrivers the RecordSet and ResultSet calls back into the datasource layer to execute some triggers at the correct point of time in a "religious" object hierarchy, RecordSet and ResultSet would be a layer *below* GDataSource so GDataSource would use and call RecordSet and ResultSet objects but RecordSet and ResultSet would not even know about GDataSource and it's properties and functions ok, have to leave now, but i'll read the logs tomorrow morning good night all *** johannesV has quit IRC but using that model, wouldn't GDataSource have to handle all database inserts, updates, etc? at least, given what the resultsets and recordsets actually call back to datasource to look at gah...have a headache jcater: isn't there a GDataSource.commit (or post or whatever) anyway? * reinhard doesn't know offhand but as I said it's a good example even for my statement that such a model is much harder to implement at the start actually I wouldn't even go so far to say that the one model is "better" or "worse" than the other no, neither would I my only thing is I'm not an OO person just for the sake of being OO (which is one reason I love python) but I will admit datasources have far too many cross-references now just you are tempted to bitch at the model you don't usually use when you stumble over the disadvantages of it :) it# it's not even OO actually (IMHO) it's more a matter of thinking in layers how would those lower level objects call up through the tree as I seem to recall that we had to do some of that to get stuff working that wasn't originally planned I don't want to sacrifice the abstraction we have now between resultsets and recordsets and dataobjects (abstractions from end developers, not internal ones) and I fear by trying to eliminate the circular references (which I've always disliked too, but see as necessary evil) that everything would have to be done through dataobjects then well, it could definitely use cleanup please again don't get me wrong part of the problems come from the fact that no less than 18 months ago there was no GConnection class I am *not* trying to talk you into *any* structural change of common and stuff was split up after the fact by the same token, some of the circ references came from us adding support for automatic master-detail relationships, iirc but not all, of course reinhard: you were talking about trying to leave the external interface intact but trying to leave the common level API about the same right? actually, we just had those memory leaks and they were holding back lekma so that we could still treat resultsets as lists and recordsets as dicts? and we promised him to fix anything that holds him back I was not talking about changing anything, really I was more philosophing about different approaches reinhard: fwiw I don't think anyone is against changes actually I am as common in general and datasources especially work pretty well the way you did it and I would *happily* let you do the *minor* changes that we need now for the slightly different aspects that appserver brings into the game (as for example running as a daemon) it's just to same old problem of having to do changes in code that is structured with different strategy than you usually do I *bet* you would have the same problems if you had to make changes in appserver brb well, bottom line if it doesn't break *my* code, I don't care :-) * dneighbo goes and breathes on jcater's code its broke now fewl! curse de la masta back bbl *** Pe941 has joined #gnuenterprise *** kilo has joined #gnuenterprise *** Pe941 has quit IRC *** holycow has joined #gnuenterprise *** kilo has quit IRC *** kilo_ has joined #gnuenterprise night all *** reinhard has quit IRC *** kilo_ has quit IRC *** jamest has quit IRC *** involved has joined #gnuenterprise hi how can i get the "ERP Packages"? are they downloadable? anyone there? *** involved has quit IRC *** involved has joined #gnuenterprise *** involved has quit IRC *** involved has joined #gnuenterprise back for good.. damn connection. *** jamest has joined #gnuenterprise *** wendall911 has quit IRC bah involved: there are no packages, only tools right now *** wendall911 has joined #gnuenterprise *** holycow has quit IRC *** sjc has quit IRC this is damn confusing.. but i got the login screen for the sample ;) c u away* *** holycow has joined #gnuenterprise *** wendall911 has quit IRC *** holycow has quit IRC *** jcater has quit IRC *** jamest has left #gnuenterprise *** jcater has joined #gnuenterprise