14:59:23 #startmeeting 14:59:28 Meeting started Mon May 16 14:59:23 2011 UTC. The chair is sebersole. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:59:28 Useful Commands: #action #agreed #help #info #idea #link #topic. 14:59:34 hi everyone 14:59:49 hi 15:00:07 stliu: you want to start and give us an idea where you are? 15:00:26 sebersole, well, mocking orm is done 15:00:33 i saw a pull request from you. that was it? 15:00:38 and i'm on the IdClass binder 15:01:02 i guess that is the mocking global configuration i disscussed with hardy 15:01:12 did hardy apply the pull request? 15:01:17 hi all 15:01:25 hi 15:01:44 sebersole, no, not yet i'd think 15:01:49 stliu: did you just push the orm stuff directly? 15:02:02 sebersole, nope, hardy reviewed it 15:02:17 ok, either way. i trust you ;) 15:02:24 just checking 15:02:57 so is all of orm mocking done? or just for what we already had built support for? 15:03:17 sebersole: regarding the warnings in http://pastie.org/1899179, I just heard that Andy is tripping over the "org.hibernate.cfg.AnnotationBinder] (MSC service thread 1-3) HHH00194:Package not found or wo package-info.java" one with his app. 15:03:23 sebersole, that are two tasks, HHH-6133 has been merged into master, and HHH-6113 is under discussion with hardy_ , that's the pull request you saw i'd think 15:03:28 jira [HHH-6133] Enhance annotation based Jandex index with configuration extracted from orm.xml [Resolved (Fixed) Sub-task, Major, Strong Liu] http://opensource.atlassian.com/projects/hibernate/browse/HHH-6133 15:03:33 jira [HHH-6113] Write orm.xml parser [Open (Unresolved) Sub-task, Major, Strong Liu] http://opensource.atlassian.com/projects/hibernate/browse/HHH-6113 15:03:38 stliu, did you end up creating interfaces for jaxb-generated classes? 15:03:45 gbadner, no, i didn't 15:04:02 sebersole: is that something that I could perhaps fix in as7 integration? I forwarded the email to you, with more information. 15:04:11 sebersole, all orm stuff is done (almost, if hardy accept that hhh-6113 pull request) 15:04:16 smarlow: we doing meeting, sec 15:04:23 np :) 15:04:28 stliu: I still have to look at it 15:05:04 btw, I am chasing a bug where a class disappears from the index during the orm enhancing 15:05:10 is it something i can look at? 15:05:20 hardy_, is there a test? 15:05:25 the pull request i mean 15:05:34 jandex will be beyond my skillz 15:05:45 stliu: I have a test, but it is not checked in 15:06:04 it is really a test for something else I am writing at the moment 15:06:17 sebersole, it is HHH-6113, but discussion is under HHH-6132 :) 15:06:22 jira [HHH-6113] Write orm.xml parser [Open (Unresolved) Sub-task, Major, Strong Liu] http://opensource.atlassian.com/projects/hibernate/browse/HHH-6113 15:06:28 jira [HHH-6132] Process and bind global configuration annotations [Open (Unresolved) Sub-task, Major, John Verhaeg] http://opensource.atlassian.com/projects/hibernate/browse/HHH-6132 15:06:41 hardy_, oh, or you can just email that test to me 15:06:56 more i was asking hardy_ if this is something i could look at 15:07:08 or if it needed his touch 15:07:30 sebersole: look at what? 15:07:41 hardy_: stliu's pull request 15:08:16 you can if you want, otherwise I will later on 15:08:42 just looking for stuff to do tbh, i am not comfortable with these new state/binding stuff 15:08:56 so need to talk with you on how to best apply them 15:09:05 but wanted to help as i can until then 15:10:05 i see 15:10:11 stliu: anything else from you ? 15:10:48 sebersole, i'm good for now, but gbadner is the composite id binding finished? 15:11:05 stliu, I'm working on that 15:11:26 I wanted to ask sebersole some stuff about it 15:11:43 gbadner, i'm working on binding IdClass, and was thinking i can reference to the composite id stuff :) 15:11:57 ok, yeah 15:12:01 stliu: awesome 15:12:48 yeah, great work stliu 15:13:10 sebersole, is there a easy way to test master code on other DBs? 15:13:16 i remember you worked on it 15:13:34 stliu: not atm. i still need to pul that stuff over from svn 15:13:59 you really would have to alter the gradle scripts 15:14:53 is it possible to run tests on different dbs in parallel? 15:15:20 stliu: from the script directly? or from CI? 15:15:25 sebersole, should composite-id, properties, component-element be treated as Component? 15:15:37 sebersole, script 15:15:57 stliu: its *doable*, but would take a lot of work 15:16:30 its partially that that i was working on in the svn branch 15:16:38 there were two parts 15:16:59 one was easy defining of new test target dbs 15:17:08 the other was an in-script matrix 15:17:28 so it looped over every define target db 15:17:32 defined 15:17:42 gbadner: is special 15:18:03 because it's really just an alternate key? 15:18:15 it may be handled as a Component in mapping code 15:18:19 not sure tbh 15:18:34 its just a grouping of property 15:18:38 yeah 15:18:52 yes, usualy to name a alternate fk target 15:19:53 it seems kind of strange to create a Component attribute if there's no real attribute name 15:19:58 like linking to a person based on fname, lname even though person has surrogate key 15:20:36 its part of the problem of combining domain and mapping 15:20:50 collapsing i guess is better word 15:21:17 you dont have the opp for defining such separations cleanly 15:21:43 hardy_ you have anything? 15:21:56 you needed to leave soon i thought 15:22:09 right. need to leave quite soon 15:22:36 anyting to ask/share? 15:22:43 typing .... 15:22:54 I was working on the inheritance settings 15:23:08 right 15:23:13 I am about to check some stuff in related to SINGLE_TABLE inheritance 15:23:21 cool 15:23:34 did my thoughts help out? or hurt? 15:23:39 I need to talk to you either today or tomorrow about joins 15:24:07 we talked about it for secondary tables. you said you would look into it 15:24:18 i tried 15:24:29 sebersole, should there be SuperclassBinding? 15:24:34 like i said, i was confused with the state/binding stuff 15:24:42 and for the JOINED_TABLE approach I kind of need the same thing 15:24:48 hardy_: kk 15:25:05 but we can discuss this offline 15:25:11 hardy_: well maybe not 15:25:17 ? 15:25:24 no, you are right 15:25:28 you will 15:25:33 for the keys 15:25:37 :-) 15:25:45 well i was thinking you already have a binding i would think for the super 15:26:01 but you do need desc of key at the least 15:27:09 something I need, but atm i have some other stuff in my minde, so it is probably best that I first collect my thought and questions around this 15:27:14 what i mean is that i think it would be ideal to have the binding for Dog "know about" the binding for Animal 15:27:19 hardy_: ok 15:27:29 yes, I agree 15:27:33 it does 15:27:38 yeah its pretty amorphic in my mind too 15:28:08 SuperclassBinding can have relational stuff that is overriden in EntityBinding 15:28:16 gbadner: if your "Superclass" is a MappedSuperclass, then no 15:28:30 MappedSuperclasses have no binding 15:28:44 right 15:28:48 can't it have relational stuff defined? 15:29:20 its a choice 15:29:26 you can do it that way, yes 15:30:00 sebersole, in the spec, about mapped-superclass, I see: 15:30:05 @ManyToOne @JoinColumn(name="ADDR") 15:30:10 but what hardy and i talked about was trying to suck the stuff from MappedSuperclass into the entity binding 15:30:16 its more the actual intent 15:30:26 and as i just said, yes it can 15:30:32 its more a question of HOW 15:30:37 but you can have multiple @Entity that use the same @MappedSuperclass 15:30:43 yep 15:31:00 and the multiple @Entity can override the settings in @MappedSuperclass 15:31:12 *for themselves* 15:31:17 yes 15:31:23 so sharijng that state is not good 15:31:29 right 15:31:53 hardy_: anything else? 15:32:03 but the state from SuperclassBinding can be used to set defaults in EntityBinding 15:32:17 well, is there any news regarding the deadlines? 15:32:34 we are still shooting for the same day 15:33:11 sebersole, is there anyone working on the document side? 15:33:16 we are having a meeting on the internal irc after this to discuss 15:33:30 hmmm 15:33:37 document side? 15:33:43 stliu: i have been a little 15:34:13 cool 15:34:46 emmanuel, hardy_, sannegrinovero: have you all decided to use a sub-groupId for nexus? 15:35:04 thinking we should for core too 15:35:09 sebersole, for maven in general you mean? 15:35:14 i think the question was jsut for OGM 15:35:19 org.hibernate.core:hibernate-core 15:35:23 sannegrinovero: yes 15:35:28 and yes we applied that only to OGM 15:35:34 hm, ok, well we should be consistent 15:35:53 the thing is using sub groups makes more sense 15:36:14 so should we for a new project do what makes more sense or stay consistent 15:36:19 well makes it cleaner for sure 15:36:35 imo it would be awesome if we use sub groups in Core as well 15:36:41 well I don't think the idea is to promote a new group id per project; it looks like to me it makes sense for ogm as it's quite different. The groupid was meant for security purposes: identify who manages a set of artifacts. 15:36:54 * smarlow sebersole: I'm going offline to have my laptop serviced, hopefully for not too long. 15:36:58 but there the issue is that we are breaking w/ an existing scheme 15:37:09 hardy_: what is the real issue there? 15:37:21 a better namespace 15:37:29 well thats a pro :) 15:37:36 I'm not saying that I'm against it, just that this is quite unexpected by maven users. 15:37:40 i mean what is the real con to making the change? 15:37:50 lets talk with paul to get his thoughts 15:38:00 (the jboss maven guy) 15:38:05 sure 15:38:28 I think the biggest drawback is that people are used to find their artifacts under - https://repository.jboss.org/nexus/content/repositories/public/org/hibernate/ 15:38:40 consider that to uploade artifacts to maven central you'd need separate permissions and keys for each groupid. just that you know that we'll have to handle that. 15:38:49 well it still would be "under" there 15:38:59 sannegrinovero: not sure thats true 15:39:04 personally I found it nice if under this url we just have core/search/ogm/validator/ 15:39:08 i think it understands "sub" 15:39:17 hardy_, +1 15:39:24 but again, thats a question for paul 15:39:29 the problem is there will never be a really clean directory structure 15:39:33 sine he manages that rsync 15:39:38 sebersole, I might be wrong, that's what I was told. sure let's ask to paul 15:39:42 because we cannot just remove old artifacts 15:39:47 sebersole: on the sub grouping, and assuming Paul don't see any big negative, I think moving to subgrouping for a new major release is acceptable 15:39:56 emmanuel: right, now would be the time is my thinking 15:40:01 of course we might break many tools relying on stability of maven repos 15:40:10 there is no instability 15:40:21 we are not moving any existing releases 15:40:30 well I mean tools using patterns might have a harder time 15:40:35 sure 15:40:40 humans will be fine 15:41:17 also to follow up from last week... i decided to leave o.h.usertype in place 15:41:32 it does "dumb down" the api a bit 15:41:44 which i guess is good for some people 15:42:30 sebersole: coll, my feeling is that it's better as weel but I did not have any technical argument to back that up 15:43:23 sebersole: I have a question about properties in the old AnnotationBinder. I ran into this because one drives how ID generators are created. So far, there isn't anything in the MetadataImpl to accommodate properties. Did you have anything in mind for how this should be implemented? 15:43:43 well i think the better option is to work toward Type becoming more like usertype and then going from there 15:44:25 jpav, haw are you using "properties"? 15:44:45 i assume he means the "setting" which we discussed last meeting 15:44:54 The ID generators in the old code are built differently depending on a property called USE_NEW_GENERATOR_MAPPINGS 15:45:00 stuff like "use new id generator mappings" 15:45:06 yep 15:45:10 oh, ok 15:45:32 I don't think we decided on anything last meeting, unless I missed something 15:45:36 well there was a question still about that from last meeting 15:45:52 logically its part of the builder 15:46:12 so do we added methods for each of those options? 15:46:24 maybe try that out and see how it feels? 15:46:34 i tend to code by feel :) 15:46:49 espeically when it comes to apis 15:46:54 FDD 15:46:58 on the binding side, I have something called MappingDefaults (not the best name, I know) 15:47:09 emmanuel: right 15:47:16 i just let it flow 15:47:34 it has stuff like getDefaultPackage(), etc; is this where globals can/should go? 15:48:19 gbadner: well i cannot speak to the new code you have been working on, but in the original i had that part of the thing that represented the 15:48:25 since thats where that is defined 15:48:34 gbadner, here is the discussion wrt to global configurations in jpa http://opensource.atlassian.com/projects/hibernate/browse/HHH-6132?focusedCommentId=42306&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_42306 15:48:39 jira [HHH-6132] Process and bind global configuration annotations [Open (Unresolved) Sub-task, Major, John Verhaeg] http://opensource.atlassian.com/projects/hibernate/browse/HHH-6132 15:48:43 and globals are "higher" than that 15:49:06 oh, ok 15:49:13 something like if "delimited-identifiers" is defined 15:49:36 see that stuff, to me, is all builder specific 15:49:53 its only needed while the builder is building the metadata 15:50:26 ymmv i guess 15:50:52 hmmm 15:51:32 well, i guess thats not necessarily true for the "use new id generator mappings" depending 15:51:53 depending on how id generators are getting bound 15:52:00 but ideally that would fall in here too 15:52:48 jpav: you cool with that? 15:53:03 Yeah, I think so. So you're thinking we'd have some withOption method on the build that accommodated this type of thing? 15:53:20 I think emmanuel suggested this maybe 15:53:24 well "withOption" is not going to work for these 15:53:38 because these are all primitive types 15:53:44 the name itself i mean 15:53:54 right, it would have to have a suffix 15:53:59 we will need specific names here 15:54:03 withDefaultPackage( ... ) 15:54:08 etc 15:54:12 sure 15:54:17 but yes this was my thought as well 15:54:43 iiuc, when creating bindings from a particular hibernate-mappings, the same {Globals, MappingDefaults} 15:55:12 I was just wondering if Globals could just be accessible from MappingDefaults 15:55:31 gbadner: they should be i think to properly account for overrides 15:55:51 oh, ok 15:56:01 so MetadataBuilder.withDefaultPackage( ... ) defines the "fall back" package name 15:56:23 which might be overriden in a specific MappingDefaults 15:56:31 yup, got it 15:56:36 k 15:56:53 anyone, anything else? 15:57:08 sebersole, any specific reason we enable MVCC on h2? 15:57:23 to test real locking ;) 15:57:39 do not remember specifics tbh 15:58:00 okay, i was trying the latest h2, and some of tests fail 15:58:05 Feature not supported: "FOR UPDATE && JOIN"; SQL statement 15:58:29 which comes from mvcc? 15:59:04 well, it has a new feature "MVCC_FOR_UPDATE" 15:59:23 no idea, have not looked 15:59:41 okay, mn 16:00:07 alright les end the meeting for today since i think everyone is heads down 16:00:17 #endmeeting