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 (wink)

[11:37:29 CST(-0600)] <athena> lol

[11:37:44 CST(-0600)] <athena> i squinted wrong while running initdb? (tongue)

[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 (tongue)

[11:52:53 CST(-0600)] <athena> lol

[11:52:57 CST(-0600)] <athena> i'm sure (tongue)

[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> (smile)

[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 (tongue)

[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 (smile)

[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 (smile)

[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 (tongue)

[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 (smile)

[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 (smile)

[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 (tongue)

[14:28:27 CST(-0600)] <athena> yay! db task worked

[14:29:07 CST(-0600)] <EricDalquist> yay!

[14:29:28 CST(-0600)] <athena> thanks (smile)

[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 (tongue)

[14:45:34 CST(-0600)] <athena> lol i guess that might work (smile)

[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 (wink)

[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. (smile)

[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 (tongue)

[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 (sad)

[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 (wink)

[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 (smile)

[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 (smile)