uPortal IRC Logs-2012-01-30
[11:36:26 CST(-0600)] <EricDalquist> ok … event aggregation config import/export is done!
[11:36:31 CST(-0600)] <athena> yay!!
[11:36:38 CST(-0600)] <athena> oh by the way, i'm getting some psql errors :/
[11:36:44 CST(-0600)] <EricDalquist> yay!
[11:36:50 CST(-0600)] <EricDalquist> do you have them handy to share?
[11:36:58 CST(-0600)] <EricDalquist> I'm going to exclude minute level aggregates in the default config
[11:37:02 CST(-0600)] <athena> probably have to re-run - i'll do that now
[11:37:02 CST(-0600)] <EricDalquist> reduce the data a bit
[11:37:06 CST(-0600)] <EricDalquist> thanks
[11:37:07 CST(-0600)] <athena> was getting duplicate table errors, i think
[11:37:12 CST(-0600)] <EricDalquist> huh
[11:37:15 CST(-0600)] <athena> yeah
[11:37:26 CST(-0600)] <EricDalquist> I'll blame the user
[11:37:29 CST(-0600)] <athena> lol
[11:37:44 CST(-0600)] <athena> i squinted wrong while running initdb?
[11:38:02 CST(-0600)] <EricDalquist> yup
[11:38:12 CST(-0600)] <athena> oh well that's reasonable then!
[11:46:56 CST(-0600)] <athena> https://gist.github.com/1705636
[11:51:47 CST(-0600)] <athena> EricDalquist: psql error ^
[11:51:52 CST(-0600)] <EricDalquist> k
[11:52:00 CST(-0600)] <EricDalquist> elsa will help me debug it
[11:52:53 CST(-0600)] <athena> lol
[11:52:57 CST(-0600)] <athena> i'm sure
[12:07:03 CST(-0600)] <EricDalquist> athena could you run "ant db -Dscriptfile=up4_legacy.ddl"
[12:07:09 CST(-0600)] <EricDalquist> and gist the file
[12:07:46 CST(-0600)] <athena> sure
[12:11:40 CST(-0600)] <athena> err . . . i don't think it was able to create the file?
[12:12:03 CST(-0600)] <EricDalquist> huh … oh I wonderif it still does the DB io when creating the file ...
[12:12:04 CST(-0600)] <EricDalquist> :/
[12:23:02 CST(-0600)] <EricDalquist> ok athena I'll have a patch so you can generate the DDL in just a minute
[12:23:23 CST(-0600)] <athena> cool, thanks
[12:23:36 CST(-0600)] <EricDalquist> was a bug in the task that still did the dbio even when creating a script
[12:28:56 CST(-0600)] <athena> ah
[12:31:07 CST(-0600)] <athena> ok, trying the command again
[12:31:42 CST(-0600)] <EricDalquist> I'll have the patch pushed in just a minute
[12:33:03 CST(-0600)] <EricDalquist> https://github.com/Jasig/uPortal/commit/c746f357721a4340786e8995cb13f71fdee31f5b
[12:33:08 CST(-0600)] <EricDalquist> there is the fix for script gen
[12:33:11 CST(-0600)] <EricDalquist> time for lunch
[12:33:19 CST(-0600)] <EricDalquist> hopefull we can fix this when I get back
[12:37:20 CST(-0600)] <athena>
[12:43:31 CST(-0600)] <athena> https://gist.github.com/1705887
[12:44:53 CST(-0600)] <EricDalquist> I see nothing weird about that script
[12:49:26 CST(-0600)] <EricDalquist> can you re-run the "ant db" and update the first gist?
[12:49:33 CST(-0600)] <EricDalquist> now my line# sare off
[13:29:26 CST(-0600)] <EricDalquist> athena: I'm very confused by your error
[13:30:17 CST(-0600)] <athena> me too
[13:30:29 CST(-0600)] <EricDalquist> its like the drop up_user statement isn't workinbg
[13:30:32 CST(-0600)] <athena> yeah
[13:30:39 CST(-0600)] <athena> but not producing any errors
[13:30:49 CST(-0600)] <EricDalquist> hrm
[13:30:52 CST(-0600)] <athena> any chance this is some commit-related thing?
[13:30:55 CST(-0600)] <EricDalquist> well we swallow drop errors
[13:31:04 CST(-0600)] <EricDalquist> since drops fail if the tablesdont exist
[13:31:18 CST(-0600)] <athena> makes sense
[13:32:06 CST(-0600)] <EricDalquist> can you grab the latest master
[13:32:12 CST(-0600)] <EricDalquist> and try "ant db" again?
[13:32:32 CST(-0600)] <EricDalquist> I moved the drop error logging earlier
[13:34:47 CST(-0600)] <athena> sure
[13:35:12 CST(-0600)] <EricDalquist> thanks
[13:35:16 CST(-0600)] <EricDalquist> I'm at home today
[13:35:24 CST(-0600)] <EricDalquist> so I don't have easy access to my postgres test db
[13:35:32 CST(-0600)] <athena> yeah, i figured
[13:35:36 CST(-0600)] <athena> and no problem for me to run it
[13:36:19 CST(-0600)] <athena> er, am i running initdb now?
[13:37:23 CST(-0600)] <EricDalquist> just "ant db" should be fine to test it
[13:41:59 CST(-0600)] <athena> [java] WARN 'drop table if exists UP_GROUP_MEMBERSHIP cascade' failed to execute due to org.springframework.jdbc.BadSqlGrammarException: StatementCallback; bad SQL grammar [drop table if exists UP_GROUP_MEMBERSHIP cascade]; nested exception is org.postgresql.util.PSQLException: ERROR: syntax error at or near "exists"
[13:42:03 CST(-0600)] <athena> bunch of those
[13:42:09 CST(-0600)] <athena> so does look like in fact it's not dropping the tables
[13:43:14 CST(-0600)] <athena> though i don't see that the problem is
[13:43:18 CST(-0600)] <EricDalquist> weird
[13:43:34 CST(-0600)] <EricDalquist> I wonder if the hibernate update changed the drop syntax
[13:43:48 CST(-0600)] <EricDalquist> what dialect is it using?
[13:44:55 CST(-0600)] <athena> looks like maybe if exists only was added to psql in 8.2
[13:45:09 CST(-0600)] <athena> i can check and see what this db is
[13:45:22 CST(-0600)] <athena> we're using an 8.3 jar though
[13:45:28 CST(-0600)] <athena> so hopefully the database is that recent
[13:55:59 CST(-0600)] <athena> ah-hah
[13:56:00 CST(-0600)] <athena> 8.1
[13:56:09 CST(-0600)] <athena> i guess i can try looking for a jar that matches
[13:56:10 CST(-0600)] <EricDalquist> interesting
[13:56:12 CST(-0600)] <EricDalquist> yeah
[13:56:22 CST(-0600)] <EricDalquist> hibernate must be resolving based only on the driver version
[13:56:25 CST(-0600)] <EricDalquist> and not the db version
[13:56:39 CST(-0600)] <athena> yeah
[14:00:50 CST(-0600)] <athena> i would have thought it used the db version, since it fails to resolve if it can't connect
[14:00:58 CST(-0600)] <athena> maybe it's different for different databases, dunno
[14:01:19 CST(-0600)] <EricDalquist> well the db Metadata object comes from a Connection object
[14:01:25 CST(-0600)] <EricDalquist> so you have to have a DB to get that far
[14:01:42 CST(-0600)] <athena> yeah, guess so
[14:02:18 CST(-0600)] <EricDalquist> what does "ant dbtest" show you?
[14:02:37 CST(-0600)] <EricDalquist> that should dump out the db name/version and driver name/version
[14:02:39 CST(-0600)] <athena> well, i updated to the right driver and am re-running
[14:02:46 CST(-0600)] <EricDalquist> ah
[14:02:47 CST(-0600)] <EricDalquist> ok
[14:02:50 CST(-0600)] <athena> since we really shouldn't be using the wrong driver
[14:02:53 CST(-0600)] <EricDalquist> right
[14:03:55 CST(-0600)] <athena> ergh. that didn't do it
[14:03:58 CST(-0600)] <athena> running dbtest now
[14:04:25 CST(-0600)] <athena> are those drop commands being generated by hibernate?
[14:04:41 CST(-0600)] <EricDalquist> looks like it might be a hibernate bug
[14:04:50 CST(-0600)] <EricDalquist> there is only one postgres dialect
[14:04:54 CST(-0600)] <athena> db name / drive is being reported correctly
[14:04:58 CST(-0600)] <athena> eep.
[14:05:00 CST(-0600)] <EricDalquist> public boolean supportsIfExistsBeforeTableName() {
[14:05:01 CST(-0600)] <EricDalquist> return true;
[14:05:01 CST(-0600)] <EricDalquist> }
[14:05:10 CST(-0600)] <athena> well that'd be a problem then.
[14:05:11 CST(-0600)] <EricDalquist> yup, that would be a bug
[14:05:12 CST(-0600)] <EricDalquist> yeah
[14:05:26 CST(-0600)] <EricDalquist> I can provide them a patch tomorrow
[14:05:29 CST(-0600)] <athena> ok
[14:05:41 CST(-0600)] <athena> how quickly are they able to patch / generate releases?
[14:05:49 CST(-0600)] <EricDalquist> fairly
[14:05:56 CST(-0600)] <EricDalquist> but we can work-around it locally as well
[14:06:18 CST(-0600)] <athena> is there a way to override that behavior?
[14:06:21 CST(-0600)] <EricDalquist> yes
[14:06:30 CST(-0600)] <EricDalquist> we already have a custom resolver for mysql5
[14:07:16 CST(-0600)] <athena> ah, gotcha
[14:07:24 CST(-0600)] <EricDalquist> so only PG 8.2 and later support it?
[14:07:28 CST(-0600)] <athena> apparently so
[14:07:38 CST(-0600)] <EricDalquist> ok
[14:07:46 CST(-0600)] <EricDalquist> give me ~ 5 minutes and I should have a fi
[14:07:47 CST(-0600)] <EricDalquist> fix
[14:07:52 CST(-0600)] <athena> that is fast
[14:07:57 CST(-0600)] <athena> EricDalquist wins!
[14:07:58 CST(-0600)] <EricDalquist> remind me tomorrow to file a bug with hibernate
[14:07:58 CST(-0600)] <athena> lol
[14:08:10 CST(-0600)] <EricDalquist> well … I did all the hard work of figuring out how to do this a while ago
[14:08:49 CST(-0600)] <athena> yeah
[14:09:25 CST(-0600)] <EricDalquist> can you gist your dbtest output
[14:09:49 CST(-0600)] <EricDalquist> also … since I've been helping write the naturalId lookup stuff for hibernate I've gotten to know the devs pretty well
[14:09:57 CST(-0600)] <EricDalquist> so we can get a real fix into their code for their next release
[14:10:23 CST(-0600)] <athena> nice
[14:11:32 CST(-0600)] <athena> https://gist.github.com/1706390
[14:15:17 CST(-0600)] <EricDalquist> just renamed our mysql5 specific resolver to a generic one
[14:15:26 CST(-0600)] <EricDalquist> and it now handles mysql5 and postgres 8.1 and earlier
[14:15:31 CST(-0600)] <EricDalquist> https://github.com/Jasig/uPortal/commit/924bda1c3f28a21ef7663d2ad402f92e4c8fc341
[14:15:34 CST(-0600)] <EricDalquist> its pretty simple though
[14:15:45 CST(-0600)] <EricDalquist> just have a hibernate.properties file on the classpath
[14:15:52 CST(-0600)] <EricDalquist> which specifies a custom dialect resolver
[14:15:59 CST(-0600)] <EricDalquist> and hibernate consults it before its internal resolver
[14:16:50 CST(-0600)] <EricDalquist> so your 8.3 driver should work with this too
[14:16:56 CST(-0600)] <athena> neat!
[14:17:09 CST(-0600)] <EricDalquist> as long as it reports the db version info correctly
[14:17:58 CST(-0600)] <athena> yeah
[14:18:52 CST(-0600)] <athena> ok
[14:19:19 CST(-0600)] <athena> so i need to create hibernate.propertes and add some things to it?
[14:19:30 CST(-0600)] <EricDalquist> no, that is all in the commit
[14:19:35 CST(-0600)] <athena> oh!
[14:19:35 CST(-0600)] <EricDalquist> just grab the latest commit from upstream
[14:19:40 CST(-0600)] <athena> magic.
[14:19:42 CST(-0600)] <EricDalquist> yup
[14:20:02 CST(-0600)] <athena> i like magic
[14:20:05 CST(-0600)] <athena> tastes like skittles
[14:21:08 CST(-0600)] <EricDalquist> now if you could just tell me when the ant concat command isn't working for me
[14:22:39 CST(-0600)] <athena> yeah i don't have an answer for that one
[14:28:27 CST(-0600)] <athena> yay! db task worked
[14:29:07 CST(-0600)] <EricDalquist> yay!
[14:29:28 CST(-0600)] <athena> thanks
[14:32:15 CST(-0600)] <EricDalquist> yup
[14:32:28 CST(-0600)] <EricDalquist> I just replied to bruce again … hopefully I'm not being too harsh :{
[14:33:02 CST(-0600)] <EricDalquist> I hate that line that a "security minded school may look for a solution now" well the solution if you ACTUALLY care isn't to try and write your own security protocal
[14:33:16 CST(-0600)] <EricDalquist> but to use an existing one that is actually full featured and well tested
[14:36:07 CST(-0600)] <athena> yeah
[14:36:11 CST(-0600)] <athena> i just replied as well
[14:36:23 CST(-0600)] <athena> i mean i want our solution to be secure and take use cases like these into account
[14:36:36 CST(-0600)] <athena> but i'm not sure deleting the encrypted password is the highest priority at this point
[14:36:46 CST(-0600)] <athena> since it's likely in the browser cache, etc. as well
[14:36:47 CST(-0600)] <EricDalquist> right, I'd just hate to re-implement a bunch of features
[14:37:02 CST(-0600)] <athena> and changing your password would lock the person who stole your phone out of the app
[14:37:02 CST(-0600)] <EricDalquist> instead of encouraging people to use a protocol designed for this stuff
[14:38:34 CST(-0600)] <athena> hum
[14:38:43 CST(-0600)] <athena> did the recent changes include changes to spring-ldap maybe?
[14:38:59 CST(-0600)] <EricDalquist> that might have been in the roundup of stuff that got updated
[14:39:03 CST(-0600)] <EricDalquist> problems?
[14:39:30 CST(-0600)] <athena> just an invalid setter error
[14:42:31 CST(-0600)] <EricDalquist> did you ever get that login reporting portlet complete?
[14:42:48 CST(-0600)] <athena> i have some test views
[14:43:03 CST(-0600)] <athena> been thinking over how we actually want the interface to work
[14:43:04 CST(-0600)] <EricDalquist> cool
[14:43:07 CST(-0600)] <athena> tried out the google view
[14:43:20 CST(-0600)] <athena> which works fine in the simple case, but may not really work that well for some of the use cases we might want
[14:43:26 CST(-0600)] <athena> doesn't seem particularly ajax-friendly
[14:43:39 CST(-0600)] <EricDalquist> hrm, thats too bad
[14:43:51 CST(-0600)] <athena> yeah, will have to see if i can make their JS work in an ajax-y way
[14:44:07 CST(-0600)] <athena> but also for some requests we might want to send back a couple tables
[14:44:11 CST(-0600)] <athena> so some issues like that
[14:44:33 CST(-0600)] <athena> need to see if there's a way though to build the tables w/ their lib and then just serialize vs. letting it set the whole response
[14:44:36 CST(-0600)] <athena> that might be a decent compromise
[14:44:54 CST(-0600)] <EricDalquist> hrm
[14:45:02 CST(-0600)] <EricDalquist> I bet you could trick it with a fake req/res
[14:45:34 CST(-0600)] <athena> lol i guess that might work
[14:45:37 CST(-0600)] <athena> eeeeevil
[15:30:13 CST(-0600)] <Misagh> Hi Eric. Got a question on the jasig license plugin for maven
[15:30:31 CST(-0600)] <Misagh> Any chance the check goal could have a property like "failIfMissing" ?
[15:30:59 CST(-0600)] <EricDalquist> the jasig notice plugin you mean?
[15:31:03 CST(-0600)] <Misagh> exactly
[15:31:07 CST(-0600)] <EricDalquist> the license plugin isn't a jasig project
[15:31:20 CST(-0600)] <Misagh> sorry, yes. I meant the notice plugin
[15:31:20 CST(-0600)] <EricDalquist> sure … it could have whatever you want to provide a patch for it to do
[15:31:44 CST(-0600)] <Misagh> great. I was having a hard time finding it in the repo. Could you let me know what the url is ?
[15:31:48 CST(-0600)] <EricDalquist> https://source.jasig.org/sandbox/maven-notice-plugin/
[15:31:53 CST(-0600)] <Misagh> and where to post the patch?
[15:32:09 CST(-0600)] <EricDalquist> hrm …
[15:32:15 CST(-0600)] <Misagh> I have got commit access to the portlets space
[15:32:35 CST(-0600)] <Misagh> not sure if that applies to sandbox, but might make it easier to directly commit after the changes are reviewed of course
[15:32:49 CST(-0600)] <EricDalquist> you can commit to anything under sandbox
[15:32:52 CST(-0600)] <EricDalquist> just email me the patch
[15:33:01 CST(-0600)] <EricDalquist> I apparenlty need to get this incubatd :/
[15:33:02 CST(-0600)] <Misagh> sure thing. thanks.
[16:01:02 CST(-0600)] <athena> uhoh, stack traces
[16:01:03 CST(-0600)] <athena> Caused by: org.postgresql.util.PSQLException: Method org.postgresql.jdbc3.Jdbc3PreparedStatement.setQueryTimeout(int) is not yet implemented.
[16:01:18 CST(-0600)] <EricDalquist> huh?
[16:01:22 CST(-0600)] <EricDalquist> I thought all that code was gone
[16:01:27 CST(-0600)] <EricDalquist> full stack?
[16:01:59 CST(-0600)] <athena> oh.
[16:02:04 CST(-0600)] <athena> never mind, i looked too high up in the file
[16:02:11 CST(-0600)] <EricDalquist> lol
[16:02:15 CST(-0600)] <athena> sorry
[16:02:16 CST(-0600)] <EricDalquist> old log file?
[16:02:19 CST(-0600)] <athena> or maybe the wrong file
[16:02:20 CST(-0600)] <athena> yeah.
[16:03:13 CST(-0600)] <athena> wonder where all the current log messages went
[16:03:26 CST(-0600)] <EricDalquist> timewarp?
[16:03:47 CST(-0600)] <athena> lets do the timewarp again!
[16:03:49 CST(-0600)] <athena> sings
[16:04:18 CST(-0600)] <athena> now i have the whole song in my head
[16:04:54 CST(-0600)] <EricDalquist> lol
[16:04:57 CST(-0600)] <EricDalquist> you're welcome
[16:06:44 CST(-0600)] <athena> wow, i'm really confused
[16:08:20 CST(-0600)] <athena> ah.
[16:08:21 CST(-0600)] <athena> permissions.
[16:08:30 CST(-0600)] <EricDalquist> ?
[16:08:57 CST(-0600)] <athena> somehow the log file wound up being owned by root
[16:09:03 CST(-0600)] <athena> so it's not writeable
[16:09:06 CST(-0600)] <athena> thus no logging
[16:09:11 CST(-0600)] <EricDalquist> weird
[16:10:24 CST(-0600)] <athena> got started up accidentally as root at some point, i'm sure
[16:22:45 CST(-0600)] <EricDalquist> I really hate MySQL
[16:24:48 CST(-0600)] <EricDalquist> this 767 byte index limit is just … terrible
[16:25:23 CST(-0600)] <EricDalquist> that means a limit of 191 utf8 characters total in one index
[16:27:16 CST(-0600)] <EricDalquist> ahah! http://dev.mysql.com/doc/refman/5.5/en/innodb-parameters.html#sysvar_innodb_large_prefix
[16:28:57 CST(-0600)] <athena> hmm.
[16:29:08 CST(-0600)] <athena> now on requests to the layout.json service i'm getting this for the search portlet:
[16:29:09 CST(-0600)] <athena> Caused by: java.lang.IllegalArgumentException: Specified content type 'application/json' is not supported.
[16:29:09 CST(-0600)] <athena> at org.apache.pluto.container.impl.RenderResponseImpl.setContentType(RenderResponseImpl.java:95)
[16:29:09 CST(-0600)] <athena> at org.springframework.web.portlet.DispatcherPortlet.render(DispatcherPortlet.java:1088)
[16:29:09 CST(-0600)] <athena> at org.springframework.web.portlet.DispatcherPortlet.doRenderService(DispatcherPortlet.java:755)
[16:29:09 CST(-0600)] <athena> at org.springframework.web.portlet.FrameworkPortlet.processRequest(FrameworkPortlet.java:522)
[16:29:10 CST(-0600)] <athena> ... 46 more
[16:29:19 CST(-0600)] <athena> is that related to the content type the portlet is setting?
[16:29:39 CST(-0600)] <EricDalquist> weird
[16:29:41 CST(-0600)] <EricDalquist> yeah
[16:29:52 CST(-0600)] <EricDalquist> I guess
[16:30:11 CST(-0600)] <athena> seems to be after the search portlet is rendered once - doesn't show up before then
[16:30:20 CST(-0600)] <athena> though not actually even interacted with
[16:31:10 CST(-0600)] <EricDalquist> huh
[16:31:16 CST(-0600)] <athena> yeah
[16:31:34 CST(-0600)] <athena> that portlet doesn't even have a resource method that emits JSON
[16:37:39 CST(-0600)] <EricDalquist> hrm
[16:37:43 CST(-0600)] <EricDalquist> so I just tried two searches
[16:37:45 CST(-0600)] <EricDalquist> no problem
[16:37:49 CST(-0600)] <EricDalquist> once from teh header
[16:37:57 CST(-0600)] <EricDalquist> and once from the portlet itself
[16:40:34 CST(-0600)] <athena> the searches are file
[16:40:39 CST(-0600)] <athena> it's the layout.json service that's breaking
[16:40:45 CST(-0600)] <EricDalquist> ah
[16:40:52 CST(-0600)] <athena> the portal itself renders ok, but that JSON document errors out halfway through
[16:41:23 CST(-0600)] <athena> i guess maybe because we're technically rendering content, but the document response type is set to application/json?
[16:42:00 CST(-0600)] <athena> thinking maybe it's related to org.springframework.web.portlet.mvc.annotation.DefaultAnnotationHandlerMapping
[16:42:05 CST(-0600)] <athena> since most of the other portlets aren't annotation-based
[16:42:31 CST(-0600)] <athena> assuming this is an effect of the spring upgrade
[16:43:47 CST(-0600)] <EricDalquist> hrm
[16:43:48 CST(-0600)] <EricDalquist> could be
[16:45:57 CST(-0600)] <EricDalquist> I have to run out for a little bit
[16:46:06 CST(-0600)] <EricDalquist> if you're still stuck or don't want to deal with it create a jira
[16:46:09 CST(-0600)] <EricDalquist> and I can help look
[16:53:34 CST(-0600)] <athena> i'll let you know