Re: [hibernate-dev] GSoC 2016: Congratulations, your proposal with JBoss Community has been accepted!

2016-04-23 Thread Gunnar Morling
Hi Mincong,

Congrats and welcome to this year's GSoC! Looking forward to the project
and your contributions very much!

@Everyone: Please join me in welcoming Mincong to the team! He is a student
living in France and as part of Google Summer of Code he will be working on
an alternative for mass indexing entities in Hibernate Search based on the
JSR 352 for batch applications (see [1] for the project proposal). I'll be
mentoring him.

@Mincong: All the best for your GSoC! I'd say for now enjoy the weekend
before the action begins and then let's get a discussion on the details
started.

Onwards,

--Gunnar

[1] https://summerofcode.withgoogle.com/serve/5594702887780352/



2016-04-22 23:20 GMT+02:00 Mincong Huang :

> Hi everybody,
>
> Thanks for accepting my application of GSoC !! Really excited to having
> chance to work the hibernate team. I'm so happy to see this email. It's
> just
> like a dream, can't believe it is true !! Thanks for choosing me. I'll try
> my
> best to accomplish this mission !! Happy coding and good night :-)
>
> Cheers,
> Mincong
>
> On Fri, Apr 22, 2016 at 9:25 PM, Google Summer of Code <
> summerofcode-nore...@google.com> wrote:
>
>> [image: Google Summer of Code]
>>
>> Hi mincongh,
>>
>> Welcome to GSoC 2016!
>>
>> Your proposal Hibernate Search: JSR 352 batch job for re-indexing
>> entities
>> 
>> has been accepted!
>>
>> We look forward to seeing the great things you will accomplish this
>> summer with JBoss Community.
>>
>> This email contains important information about your participation in
>> GSoC this year. Please read it carefully.
>>
>> Over the next month you will take part in the Community Bonding period
>> with your organization. This period is for you to become familiar with the
>> organization's code base, version control and other infrastructure. You
>> will be getting to know the community and its practices, as well as working
>> with your mentor on milestones for the summer.
>>
>> Complete all of these steps as soon as you can:
>>
>>1. Read the Accepted Student Information
>>
>>2. Upload  your tax
>>form *before May 16, 2016 at 19:00 UTC*
>>3. Read the Student Payment Information
>>
>>4. Set up your Payoneer account before May 16, 2016 at 19:00 UTC
>>5. Verify your shipping address, promotional materials, and t-shirt
>>information on your profile
>>.
>>
>> If you have questions about anything in this email, please email the
>> Google GSoC support team at gsoc-supp...@google.com. Don’t email the
>> student list with tax or payment issues.
>>
>> Have a great summer!
>>
>> Google Open Source Programs team
>>
>> This email was sent to mincon...@gmail.com.
>>
>> You are receiving this email because of your participation in Google
>> Summer of Code 2016.
>> https://summerofcode.withgoogle.com
>>
>> To leave the program and stop receiving all emails, you can go to your
>> profile  and
>> request deletion of your program profile.
>>
>> For any questions, please contact gsoc-supp...@google.com. Replies to
>> this message go to an unmonitored mailbox.
>>
>> © 2016 Google Inc., 1600 Amphitheatre Parkway, Mountain View, CA 94043,
>> USA
>>
>
>
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev

[hibernate-dev] Various expectation changes in hibernate-core after consolidating hibernate-entitymanager

2016-04-23 Thread Steve Ebersole
There are a number of "expectation changes" that come about from
consolidating hibernate-entitymanger into hibernate-core.  Some we have
discussed; some we have not.  Hopefully we can come to a consensus regards
how to deal with these changes...

The first one is different exception types.  We have discussed this
before.  For now, in an effort to fix test failures and move forward with
developing, I simply changed failing tests to expect the JPA defined
exceptions.  I had mentioned, where possible, to to throw a combination of
the 2 expected exceptions.  Generally this falls into 2 discrete categories:


   1. JPA expects a PersistenceException and we have historically thrown a
   HibernateException
   2. JPA expects some form of JDK RuntimeException
   (IllegalArgumentException, IllegalStateException, etc) and we have
   historically thrown a HibernateException

It is unfortunate that Java does not allow exceptions to be defined by
means of interfaces; that's the only "clean" way I see to do this - that
would have allowed us to define concrete exception classes that extend
PersistenceException, IllegalArgumentException, etc and that implement
HibernateException.


So I see 3 potential solutions (feel free to bring up others).

   1. Just move to JPA expected exceptions.
   2. Have HibernateException extend PersistenceException and just not
   worry about the change in expectation in regards to that second category.
   3. Push exception handling behind a strategy.  This would have to be a
   pretty specific strategy for very specific cases.

The first and second options are pretty self-explanatory and
straight-forward so I won't go into detail there.  Just realize that these
change the expectation for the user.  They'd have to change their code to
catch these JPA-defined exceptions.
The other option, I see, is to h

The third option is perfect in theory, but it is very tedious.  For
example, take the case of trying to perform some operation on a closed
Session/EntityManager.  Hibernate historically threw a HibernateException
here.  JPA says that should result in an IllegalStateException.  So in
SessionImpl#checkOpen, when the Session/EntityManager is closed, we'd call
out to the strategy to handle that condition.  Even more, Hibernate
(historically) and JPA disagree about which methods getting called on a
closed Session/EntityManager should lead to an exception.  For example, JPA
says calling EntityManager#close on a closed EntityManager should result in
an exception; Hibernate historically did not care if you called
Session#close on a closed Session.  So that is a special case, and every
one of those special cases would have to be exposed and handled in the
exception handling strategy in additional to the general cases.

Another change in expectation is in regards to operations outside of a
transaction, which I consider a questionable pattern anyway.  Hibernate
historically allowed that; JPA explicitly disallows it.  In a way this
could fall under the exception discussion above, meaning we could push that
distinction behind the exception handling strategy.  Or we could decide
that we are going to stop supporting that.

There are a lot of other highly questionable things I have seen in the
tests that JPA explicitly disallows that I think we ought to just stop
supporting and opt for the JPA way, although I am open to discussing them
if any feels strongly about them.  Some of these include:

   - Asking a Session if is contains (Session/EntityManager#contains) a
   non-entity.  Hibernate historically would just return false.  JPA states
   that should be an exception.
   - Accessing Session/EntityManager#getTransaction.  JPA says that is only
   allowed for JDBC transactions.  Hibernate always allows it.

If we go the route of an "exception handling strategy" a lot of the other
points I mentioned above could just be pushed behind that strategy.  But I
really want to start looking critically at what we support today that we
maybe really should not be.
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev


Re: [hibernate-dev] Various expectation changes in hibernate-core after consolidating hibernate-entitymanager

2016-04-23 Thread Steve Ebersole
Just realized that I should have mentioned an important plan that helps
understand the idea behind the "exception handling strategy" route.  I plan
to keep track of how a SessionFactory was bootstrapped in some fashion.  So
when it was bootstrapped from EntityManagerFactoryBuilder (which JPA
bootstrap methods leverage) we'd select the "JPA exception handling"
strategy impl.  When not, we'd use the "legacy Hibernate exception
handling" strategy.

On Sat, Apr 23, 2016 at 9:21 AM Steve Ebersole  wrote:

> There are a number of "expectation changes" that come about from
> consolidating hibernate-entitymanger into hibernate-core.  Some we have
> discussed; some we have not.  Hopefully we can come to a consensus regards
> how to deal with these changes...
>
> The first one is different exception types.  We have discussed this
> before.  For now, in an effort to fix test failures and move forward with
> developing, I simply changed failing tests to expect the JPA defined
> exceptions.  I had mentioned, where possible, to to throw a combination of
> the 2 expected exceptions.  Generally this falls into 2 discrete categories:
>
>
>1. JPA expects a PersistenceException and we have historically thrown
>a HibernateException
>2. JPA expects some form of JDK RuntimeException
>(IllegalArgumentException, IllegalStateException, etc) and we have
>historically thrown a HibernateException
>
> It is unfortunate that Java does not allow exceptions to be defined by
> means of interfaces; that's the only "clean" way I see to do this - that
> would have allowed us to define concrete exception classes that extend
> PersistenceException, IllegalArgumentException, etc and that implement 
> HibernateException.
>
>
> So I see 3 potential solutions (feel free to bring up others).
>
>1. Just move to JPA expected exceptions.
>2. Have HibernateException extend PersistenceException and just not
>worry about the change in expectation in regards to that second category.
>3. Push exception handling behind a strategy.  This would have to be a
>pretty specific strategy for very specific cases.
>
> The first and second options are pretty self-explanatory and
> straight-forward so I won't go into detail there.  Just realize that these
> change the expectation for the user.  They'd have to change their code to
> catch these JPA-defined exceptions.
> The other option, I see, is to h
>
> The third option is perfect in theory, but it is very tedious.  For
> example, take the case of trying to perform some operation on a closed
> Session/EntityManager.  Hibernate historically threw a HibernateException
> here.  JPA says that should result in an IllegalStateException.  So in
> SessionImpl#checkOpen, when the Session/EntityManager is closed, we'd
> call out to the strategy to handle that condition.  Even more, Hibernate
> (historically) and JPA disagree about which methods getting called on a
> closed Session/EntityManager should lead to an exception.  For example,
> JPA says calling EntityManager#close on a closed EntityManager should
> result in an exception; Hibernate historically did not care if you called
> Session#close on a closed Session.  So that is a special case, and every
> one of those special cases would have to be exposed and handled in the
> exception handling strategy in additional to the general cases.
>
> Another change in expectation is in regards to operations outside of a
> transaction, which I consider a questionable pattern anyway.  Hibernate
> historically allowed that; JPA explicitly disallows it.  In a way this
> could fall under the exception discussion above, meaning we could push that
> distinction behind the exception handling strategy.  Or we could decide
> that we are going to stop supporting that.
>
> There are a lot of other highly questionable things I have seen in the
> tests that JPA explicitly disallows that I think we ought to just stop
> supporting and opt for the JPA way, although I am open to discussing them
> if any feels strongly about them.  Some of these include:
>
>- Asking a Session if is contains (Session/EntityManager#contains) a
>non-entity.  Hibernate historically would just return false.  JPA states
>that should be an exception.
>- Accessing Session/EntityManager#getTransaction.  JPA says that is
>only allowed for JDBC transactions.  Hibernate always allows it.
>
> If we go the route of an "exception handling strategy" a lot of the other
> points I mentioned above could just be pushed behind that strategy.  But I
> really want to start looking critically at what we support today that we
> maybe really should not be.
>
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev


Re: [hibernate-dev] GSoC 2016: Congratulations, your proposal with JBoss Community has been accepted!

2016-04-23 Thread Chris Cranford
Welcome aboard, Mincong!!

On Sat, Apr 23, 2016 at 3:39 AM, Gunnar Morling 
wrote:

> Hi Mincong,
>
> Congrats and welcome to this year's GSoC! Looking forward to the project
> and your contributions very much!
>
> @Everyone: Please join me in welcoming Mincong to the team! He is a student
> living in France and as part of Google Summer of Code he will be working on
> an alternative for mass indexing entities in Hibernate Search based on the
> JSR 352 for batch applications (see [1] for the project proposal). I'll be
> mentoring him.
>
> @Mincong: All the best for your GSoC! I'd say for now enjoy the weekend
> before the action begins and then let's get a discussion on the details
> started.
>
> Onwards,
>
> --Gunnar
>
> [1] https://summerofcode.withgoogle.com/serve/5594702887780352/
>
>
>
> 2016-04-22 23:20 GMT+02:00 Mincong Huang :
>
> > Hi everybody,
> >
> > Thanks for accepting my application of GSoC !! Really excited to having
> > chance to work the hibernate team. I'm so happy to see this email. It's
> > just
> > like a dream, can't believe it is true !! Thanks for choosing me. I'll
> try
> > my
> > best to accomplish this mission !! Happy coding and good night :-)
> >
> > Cheers,
> > Mincong
> >
> > On Fri, Apr 22, 2016 at 9:25 PM, Google Summer of Code <
> > summerofcode-nore...@google.com> wrote:
> >
> >> [image: Google Summer of Code]
> >>
> >> Hi mincongh,
> >>
> >> Welcome to GSoC 2016!
> >>
> >> Your proposal Hibernate Search: JSR 352 batch job for re-indexing
> >> entities
> >> <
> https://summerofcode.withgoogle.com/dashboard/student/proposal/5244068401512448/
> >
> >> has been accepted!
> >>
> >> We look forward to seeing the great things you will accomplish this
> >> summer with JBoss Community.
> >>
> >> This email contains important information about your participation in
> >> GSoC this year. Please read it carefully.
> >>
> >> Over the next month you will take part in the Community Bonding period
> >> with your organization. This period is for you to become familiar with
> the
> >> organization's code base, version control and other infrastructure. You
> >> will be getting to know the community and its practices, as well as
> working
> >> with your mentor on milestones for the summer.
> >>
> >> Complete all of these steps as soon as you can:
> >>
> >>1. Read the Accepted Student Information
> >><
> https://developers.google.com/open-source/gsoc/help/accepted-students>
> >>2. Upload  your tax
> >>form *before May 16, 2016 at 19:00 UTC*
> >>3. Read the Student Payment Information
> >>
> >>4. Set up your Payoneer account before May 16, 2016 at 19:00 UTC
> >>5. Verify your shipping address, promotional materials, and t-shirt
> >>information on your profile
> >>.
> >>
> >> If you have questions about anything in this email, please email the
> >> Google GSoC support team at gsoc-supp...@google.com. Don’t email the
> >> student list with tax or payment issues.
> >>
> >> Have a great summer!
> >>
> >> Google Open Source Programs team
> >>
> >> This email was sent to mincon...@gmail.com.
> >>
> >> You are receiving this email because of your participation in Google
> >> Summer of Code 2016.
> >> https://summerofcode.withgoogle.com
> >>
> >> To leave the program and stop receiving all emails, you can go to your
> >> profile  and
> >> request deletion of your program profile.
> >>
> >> For any questions, please contact gsoc-supp...@google.com. Replies to
> >> this message go to an unmonitored mailbox.
> >>
> >> © 2016 Google Inc., 1600 Amphitheatre Parkway, Mountain View, CA 94043,
> >> USA
> >>
> >
> >
> ___
> hibernate-dev mailing list
> hibernate-dev@lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev

Re: [hibernate-dev] GSoC 2016: Congratulations, your proposal with JBoss Community has been accepted!

2016-04-23 Thread Steve Ebersole
Congrats and thanks to you Mincing :)

On Sat, Apr 23, 2016, 10:38 AM Chris Cranford  wrote:

> Welcome aboard, Mincong!!
>
> On Sat, Apr 23, 2016 at 3:39 AM, Gunnar Morling 
> wrote:
>
> > Hi Mincong,
> >
> > Congrats and welcome to this year's GSoC! Looking forward to the project
> > and your contributions very much!
> >
> > @Everyone: Please join me in welcoming Mincong to the team! He is a
> student
> > living in France and as part of Google Summer of Code he will be working
> on
> > an alternative for mass indexing entities in Hibernate Search based on
> the
> > JSR 352 for batch applications (see [1] for the project proposal). I'll
> be
> > mentoring him.
> >
> > @Mincong: All the best for your GSoC! I'd say for now enjoy the weekend
> > before the action begins and then let's get a discussion on the details
> > started.
> >
> > Onwards,
> >
> > --Gunnar
> >
> > [1] https://summerofcode.withgoogle.com/serve/5594702887780352/
> >
> >
> >
> > 2016-04-22 23:20 GMT+02:00 Mincong Huang :
> >
> > > Hi everybody,
> > >
> > > Thanks for accepting my application of GSoC !! Really excited to having
> > > chance to work the hibernate team. I'm so happy to see this email. It's
> > > just
> > > like a dream, can't believe it is true !! Thanks for choosing me. I'll
> > try
> > > my
> > > best to accomplish this mission !! Happy coding and good night :-)
> > >
> > > Cheers,
> > > Mincong
> > >
> > > On Fri, Apr 22, 2016 at 9:25 PM, Google Summer of Code <
> > > summerofcode-nore...@google.com> wrote:
> > >
> > >> [image: Google Summer of Code]
> > >>
> > >> Hi mincongh,
> > >>
> > >> Welcome to GSoC 2016!
> > >>
> > >> Your proposal Hibernate Search: JSR 352 batch job for re-indexing
> > >> entities
> > >> <
> >
> https://summerofcode.withgoogle.com/dashboard/student/proposal/5244068401512448/
> > >
> > >> has been accepted!
> > >>
> > >> We look forward to seeing the great things you will accomplish this
> > >> summer with JBoss Community.
> > >>
> > >> This email contains important information about your participation in
> > >> GSoC this year. Please read it carefully.
> > >>
> > >> Over the next month you will take part in the Community Bonding period
> > >> with your organization. This period is for you to become familiar with
> > the
> > >> organization's code base, version control and other infrastructure.
> You
> > >> will be getting to know the community and its practices, as well as
> > working
> > >> with your mentor on milestones for the summer.
> > >>
> > >> Complete all of these steps as soon as you can:
> > >>
> > >>1. Read the Accepted Student Information
> > >><
> > https://developers.google.com/open-source/gsoc/help/accepted-students>
> > >>2. Upload  your
> tax
> > >>form *before May 16, 2016 at 19:00 UTC*
> > >>3. Read the Student Payment Information
> > >>
> > >>4. Set up your Payoneer account before May 16, 2016 at 19:00 UTC
> > >>5. Verify your shipping address, promotional materials, and t-shirt
> > >>information on your profile
> > >>.
> > >>
> > >> If you have questions about anything in this email, please email the
> > >> Google GSoC support team at gsoc-supp...@google.com. Don’t email the
> > >> student list with tax or payment issues.
> > >>
> > >> Have a great summer!
> > >>
> > >> Google Open Source Programs team
> > >>
> > >> This email was sent to mincon...@gmail.com.
> > >>
> > >> You are receiving this email because of your participation in Google
> > >> Summer of Code 2016.
> > >> https://summerofcode.withgoogle.com
> > >>
> > >> To leave the program and stop receiving all emails, you can go to your
> > >> profile  and
> > >> request deletion of your program profile.
> > >>
> > >> For any questions, please contact gsoc-supp...@google.com. Replies to
> > >> this message go to an unmonitored mailbox.
> > >>
> > >> © 2016 Google Inc., 1600 Amphitheatre Parkway, Mountain View, CA
> 94043,
> > >> USA
> > >>
> > >
> > >
> > ___
> > hibernate-dev mailing list
> > hibernate-dev@lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hibernate-dev
> >
> ___
> hibernate-dev mailing list
> hibernate-dev@lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hibernate-dev
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev

Re: [hibernate-dev] Hibernate.org and Roadmap nav link

2016-04-23 Thread Steve Ebersole
Like I said, that is exactly what I end up doing now.  When I do a release
I write the blog directly in the in.relation.to repo via the GitHub UI
editor.  Same for the release descriptor in hibernate.org.  SO I am
familiar with that approach.


On Fri, Apr 22, 2016 at 10:34 AM Sanne Grinovero 
wrote:

> Hi Steve, yes I understand you just want to write some content.
> But then why not give the approach I just mentioned a try?
>
> You can totally skip the staging branch and docker stuff.
>
> I will *personally* keep using staging when I'm not sure about formatting
> and/or am working on something which I want to shape visually. I wouldn't
> have this option on github pages as its support for style is way more
> limited, but having more options doesn't seem like a drawback.
>
> If you just want to update some text, go ahead on production directly.
> Heck, worst case a mistake can be fixed or reverted.. at least it's
> versioned ;)
> On 22 Apr 2016 16:15, "Steve Ebersole"  wrote:
>
>> Right, this is actually exactly what I end up doing for any dealing with
>> hibernate.org or in.relation.to...
>>
>> Keep in mind I just want to author come content :)
>>
>> Personally I find the whole process just gets in the way.  Generally
>> right out of the chute we have to deal with forced pushes on staging and
>> getting that all straightened out.  Then I have to locally fight docker,
>> etc to get the site built and hosted.  It just feels like a lot (to me) to
>> author some content.
>>
>>
>> On Fri, Apr 22, 2016 at 5:30 AM Sanne Grinovero 
>> wrote:
>>
>>> There's a middle-ground strategy which might be cool to try.
>>>
>>> Go here:
>>>  -
>>> https://github.com/hibernate/hibernate.org/edit/production/orm/roadmap.adoc
>>>
>>> edit the doc within the browser, confirm the changes with a brief
>>> commit message and CI should pick it up, then publish within 5
>>> minutes.
>>>
>>> I just did this for the Search roadmap, although I opted for the
>>> 'staging' branch to try it out.. and because I regularly screw up the
>>> syntax.
>>>
>>> -- Sanne
>>>
>>>
>>> On 21 April 2016 at 23:57, Davide D'Alto  wrote:
>>> > Hi Steve,
>>> > what problems are you having with hibernate.org?
>>> > I agree with Gunnar that we should try to stick with one look & feel if
>>> > possible.
>>> >
>>> > On Thu, Apr 21, 2016 at 9:00 PM, Steve Ebersole 
>>> wrote:
>>> >
>>> >> Because I find it incredibly easier to work with GitHub wiki as
>>> opposed to
>>> >> hibernate.org for authoring.
>>> >>
>>> >> On Thu, Apr 21, 2016, 12:42 PM Gunnar Morling 
>>> >> wrote:
>>> >>
>>> >> > Hey,
>>> >> >
>>> >> > What's the reason for maintaining the roadmap in the wiki rather
>>> than
>>> >> > hibernate.org itself?
>>> >> >
>>> >> > I hoped we'd centralize this kind of information on hibernate.org;
>>> Looks
>>> >> > a tad more professional to have everything with the same look &
>>> field
>>> >> > rather than pointing to other resources as the wiki... Also
>>> searchability
>>> >> > benefits, should we once have a site search.
>>> >> >
>>> >> > --Gunnar
>>> >> >
>>> >> >
>>> >> >
>>> >> > 2016-04-21 19:36 GMT+02:00 Steve Ebersole :
>>> >> >
>>> >> >> I have started maintaining[1] the ORM Roadmap external to
>>> hibernate.org
>>> >> >> itself.  I'd like to adjust the link to when under orm/ to point
>>> to this
>>> >> >> external URL rather than the parameterized {project}/roadmap
>>> target.  Is
>>> >> >> that possible?  And if so, how?
>>> >> >>
>>> >> >> [1] https://github.com/hibernate/hibernate-orm/wiki/Roadmap
>>> >> >>
>>> >> > ___
>>> >> >> hibernate-dev mailing list
>>> >> >> hibernate-dev@lists.jboss.org
>>> >> >> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>> >> >>
>>> >> >
>>> >> >
>>> >> ___
>>> >> hibernate-dev mailing list
>>> >> hibernate-dev@lists.jboss.org
>>> >> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>> >>
>>> > ___
>>> > hibernate-dev mailing list
>>> > hibernate-dev@lists.jboss.org
>>> > https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>>
>>
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev


Re: [hibernate-dev] GSoC 2016: Congratulations, your proposal with JBoss Community has been accepted!

2016-04-23 Thread Guillaume Smet
Welcome aboard, Mincong!

On Sat, Apr 23, 2016 at 5:44 PM, Steve Ebersole  wrote:

> Congrats and thanks to you Mincing :)
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev