uPortal IRC Logs-2009-03-24

[01:05:44 EDT(-0400)] * lennard1 (n=sparhk@ip68-98-56-21.ph.ph.cox.net) has joined ##uportal
[08:29:55 EDT(-0400)] * JoeMoo (n=newbie@66-17-126-26-swiftelDSL.brookings.net) has joined ##uportal
[08:53:45 EDT(-0400)] * anastasiac (n=stasia@142.150.154.189) has joined ##uportal
[09:11:20 EDT(-0400)] * bszabo (n=bszabo@ip72-208-41-138.ph.ph.cox.net) has joined ##uportal
[09:22:52 EDT(-0400)] * SusanB (i=user@susan-x200.its.yale.edu) has joined ##uportal
[09:24:23 EDT(-0400)] * athena (n=athena@99.129.100.66) has joined ##uportal
[09:36:24 EDT(-0400)] * anastasiac (n=stasia@142.150.154.189) has left ##uportal
[09:36:51 EDT(-0400)] * anastasiac (n=team@142.150.154.189) has joined ##uportal
[09:57:02 EDT(-0400)] * EricDalquist (n=dalquist@bohemia.doit.wisc.edu) has joined ##uportal
[10:04:42 EDT(-0400)] * michelled (n=team@142.150.154.193) has joined ##uportal
[10:05:00 EDT(-0400)] * lennard1 (n=sparhk@ip68-98-56-21.ph.ph.cox.net) has left ##uportal
[10:21:39 EDT(-0400)] * lennard1 (n=sparhk@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[10:33:55 EDT(-0400)] * invisibill (i=80876350@gateway/web/ajax/mibbit.com/x-32ef3a49d62a366f) has joined ##uportal
[10:37:51 EDT(-0400)] * apetro (n=apetro@ip68-3-207-51.ph.ph.cox.net) has joined ##uportal
[11:01:44 EDT(-0400)] <dstn> EricDalquist, do you use the release plugin to do release for uportal?
[11:02:15 EDT(-0400)] <EricDalquist> no (sad)
[11:02:20 EDT(-0400)] <EricDalquist> I do for person directory
[11:02:21 EDT(-0400)] <EricDalquist> and pluto
[11:02:25 EDT(-0400)] <EricDalquist> and a few other projects
[11:02:40 EDT(-0400)] <EricDalquist> but I haven't spent the time getting the uPortal maven configs cleaned up enough so I can use it
[11:02:43 EDT(-0400)] <dstn> what version of subversion do you use?
[11:03:14 EDT(-0400)] <dstn> I've used it in the past and now all the sudden it isn't working and I'm seeing some bugs related to subversion 1.5+ ... wonderin if you'd ran into them
[11:03:17 EDT(-0400)] <EricDalquist> ah
[11:03:18 EDT(-0400)] <EricDalquist> yeah
[11:03:23 EDT(-0400)] <EricDalquist> when it fails during release:prepare?
[11:03:28 EDT(-0400)] <dstn> ya
[11:03:34 EDT(-0400)] <EricDalquist> so when that happens
[11:03:35 EDT(-0400)] <dstn> says the file already exists
[11:03:37 EDT(-0400)] <EricDalquist> run "svn update"
[11:03:42 EDT(-0400)] <EricDalquist> then "mvn release:prepare"
[11:03:50 EDT(-0400)] <EricDalquist> the release plugin has a file it tracks progress in
[11:03:55 EDT(-0400)] <EricDalquist> it will pick up where it left off
[11:04:21 EDT(-0400)] <dstn> alright, let me try that
[11:04:25 EDT(-0400)] <invisibill> Greetings uPortal devs: my colleague went to the jasig conference a few weeks back and learned of a statistics portlet in development. Is anyone here developing that? Is it available for use or beta testing?
[11:04:47 EDT(-0400)] <EricDalquist> I haven't heard of a statistics portlet
[11:04:50 EDT(-0400)] <dstn> worked, thanks
[11:04:58 EDT(-0400)] <dstn> crappy workaround (sad)
[11:05:03 EDT(-0400)] <EricDalquist> uPortal 3.1 comes with the ability to log raw portal event data to the database
[11:05:23 EDT(-0400)] <invisibill> I'll post the url in just a few
[11:05:25 EDT(-0400)] <EricDalquist> and UW-Madison will be contributing a tool in the next few weeks that can aggregate that raw data into summaries that are easier to report on
[11:05:29 EDT(-0400)] <EricDalquist> ok
[11:06:01 EDT(-0400)] <athena> that'll be fantastic eric
[11:06:07 EDT(-0400)] <EricDalquist> yeah
[11:06:09 EDT(-0400)] <athena> i think that could help pave the way for a stats portlet
[11:06:23 EDT(-0400)] <EricDalquist> I realized though that our current aggergator uses Oracle specific SQL
[11:06:36 EDT(-0400)] <athena> ah
[11:06:38 EDT(-0400)] <EricDalquist> but I don't think it would be too terribly difficult to make it more generic
[11:06:40 EDT(-0400)] * colinclark (n=colin@142.150.154.101) has joined ##uportal
[11:06:41 EDT(-0400)] <athena> yeah
[11:06:47 EDT(-0400)] <EricDalquist> we did that for performance reasons
[11:06:52 EDT(-0400)] <athena> was wondering if there was a way to make it more hibernate-y
[11:06:53 EDT(-0400)] <athena> gotcha
[11:06:58 EDT(-0400)] <EricDalquist> but we had like a 2 month backlog of data to deal with
[11:07:00 EDT(-0400)] <EricDalquist> athena: perhaps
[11:07:07 EDT(-0400)] <EricDalquist> the hard part is it is very very performance sensitve
[11:07:10 EDT(-0400)] <athena> yeah
[11:07:13 EDT(-0400)] <athena> that does make it hard
[11:07:21 EDT(-0400)] <athena> may have to have some db-specific stuff
[11:08:03 EDT(-0400)] <EricDalquist> though now that we are caught up I think we could probably use generic SQL
[11:08:49 EDT(-0400)] <EricDalquist> http://uportal.pastebin.com/d77765243
[11:08:51 EDT(-0400)] <EricDalquist> that is an example
[11:08:57 EDT(-0400)] <EricDalquist> we use the Oracle MERGE statement all over the place
[11:09:05 EDT(-0400)] <athena> ah
[11:09:05 EDT(-0400)] <EricDalquist> to reduce the number of DB round trips we need to dol
[11:09:31 EDT(-0400)] <EricDalquist> we currently generate about 1500 events/minute
[11:10:18 EDT(-0400)] <EricDalquist> and it takes about 6 seconds to process those 1500 events
[11:10:29 EDT(-0400)] <EricDalquist> a big help is our finest data interval is 5 minutes
[11:10:46 EDT(-0400)] <EricDalquist> when we were doing 1 minute intervals it was taking 30-40 seconds per 1500 events
[11:20:14 EDT(-0400)] <athena> yikes
[11:20:28 EDT(-0400)] <invisibill> thanks EricDalquist I just checked with my colleague and she said the info came from you so this must be what were referring too. Does this data get logged to the uportal db or do you need an external
[11:20:56 EDT(-0400)] * jessm (n=Jess@142.150.154.122) has joined ##uportal
[11:20:59 EDT(-0400)] <EricDalquist> either option works, the default configuration is the datasource named StatsDb is just an alias for the datasource named PortalDb
[11:21:09 EDT(-0400)] <EricDalquist> I'd recommend an external DB
[11:21:17 EDT(-0400)] <EricDalquist> just because the portal DB is primarily read from
[11:21:27 EDT(-0400)] <EricDalquist> where as the stats db is primarily written to
[11:21:35 EDT(-0400)] <invisibill> ok cool. are you going to contribute the tool to the jasig site.
[11:22:01 EDT(-0400)] <EricDalquist> it would end up in the jasig svn repository
[11:22:08 EDT(-0400)] <EricDalquist> and be an incubated jasig project
[11:22:23 EDT(-0400)] <EricDalquist> the stats stuff will be documented in the 3.1 manual towards the end of the week
[11:23:03 EDT(-0400)] <invisibill> thanks. I have another portal question if you have time. We want to use the Toro "My Notes" portlet. Is there a way to get it individually? Can I unbundle the jar from http://code.google.com/p/toro-portal/ to get it?
[11:23:24 EDT(-0400)] <EricDalquist> I have no idea. I've never used the toro portlets but someone else here may know
[11:23:57 EDT(-0400)] <invisibill> ok. thanks.
[11:25:29 EDT(-0400)] <athena> invisibill: it looks like that's actually one of the toro channels
[11:25:48 EDT(-0400)] <athena> the toro portlets are supported in up3 now, but the channels have not been upgrade to be compatible with up3
[11:28:57 EDT(-0400)] <invisibill> ok. so do we need to run toro as the portal to use them?
[11:29:49 EDT(-0400)] <athena> unfortunately i don't think you can run the toro channels
[11:29:59 EDT(-0400)] <athena> they're only supported through uPortal 2.6
[11:30:12 EDT(-0400)] <EricDalquist> why wouldn't they work? Are there special framework things that are needed to support them?
[11:30:23 EDT(-0400)] <athena> i really don't know, EricDalquist
[11:30:34 EDT(-0400)] <EricDalquist> ok (smile)
[11:30:43 EDT(-0400)] <athena> i know there are a significant number of hours estimated to make them compatible, although i'm not sure what all the details were
[11:30:50 EDT(-0400)] <EricDalquist> ah ok
[11:30:58 EDT(-0400)] <athena> and i wouldn't be surprised if there were some special framework pieces
[11:31:11 EDT(-0400)] <athena> i have to admit i don't have much enthusiasm for channels these days
[11:31:23 EDT(-0400)] <invisibill> np. This gives me enough info to report back up the PM team. thanks athena
[11:31:28 EDT(-0400)] <athena> yep
[11:31:40 EDT(-0400)] <EricDalquist> I'm with you athena, hopefully 3.2 can be almost channel free
[11:31:41 EDT(-0400)] <athena> did UCI contribute their notes portlet? i think they were demoing one at the conference?
[11:31:47 EDT(-0400)] <athena> that'd be nice
[11:32:03 EDT(-0400)] <EricDalquist> not sure, an email to Erik on uportal-user would probably find out
[11:32:12 EDT(-0400)] <athena> yeah
[11:32:20 EDT(-0400)] <athena> unfortunately i didnt' get a chance to see it
[11:32:24 EDT(-0400)] <athena> but i heard it was nice
[11:33:32 EDT(-0400)] * holdorph (n=holdorph@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[12:23:48 EDT(-0400)] * awills (n=awills@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[12:29:05 EDT(-0400)] <EricDalquist> so I'm trying to figure out how to get the concurrent task in cernunnos to have the ability to fail fast
[12:33:33 EDT(-0400)] <awills> yeah i saw you posted a ticket about that
[12:33:38 EDT(-0400)] <awills> looking...
[12:33:53 EDT(-0400)] <EricDalquist> just trying to wrap my head around concurreny issues
[12:34:17 EDT(-0400)] <EricDalquist> the problem is the concurrent task calls performSubtasks in a try/catch throwable
[12:34:19 EDT(-0400)] <EricDalquist> it logs the exception
[12:34:37 EDT(-0400)] <EricDalquist> but the nature of a thread pool is that even if it didn't the pool would handle that exception and just keep chuging
[12:35:04 EDT(-0400)] <EricDalquist> so how do I allow a concurrent task to signal the pool to shutdown and then have the main thread throw the exception ....
[12:35:44 EDT(-0400)] <awills> cool, that's basically where I thought you were going with that... I'm glad I'm not confused (wink)
[12:37:26 EDT(-0400)] <awills> Maybe there's something on ExecutorService... seems like this is a common requirement
[12:37:26 EDT(-0400)] <EricDalquist> I'm thinking that having the runable that is created for each concurrent task have a reference to a request object like ExecutorServiceManager.handleException(t)
[12:37:44 EDT(-0400)] <SusanB> build question... has anyone thought about deployment scenarios where both webapps and db changes are involved? EG redeploying a portlet and changing data - like maybe bookmarks portlet and seeded bookmarks data changing at the same time
[12:37:47 EDT(-0400)] <EricDalquist> well, the easy way to handle it would be in the loop code that adds tasks
[12:38:09 EDT(-0400)] <EricDalquist> the problem is since we have seperated thread pool task and concurrent task we have no idea what that loop code is doing
[12:39:04 EDT(-0400)] <EricDalquist> ExecutorServiceManager.handleException(t) could have a reference to the ExecutorService and call shutdown which would stop new tasks from being added then the ThreadPoolTask would be able to check ExecutorServiceManager.getException() or some such
[12:39:16 EDT(-0400)] <EricDalquist> SusanB: we handle it on a case by case basis
[12:39:34 EDT(-0400)] <EricDalquist> our usual code change process has us stage the changes on one server a day before rolling them out
[12:39:39 EDT(-0400)] <EricDalquist> but we can't really stage DB changes
[12:39:55 EDT(-0400)] <EricDalquist> so we just do them at the same time on the staging server and roll it out right away
[12:40:07 EDT(-0400)] <SusanB> so basically manual?
[12:40:55 EDT(-0400)] * Sememmon (n=Sememmon@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[12:41:13 EDT(-0400)] <SusanB> or maybe you mean automatic from staging server? as crn scripts? sql?
[12:42:00 EDT(-0400)] <EricDalquist> well it depends on the db changes
[12:42:12 EDT(-0400)] <EricDalquist> if it is a new .channel file, crn
[12:42:21 EDT(-0400)] <EricDalquist> if it is changes to a schema, manual SQL
[12:42:37 EDT(-0400)] <SusanB> ok - hibernate can include them with the code?
[12:43:04 EDT(-0400)] <EricDalquist> sure, if you have it setup correctly
[12:43:18 EDT(-0400)] <EricDalquist> you can configure it to update the schema it is using every time it starts
[12:43:22 EDT(-0400)] <athena> you can use the maven hibernate plugin to generate sql scripts to create tables - i'm not sure if you can generate scripts to alter a table?
[12:43:28 EDT(-0400)] <EricDalquist> yeah you can
[12:43:35 EDT(-0400)] <athena> that's good
[12:43:36 EDT(-0400)] <EricDalquist> well hibernate camn
[12:43:39 EDT(-0400)] <EricDalquist> not sure the plugin can
[12:43:44 EDT(-0400)] <EricDalquist> but remember not everything can be done via an alter
[12:43:45 EDT(-0400)] <athena> i don't think they actually want to let hibernate itself update the tables on startup
[12:44:06 EDT(-0400)] <EricDalquist> like you can't add a NOT NULL column to a table with existing data in hibernate
[12:44:10 EDT(-0400)] <SusanB> Right. And not everything uses hibernate
[12:44:25 EDT(-0400)] <EricDalquist> since that is a 3 step process, alter to add, populate the new column, alter to not null
[12:44:33 EDT(-0400)] <SusanB> and would guess hibernate can't change data
[12:44:34 EDT(-0400)] <EricDalquist> really, db changes are case by case
[12:44:38 EDT(-0400)] <EricDalquist> nope
[12:44:39 EDT(-0400)] <EricDalquist> it won't
[12:44:49 EDT(-0400)] <athena> right
[12:44:50 EDT(-0400)] <EricDalquist> there are some db changes that would require a full portal outage
[12:44:57 EDT(-0400)] <EricDalquist> what if you rename a column for some reason
[12:45:08 EDT(-0400)] <EricDalquist> you can't do that and expect the currently running servers not to fail
[12:45:34 EDT(-0400)] <SusanB> ok - just wanted to know if others had solved this one more generally
[12:45:51 EDT(-0400)] <athena> i don't really think you can solve this in an automated fashion
[12:45:56 EDT(-0400)] <SusanB> athena will be helping us figure it all out soon (smile)
[12:46:06 EDT(-0400)] <athena> looking forward to it (smile)
[12:46:38 EDT(-0400)] <EricDalquist> yeah I don't think there is a real general solution here
[12:46:53 EDT(-0400)] <EricDalquist> short of doing a full database export/drop/create/import every time
[12:47:02 EDT(-0400)] <EricDalquist> and that only works if all of your data can be exported and imported
[12:51:41 EDT(-0400)] <awills> Eric how about something roughly like this: http://uportal.pastebin.com/d72b7137c
[12:52:34 EDT(-0400)] <EricDalquist> problem is that new code in ThreadPoolTask will not get run until all subtasks of the pool have completed
[12:52:57 EDT(-0400)] <EricDalquist> if you're importing 1000 files and file 12 has an exception it won't get handled until all 1000 files have been imported
[12:53:20 EDT(-0400)] <EricDalquist> ah should have read the whole thing (smile)
[12:53:27 EDT(-0400)] <awills> ah but when one thread in ConcurrentTask calles shutdown(), the execserv will stop accepting new runnables
[12:53:33 EDT(-0400)] <EricDalquist> yeah, that would be good
[12:53:43 EDT(-0400)] <EricDalquist> it will still process queued tasks
[12:53:52 EDT(-0400)] <EricDalquist> but that hopefully isn't too many
[12:53:57 EDT(-0400)] <awills> you could instead opt for shutdownNow()
[12:54:07 EDT(-0400)] <awills> but that might be even more disruptive
[12:54:49 EDT(-0400)] <awills> use shutdown() in concert with a sane max queue size maybe?
[12:55:00 EDT(-0400)] <EricDalquist> yeah
[13:18:35 EDT(-0400)] <lennard1> For similar situations I typically request the shutdown and will then force a shutdown after some configurable interval.
[13:31:41 EDT(-0400)] <awills> that might be handy
[13:32:01 EDT(-0400)] <EricDalquist> yeah, I'm not sure how concerned we are with a task hanging
[13:32:30 EDT(-0400)] <awills> i'm not sure either... haven't run into it
[13:32:45 EDT(-0400)] <EricDalquist> I'm testing the fail-fast stuff right now
[13:33:10 EDT(-0400)] <awills> awesome, i added examples to the portlet/servlet grammar items
[13:33:57 EDT(-0400)] <EricDalquist> my only thought on it ... is it ok that the only place to find the original exception that caused the fail-fast is in the log output?
[13:35:09 EDT(-0400)] <awills> ok for now, i should think... passing it 'up' somehow and wrapping it as the cause would be another option
[13:35:57 EDT(-0400)] <awills> if we don't do that, the one thrown by ThreadPool should probably say "look in the logs" or some such
[13:36:53 EDT(-0400)] <EricDalquist> yeah, that's what I have it saying right now
[13:37:33 EDT(-0400)] <EricDalquist> fyi, Attributes.EXCEPTION is not passed into things like groovy correctly
[13:37:37 EDT(-0400)] <EricDalquist> I have it fixed locally
[13:37:41 EDT(-0400)] <awills> ah
[13:38:58 EDT(-0400)] <EricDalquist> can anyone not at Unicon or VPNd there get to: http://support.unicon.net/node/58
[13:40:28 EDT(-0400)] <athena> i can't eric
[13:40:47 EDT(-0400)] <athena> try: http://www.unicon.net/node/58
[13:40:51 EDT(-0400)] <EricDalquist> yeah, that works
[13:41:02 EDT(-0400)] <EricDalquist> problem is there are support.unicon.net links all over the wiki
[13:41:14 EDT(-0400)] <athena> i'll ask someone on our side if that domain is supposed to be active
[13:41:16 EDT(-0400)] <EricDalquist> so I'm guessing it worked at one point
[13:41:21 EDT(-0400)] <EricDalquist> Andrew said he can get to tit
[13:41:23 EDT(-0400)] <EricDalquist> it*
[13:41:44 EDT(-0400)] <EricDalquist> but I'm guessing it could be that the domain exists if you are inside the Unicon network
[13:41:55 EDT(-0400)] <athena> maybe
[13:41:58 EDT(-0400)] <athena> it might just be old
[13:43:17 EDT(-0400)] <EricDalquist> looks like about 40 pages: http://www.google.com/search?q=site%3Awww.ja-sig.org+%22support.unicon.net%22
[13:43:51 EDT(-0400)] <EricDalquist> awills: is there a <throw> task?
[13:46:43 EDT(-0400)] <awills> not a <throw> task, but if adding one looks like it would provide value over <groovy><script>throw ...</script></groovy>, I'm game
[13:47:06 EDT(-0400)] <EricDalquist> yeah, a little easier to decipher I think
[13:47:19 EDT(-0400)] <EricDalquist> with the groovy approach you get pointed to the groovy script as the root cause (tongue)
[13:47:26 EDT(-0400)] <EricDalquist> er top cause
[13:47:28 EDT(-0400)] <awills> yeah it certainly would be simpler to type :?
[13:47:40 EDT(-0400)] <EricDalquist> ok, I'll add that
[13:47:51 EDT(-0400)] <EricDalquist> I should get all this stuff committed late afternoon today
[13:48:05 EDT(-0400)] <awills> thanks, that's awesome
[13:48:39 EDT(-0400)] <EricDalquist> for the thread pool task queue
[13:48:47 EDT(-0400)] <EricDalquist> I'm thinking of setting it up as a ratio
[13:49:04 EDT(-0400)] <EricDalquist> so threads="4" and queue-ratio="5" means a task queue of 20
[13:50:56 EDT(-0400)] <EricDalquist> does that sound ok?
[13:54:17 EDT(-0400)] <awills> yep, i'm sure that's fine
[13:55:29 EDT(-0400)] * jessm (n=Jess@142.150.154.122) has joined ##uportal
[13:58:02 EDT(-0400)] * Sememmon_ (n=Sememmon@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[14:17:44 EDT(-0400)] * holdorph_ (n=holdorph@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[14:18:27 EDT(-0400)] * awills (n=awills@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[14:20:31 EDT(-0400)] * lennard1 (n=sparhk@wsip-98-174-242-39.ph.ph.cox.net) has left ##uportal
[14:20:52 EDT(-0400)] * lennard1 (n=sparhk@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[14:22:40 EDT(-0400)] * holdorph_ pokes holdorph
[14:24:36 EDT(-0400)] <athena> are you awake, holdorph ? (smile)
[14:25:14 EDT(-0400)] <holdorph_> i am, i'm just trying to get rid of the imposter
[14:25:21 EDT(-0400)] * holdorph_ pokes holdorph again
[14:26:45 EDT(-0400)] <athena> nickserv is good for that sort of thing
[14:27:00 EDT(-0400)] <EricDalquist> only if holdorph_ is a registered nick
[14:27:18 EDT(-0400)] <athena> well, if holdorph is, that should be good enough
[14:27:24 EDT(-0400)] <holdorph_> it's just because unicon's internet died, so my previous session didn't exit normally
[14:27:40 EDT(-0400)] * ChanServ sets mode +o EricDalquist
[14:27:52 EDT(-0400)] <EricDalquist> ah yeah
[14:28:01 EDT(-0400)] <EricDalquist> you should be able to ghost your nick via nickserv
[14:28:02 EDT(-0400)] <athena> if it's registered, you can do /ns recover holdorph password
[14:28:19 EDT(-0400)] * holdorph was kicked from ##uportal by EricDalquist (EricDalquist)
[14:28:23 EDT(-0400)] <EricDalquist> or I can do that (tongue)
[14:28:27 EDT(-0400)] <athena> wow, that really does make a noise (smile)
[14:28:28 EDT(-0400)] <athena> lol
[14:28:43 EDT(-0400)] <EricDalquist> though you still can't get change your nick to holdorph until the ghost gets diconnected
[14:28:58 EDT(-0400)] * ChanServ sets mode -o EricDalquist
[14:32:35 EDT(-0400)] <EricDalquist> awills: does it make sense for ErrorHandlingTask to always log the error at WARN level?
[14:32:51 EDT(-0400)] <EricDalquist> seems like that should be the responsibility of tasks within the <catch> block
[14:36:06 EDT(-0400)] <awills> i think you're right – not at WARN. It's probably good INFO to know that ErrorHandling successfully caught and processed something
[14:36:26 EDT(-0400)] <EricDalquist> yup
[15:41:04 EDT(-0400)] <dstn> anyone know if you declare a dependency twice in a pom it will include it twice?
[15:46:02 EDT(-0400)] <athena> i don't think so
[15:46:11 EDT(-0400)] <athena> i think typically the last declaration overrides the first
[15:46:31 EDT(-0400)] <athena> recently i accidentally had a file where the dependecy was declared once as compile, and once as test
[15:46:38 EDT(-0400)] <athena> wasn't available for compile
[16:04:07 EDT(-0400)] * Sememmon (n=Sememmon@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[16:09:00 EDT(-0400)] <dstn> ok, thanks
[16:14:03 EDT(-0400)] * colinclark (n=colin@142.150.154.101) has joined ##uportal
[16:29:17 EDT(-0400)] * invisibill (i=80876350@gateway/web/ajax/mibbit.com/x-8e10b5b79435833b) has joined ##uportal
[16:32:28 EDT(-0400)] <invisibill> Greetings uPortal devs: does anyone here use the Gateway SSO portlet or know how I can build it into our 3.0.2 uportal install?
[16:35:26 EDT(-0400)] <athena> invisibill: there are some notes on deploying the toro portlets in uportal 3.x here: http://www.unicon.net/node/1031
[16:37:09 EDT(-0400)] <invisibill> ok thanks athena I'll have a go at this.
[16:41:28 EDT(-0400)] <athena> yep
[16:41:41 EDT(-0400)] <athena> i think there are some notes specifically on the SSO portlet on the google code site
[16:49:44 EDT(-0400)] <EricDalquist> awills: all my changes I wanted to make for 1.1.0 are there
[16:50:01 EDT(-0400)] <awills> nice... was just reading up
[16:50:57 EDT(-0400)] <EricDalquist> http://code.google.com/p/cernunnos/issues/detail?id=87
[16:51:11 EDT(-0400)] <EricDalquist> not sure if there is a way to get AbstractContainerTask to report what file it is currently working in
[16:52:17 EDT(-0400)] <awills> i got an awesome new graphic from GaryT: http://cernunnos.googlecode.com/svn/etc/images/lego-typing.png
[16:52:33 EDT(-0400)] <EricDalquist> neat
[16:53:17 EDT(-0400)] <awills> we can include source file using Attributes.ORIGIN, which is (99.99%) guarenteed to be there
[16:53:42 EDT(-0400)] <EricDalquist> but there is no request at that point
[16:53:52 EDT(-0400)] <awills> ah, wait then
[16:54:06 EDT(-0400)] <EricDalquist> this is in: protected List<Task> loadSubtasks(EntityConfig config, Reagent subtasksPhrase, boolean warnIfMissing)
[16:55:21 EDT(-0400)] <athena> oooh awills, that's pretty (smile)
[16:55:23 EDT(-0400)] <awills> this is the 2nd time something like this has come up... i should add a getOrigin() method to EntityConfig
[16:55:32 EDT(-0400)] <awills> thanks athena (smile)
[16:55:40 EDT(-0400)] <EricDalquist> that would be handy
[16:55:42 EDT(-0400)] <athena> he makes everything look so much cooler
[16:55:54 EDT(-0400)] <EricDalquist> I ran into it trying to track down which IfTask was empty
[16:56:02 EDT(-0400)] <EricDalquist> not realizing that IfTasks back WhenTasks
[16:56:06 EDT(-0400)] <awills> yeah, i shudder to think what it would look like if I did it in paint :?
[16:56:16 EDT(-0400)] <EricDalquist> and so it wasn't even an <if> I should have been looking for
[16:56:24 EDT(-0400)] <awills> ah gotcha eric
[16:56:31 EDT(-0400)] <awills> that would be valuable feedback
[16:56:45 EDT(-0400)] <EricDalquist> I added source and entity name which was enough
[16:56:51 EDT(-0400)] <EricDalquist> but knowing the file too would be great
[16:58:35 EDT(-0400)] <awills> can you check in your fix for AttributesEXCEPTION? looks like that one was left off the Bindings thingee
[16:59:04 EDT(-0400)] <EricDalquist> I think I did check it in. I snuck it in with the ThrowTask
[16:59:26 EDT(-0400)] <EricDalquist> yup: http://code.google.com/p/cernunnos/source/detail?r=484
[17:02:56 EDT(-0400)] * anastasiac (n=team@142.150.154.189) has left ##uportal
[17:08:17 EDT(-0400)] <awills> that's great, checking that off my whiteboard list...
[17:14:48 EDT(-0400)] * apetro (n=apetro@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[17:17:22 EDT(-0400)] * EricDalquist (n=dalquist@bohemia.doit.wisc.edu) has joined ##uportal
[17:19:59 EDT(-0400)] <EricDalquist> ok. I'm heading out but will likely be on later tonight working on the manual (tongue)
[18:11:56 EDT(-0400)] * EricDalquist (n=EricDalq@adsl-76-208-69-153.dsl.mdsnwi.sbcglobal.net) has joined ##uportal
[18:42:52 EDT(-0400)] * colinclark (n=colin@142.150.154.101) has joined ##uportal
[19:16:39 EDT(-0400)] * EricDalquist (n=EricDalq@adsl-76-208-69-153.dsl.mdsnwi.sbcglobal.net) has joined ##uportal
[20:01:55 EDT(-0400)] * lennard1 (n=sparhk@wsip-98-174-242-39.ph.ph.cox.net) has left ##uportal
[20:04:12 EDT(-0400)] * EricDalquist (n=EricDalq@adsl-76-208-69-153.dsl.mdsnwi.sbcglobal.net) has joined ##uportal
[20:19:51 EDT(-0400)] <awills> Are you there EricDalquist?
[20:19:59 EDT(-0400)] <EricDalquist> yup
[20:21:06 EDT(-0400)] <awills> great... please tell me this test case tests something useful: http://uportal.pastebin.com/d1f0c66f5 (smile)
[20:21:28 EDT(-0400)] <awills> i followed your example(s), but some of it's a little foreign
[20:21:48 EDT(-0400)] <EricDalquist> yeah, looks like it should
[20:22:05 EDT(-0400)] <awills> great, certainly i hoped so
[20:22:14 EDT(-0400)] <awills> it's passing btw... always important
[20:22:23 EDT(-0400)] <EricDalquist> hrm
[20:22:26 EDT(-0400)] <EricDalquist> though
[20:22:38 EDT(-0400)] <EricDalquist> ah I see MockFragmentDefinition is a local class
[20:22:45 EDT(-0400)] <EricDalquist> that extends the annotated entity
[20:23:10 EDT(-0400)] <awills> yeppers, which (cleverly) takes advantage of a protected constructor on FragmentDefinition
[20:23:34 EDT(-0400)] <awills> i tried creating instances of MockFragmentDefinition but JPA complained :?
[20:24:09 EDT(-0400)] <EricDalquist> yeah
[20:24:15 EDT(-0400)] <awills> seemed like it wanted me to declare MockFragmentDefinition in the hbm.config, if i wanted to go that route
[20:24:17 EDT(-0400)] <EricDalquist> because you'd need to add all of the JPA annotations
[20:24:22 EDT(-0400)] <EricDalquist> yup
[20:24:30 EDT(-0400)] <awills> thia is simpler
[20:27:28 EDT(-0400)] <EricDalquist> yay for crazy command-line-fu:
[20:27:28 EDT(-0400)] <EricDalquist> svnmerge avail --log | grep "r[0-9]* | [ ]* |." | sed 's/r([0-9]) | ([ ]) |./\2 http:\/\/developer.jasig.org\/source\/changelog\/jasigsvn?cs=\1/' | sort
[20:27:50 EDT(-0400)] <awills> lol
[20:28:14 EDT(-0400)] <EricDalquist> that gets me a nice list of all the available changes for a branch, sorted by owner with links to fisheye for each change set
[20:28:27 EDT(-0400)] <awills> that bears a striking resemblance to what my 5 y.o produces at the keyboard :?
[20:28:37 EDT(-0400)] <EricDalquist> lol
[20:28:41 EDT(-0400)] <EricDalquist> sed will do that
[20:40:25 EDT(-0400)] <athena> nice (smile)
[20:40:38 EDT(-0400)] <athena> i had to enlist someone's help to write me a script to find files w/ inconsistent newlines
[20:40:43 EDT(-0400)] <athena> need to fix them in the trunk
[20:40:57 EDT(-0400)] <athena> and then we really need to talk about setting some svn props so that i don't have to keep doing it (tongue)
[20:42:28 EDT(-0400)] * Sememmon (n=Sememmon@ip70-190-32-223.ph.ph.cox.net) has joined ##uportal
[21:01:26 EDT(-0400)] <EricDalquist> yeah
[21:01:31 EDT(-0400)] <EricDalquist> so you already posted a svn config right?
[21:03:17 EDT(-0400)] <athena> yeah
[21:03:23 EDT(-0400)] <athena> man that email scared me for a second
[21:03:26 EDT(-0400)] <EricDalquist> hah
[21:03:28 EDT(-0400)] <EricDalquist> sorry
[21:03:31 EDT(-0400)] <athena> misread 3-0-patches as 3-1-patches (smile)
[21:03:35 EDT(-0400)] * athena is clearly tired
[21:03:36 EDT(-0400)] <athena> lol
[21:03:38 EDT(-0400)] <EricDalquist> (smile)
[21:03:47 EDT(-0400)] <EricDalquist> that probably isn't the easiest format to work with
[21:04:01 EDT(-0400)] <EricDalquist> so if you have sugestions for future such emails let me know
[21:04:07 EDT(-0400)] <athena> i think most of my changes aren't portable
[21:04:16 EDT(-0400)] <athena> but i'll look and see if any are
[21:04:17 EDT(-0400)] <EricDalquist> oh and don't worry ... I have a BIG list of revs I have to go through myself (tongue)
[21:04:20 EDT(-0400)] <EricDalquist> thanks
[21:04:38 EDT(-0400)] <EricDalquist> I just want to make sure we aren't forgetting about 3.0 maintenance
[21:04:48 EDT(-0400)] <athena> no i'm glad you printed out the list (smile)
[21:05:32 EDT(-0400)] <EricDalquist> well I saved my crazy grep/sed line so I can reuse it in the future
[21:05:45 EDT(-0400)] <EricDalquist> I figured fisheye links were the easiest way for people to check on revs
[21:06:40 EDT(-0400)] <athena> no that's totally reasonable (smile)
[21:10:33 EDT(-0400)] <EricDalquist> I suppose we could merge the registration portlet back into 3.0.4
[21:10:41 EDT(-0400)] <EricDalquist> that shouldn't break things for existing people
[21:14:21 EDT(-0400)] <awills> you could, and i won't try to stop you if that's what you want to do, but i don't think it's expected, especially with 3.1.0 released
[21:15:11 EDT(-0400)] <EricDalquist> (smile)
[21:16:30 EDT(-0400)] <awills> heh. i guess i would expect dev on the trunk and 3.1.x line... with bug fixes and security patches and such on 3.0.x
[21:16:58 EDT(-0400)] <EricDalquist> true
[21:17:10 EDT(-0400)] <EricDalquist> we have added features in patches branches but only if they don't break things
[21:17:30 EDT(-0400)] <EricDalquist> but this may be too big of a thing to bother
[21:18:18 EDT(-0400)] <awills> just got the email... i'll certainly review the list
[21:18:27 EDT(-0400)] <EricDalquist> great, thanks
[22:19:17 EDT(-0400)] * apetro (n=apetro@ip68-3-207-51.ph.ph.cox.net) has joined ##uportal
[22:21:29 EDT(-0400)] * athena is attempting to untangle channel browser javascript
[22:21:40 EDT(-0400)] <EricDalquist> fun
[22:23:21 EDT(-0400)] <athena> it did makes sense the way i did it before
[22:23:37 EDT(-0400)] <athena> but we're re-using it in the portlet admin portlet
[22:24:23 EDT(-0400)] <athena> and gary's come up with some newer mockups that require the code to be more disconnected from the UI
[22:25:21 EDT(-0400)] <athena> hoping it'll be an improvement on the whole
[22:25:44 EDT(-0400)] <EricDalquist> I'm sure it will
[22:30:29 EDT(-0400)] <athena> just taking a while - slowly pulling all the pieces apart