--- Log opened Fri Mar 25 00:00:09 2011 00:13 < conseo> vdev-xfbot: time 00:13 < vdev-xfbot> conseo: The time is now Fri Mar 25 00:14:15 EDT 2011 00:13 < conseo> vdev-xfbot: help 00:13 < vdev-xfbot> vdev-xfbot is CrossForumBot 0.1 for http://metagovernment.tuxfamily.org/crossforum/ 00:13 < vdev-xfbot> vdev-xfbot COMMAND parameters # comment 00:13 < vdev-xfbot> vdev-xfbot CHANNELS # channels being monitored 00:13 < vdev-xfbot> vdev-xfbot TIME # current time of the bot 00:13 < vdev-xfbot> vdev-xfbot INVITE channel # invite temporarily 00:15 < mcallan> conseo: i apparently need: /home/vdev/votorola/userproperties.js 00:15 < conseo> oh sure ok 00:15 < conseo> where should i put it? 00:16 < mcallan> why not voharvester.js? 00:16 < conseo> u can get it from /home/voff/votorola/userproperties.js 00:17 < conseo> i can do that, i thought about central script for all of queries of user's data though 00:17 < conseo> but i can put it in voharvester.js 00:18 < mcallan> yes, because if admin wants it to come from central, he can vo.inc from central. 00:19 < mcallan> a single file is easier install 00:23 < conseo> ok so u wait for a fix? 00:23 < mcallan> no, i can change it later, still rolling here... ;-) 00:23 < conseo> ok, cool 00:24 < conseo> mcallan: in userproperties.js set the TODO marked line to false, to use the cache 00:25 < conseo> shouldn't be a problem atm. though imo 00:25 < mcallan> it says: userPageName, false /* TODO change to false */ 00:25 < mcallan> it's running... 00:25 < mcallan> (vdev) 00:26 < conseo> i'll have a look at this tomorrow, seems pretty interesting to me: http://u.zelea.com:8080/v/w/D?b=4193&a=4042&aR=2821&bR=2815 00:26 < test-xfb> POLL: G/p/mho 00:26 < test-xfb> AUTHOR: 4consensus WebDe 00:26 < test-xfb> POSURL: http://metagovernment.org/w/index.php?oldid=2821 00:27 < conseo> :-) 00:29 < mcallan> vdev-xfbot: time 00:29 < vdev-xfbot> mcallan: The time is now Fri Mar 25 00:30:14 EDT 2011 00:29 < mcallan> :-) 00:29 < conseo> vdev-xfbot: are you dumb metal? 00:29 < vdev-xfbot> vdev-xfbot is CrossForumBot 0.1 for http://metagovernment.tuxfamily.org/crossforum/ 00:29 < vdev-xfbot> vdev-xfbot COMMAND parameters # comment 00:29 < vdev-xfbot> vdev-xfbot CHANNELS # channels being monitored 00:29 < vdev-xfbot> vdev-xfbot TIME # current time of the bot 00:29 < vdev-xfbot> vdev-xfbot INVITE channel # invite temporarily 00:30 < mcallan> well, i could wait 10 minutes for the feed to show on vdev, or just install on v... ? 00:30 < conseo> have u exported votorola/out/voharvester/irclog somewhere? 00:31 < mcallan> not yet, i can do later eh? 00:31 < conseo> sure, just to check that the backlog works 00:31 < mcallan> or no? must do forst? 00:31 < mcallan> *first* 00:32 < conseo> u can do later, but for messages that hit the db, webUrlBase is already stored to what it is set atm. 00:32 < conseo> i have just symlinked it in the apache folder, don't know if this is ok for your production setup though 00:33 < conseo> u can check if the log works by looking into that folder though and do it later then 00:33 < mcallan> not sure what u mean. that config item webUrlBase is written to db? 00:34 < conseo> it is used to assemble the link for the service which is ">>>" in the clients DiffFeed 00:34 < mcallan> i can change log url later, right? no need to correct rows in db 00:35 < conseo> hmm, for the messages already being parsed it will point nowhere then 00:36 < mcallan> should i install or not, your call. if a config change wrecks the app, u will have to fix that later. 00:37 < mcallan> what i mean is that it's a bug if a normal config change breaks the app. 00:37 < conseo> just decide where the irclog folder will be accessible from the web, then you can still setup the webserver later 00:37 < mcallan> ... and u would have to fix that, i assume. but u could do it later 00:37 < mcallan> but i will need to change it later. 00:38 < mcallan> i don't *know* where it will finally live 00:38 < conseo> hmmm 00:38 < mcallan> my point is that admin will always assume it is safe to repoint. and there's no reason anyway to store a config item is db. 00:39 < mcallan> (or so i assume) 00:39 < mcallan> anyway, i can install now. but i will have to change log url later (weeks, months, i don't know) 00:40 < conseo> webBaseUrl is custom for any discussion medium. if i assemble the url on the client side then crossforum will either need to get the info from the db or from a seperate configuration for each service itself (not ideal imo) 00:41 < conseo> we also have to safe that information in the bite then to know which service the bite is from 00:41 < mcallan> i don't understand, and it may be too late to discuss solution. 00:41 < mcallan> i only need to know if i can install 00:42 < mcallan> (just cause i'm short of time c) 00:42 < mcallan> got a meeting in the morning, and i haven't prepared... 00:42 < mcallan> it's 1 am... 00:43 < conseo> well, the turnout is that the bot will work already and track messages or it won't. for all messages that are tracked in the meantime the url might break later, but then it is even worse to not set it up and don't have irc information at all (?) 00:43 < conseo> sure leave it alone then 00:43 < mcallan> leave it till later? 00:43 < conseo> yep 00:44 < conseo> do your stuff and we talk about it tomorrow 00:44 < mcallan> ok 00:44 < conseo> have a good night and a good meeting tomorrow! 00:45 < mcallan> thx dude, cu tomorrow 11:06 < conseo> mcallan: ping 12:17 < conseo> mcallan: i have moved the userproperties.js into voharvester.js and share the JavaScriptIncluder between my threads ( i have synchronized invokeKnownFunction for that reason ). you can fetch the updated voharvester.js from votorola/a/diff/feed/voharvester.js 12:18 < conseo> we have to talk about how i do the db stuff right and keep the base urls reconfigurable. i can do that with table joins, but i would like to discuss that with you first 12:47 < mcallan> conseo: ok. so why does url_base need to be copied to db? 14:20 < conseo> url_base is different for each service. for mailman it points to pipermail, for irc it points to the logdir ... 14:40 < conseo> i guess the VOHarvester should update a table in the DB on startup which is then queried by the servlet in a joined query 14:45 < mcallan> conseo: as long as it solves the problem. i can maybe help, but i would need to understand why (logically) the value must be stored in the db, when it's already stored in a config file. and why it must be fixed, when log locations are naturally variable. 14:45 < mcallan> (i mean there may be a simpler solution) 14:48 < conseo> the servlet serves this value, it would have to parse the voharvester.js then as well as setup (which is indeed a step less then both storing and loading the data from the db 14:49 < conseo> s/as setup/on setup 14:49 < mcallan> ok, that makes sense 14:49 < conseo> loading the config? 14:49 < mcallan> yes 14:49 < conseo> ok 14:51 < mcallan> conseo: c, i have a slightly related suggestion 14:51 < conseo> ok 14:52 < mcallan> it's not crucial, or high priority, but at some point i think it will be easier for you... 14:53 < mcallan> instead of a single method addService with many parameters, you might have many methods with a single param 14:54 < mcallan> http://zelea.com/project/votorola/_/javadoc/votorola/a/Pollserver.ConstructionContext.html 14:54 < conseo> ok, i would parse the ConstructionContext directly in JavaScript which would be most consistent (and would allow that already), but i am not sure if this is robust 14:55 < mcallan> what i mean is shown here, for e.g. http://zelea.com/project/votorola/_/javadoc/votorola/a/Pollserver.ConstructionContext.html#geocodeDatabase() 14:56 < mcallan> but instead of passing out a Pollserver.DatabaseCC, you would pass out HarvestServiceCC 14:57 < conseo> ok and i would expose that then in the javascript config? 14:58 < mcallan> as part of your VOHarvester.ConstructionContext. See how Pollserver does it? And better yet, you would pass out IRCHarvesterCC, MailManHarvesterCC 14:58 < mcallan> then they would be largely self-documenting, in the Javadoc API 14:59 < mcallan> different services will have different config methods, that the admin can call 15:00 < mcallan> rather than all services having the same config methods/parameters 15:01 < mcallan> (but this is only a suggest, to keep in mind. to make things easier for u) 15:02 < conseo> sure good suggestion. thx! 15:02 < mcallan> in your case, your VOHarvesterCC would need methods like createIRCHarvester, and *that* would pass out the IRCHarvesterCC 15:11 < mcallan> conseo: do you want to vote for Thomas and I? http://u.zelea.com:8080/v/w/Votespace?p=G!p!m00&u=ThomasvonderElbe%20GmxDe 16:35 < mcallan> i guess c has better things to do on a Friday night :) 16:42 < conseo> nope, was just talking with my sis 16:47 < mcallan> excellent, then u can vote for us! 16:47 < mcallan> (he's drafting his position folks, i can see it in de logs) 16:56 < mcallan> ha, another vote for freedom! http://u.zelea.com:8080/v/w/Activity 16:57 < mcallan> (clearly i have nothing better to do on a friday ;) 16:59 < conseo> :-) how has your meeting been? 17:00 < mcallan> i survived the meeting (it even went well), but i didn't sleep. 17:00 < mcallan> so i know what i'm doing on my friday night 17:03 < mcallan> (maybe i'm overtired and don't know what i'm saying, but i *like* politics) 17:04 < mcallan> still, sleep has its attractions, too... 17:08 < mcallan> ... zzz 17:24 < conseo> me too 22:58 < conseo> mcallan: ping 23:00 < mcallan> conseo: pong 23:02 < conseo> mcallan: ha now the diff between me and thomas works 23:02 < mcallan> which diff? 23:02 < conseo> http://u.zelea.com:8080/v/w/D?b=4198&a=4203&aR=2830&bR=2824 23:04 < mcallan> hmmm, you propose changes. cool. but it didn't work before? 23:05 < conseo> not directly after i have copied and edited the pages 23:06 < conseo> i have tried for some time to show the footings or directly access the diff-bridge through the voting interface but it told me that a vote count or sth. was missing (i think) 23:06 < conseo> sry i have to document bugs in the future immediatly 23:08 < mcallan> u mean it said something like this? http://u.zelea.com:8080/v/w/Votespace?p=Sys!not-a-poll 23:11 < conseo> well i could vote and i could even trigger a recount of votes, but the difference-bridge still showed me an error when i tried to access "Diff vs. candidate" 23:12 < conseo> no, it was not this error 23:13 < mcallan> your vote probably hadn't been counted yet 23:14 < mcallan> mind u, sometimes that doesn't matter (depends whether the UI is asking for raw votes, or fully traced results) 23:15 < mcallan> anyway, it works now! 23:15 < conseo> yep 23:16 < conseo> mcallan: your promise has fulfilled now btw., i have exposed the CCs the way you suggested and now sometimes the IRC-thread seems to hang until it gets disconnected 23:17 < mcallan> oh oh 23:18 < mcallan> you can find out why (which thread is in wait state, or whatever) using a profiler. the jdk ships with a simple command line prof. that's ideal for this 23:18 < conseo> it is not reproducable ( the bot still runs in a retry ), but one time i checked i got a gap of 24 min in the log 23:18 < conseo> ok 23:20 < mcallan> i believe u can even connect to a hung vm, tho you may have to run it in a certain way to begin with (not sure, profiling has changed a lot, and i rarely need to use it) 23:20 < mcallan> if u can remove the threads, your life will be much easier 23:21 < mcallan> it's 2-3x more difficult to code bug free, when using threading - provided you are experienced concurrent programmer 23:21 < mcallan> otherwise, it's probably impossible 23:22 < mcallan> too many gotcha's 23:26 < mcallan> conseo: if all your services are based on polling, then you can replace the threads with a single loop 23:27 < conseo> ok 23:28 < mcallan> for() { ifItsTimeToRun(service) service.run() } // run() does a single poll and returns 23:31 < mcallan> conseo: or maybe better, see: http://download.oracle.com/javase/6/docs/api/java/util/concurrent/Executor.html 23:33 < mcallan> you would just have to ensure the executor runs with a single thread, not a pool of them. and ensure no other threads interact with the runnables. 23:34 < mcallan> grep thru votorola and textbender code, and you may find examples (but not sure they are single threaded) 23:35 < conseo> ok 23:36 < mcallan> that is how many UI libraries work, swing/awt included. they have a single event dispatch thread, and almost everything runs on that thread. 23:37 < conseo> yep qt as well 23:38 < conseo> i'll have a look tomorrow 23:38 < conseo> cu and happy drafting 23:38 < mcallan> ok, cu --- Log closed Sat Mar 26 00:00:23 2011