API differences in Hibernate ORM 5.1 vs 5.3
by Gail Badner
Hi,
There were lots of differences in the compatibility report, so as a first
step, I've excluded packages/classes that I considered SPI, internal, or
"grey area". This reduced the the differences to a more manageable amount.
You can see a summary of the incompatibilities along with suggested
mitigation at [1].
The report is attached to [1], along with a zip with instructions for
running the report.
I believe there are some "false positives" in the report, and I have
documented them in the section, "False Positives?".
Feel free to comment on the article.
Thanks,
Gail
[1]
https://developer.jboss.org/wiki/HibernateORMBinaryCompatibilityBetween51...
4 weeks, 1 day
IP banned from forum
by Gunnar Morling
Hi,
Is anyone banning users from the forum? I am getting "A ban has been
issued on your IP address."
I don't think banning by IP is a good strategy as many users will have
dynamic IPs from their hoster's shared pool, so it's a random game to
hit an IP previously banned due to some other user's spam.
Thanks,
--Gunnar
4 weeks, 1 day
New CI machine preview
by Sanne Grinovero
You're all welcome to play with http://54.225.162.168/
however please keep these in mind:
- it's not the final machine: don't put too much effort in creating
nice build scripts as we'll reset it to clean state soon. We *might*
be able to store jobs defined so far, but we might choose not to.
- domain name should be coming: ci.hibernate.org ..not sure when, got
no replies so far from.
- authentication: just click on login, it will use OAuth2 to request
your identity via your GitHub account. Permissions to create new jobs,
edit existing jobs, run a build manually depend on your github account
be part of the Hibernate organization (or not, in which case you have
read only status)
At this stage I'd like to get a feeling if the hardware is powerful
enough, and also we need to select which other plugins we want to use,
I'm looking especially to:
- static analysis reports
- pull requests integration
both are relatively undefined, we can of course start simple and
improve later.. just checking this fits basic needs now.
Sanne
3 months, 2 weeks
v6 and load-event
by Steve Ebersole
Historically we made a terrible design mistake with the event system as a
whole. This has both a confusing design impact and a very real performance
impact. The main problem is the smashing together of things that handle
events and things that listen to such events.
In working on a problem in v6 I have come to a point where fixing this
design flaw for load events specifically would be a huge help. So I'm
going to make a proposal for how to specifically change this for load event
handling. The plan at the moment is to not make similar changes to the
other event types for now, though I certainly would like to keep them all
in mind with regard to the overall design for if/when we can get to the
others.
So I'd love feedback specifically regarding (1) general design considering
other event types and (2) issues/concerns specific to load event type.
I created a simple example at
https://gist.github.com/sebersole/2a1c3ac010a166fc91e62b088179678d
Thanks!
5 years, 8 months
Hibernate Reactive: Release day!
by Sanne Grinovero
Hi all,
we're about to test a first automated release.. Hibernate Reactive v. 0.0.1
I expect some of you might be annoyed that they had "one more cool
improvement" which didn't make it; don't be: the release process is
highly automated (thanks to Yoann!) and we will have many more
triggered in the following days as we polish the process.
Thanks,
Sanne
5 years, 8 months
Beyond checkstyle
by Sanne Grinovero
Hi all,
in Quarkus we're using a plugin which automatically reformats the code
and sorts imports.
In our older projects we've been using checkstyle; the goal has always
been to try to avoid conflicts and improve readability, but to try to
impose such consistency typically leads to a significant annoyance and
waste of time during development - so imposing checkstyle hans't been
very popular, and certainly comes at a cost.
So the idea in Quarkus has this nice effect: rather than getting "in
the way" it uses a plugin which automatically fixes the code, one
needs to just add the further changes to version control (CI can be
setup to fail rather than fix). The plugin used by Quarkus have some
drawbacks though: the code style can't be configured, and it happens
to look very different than the Hibernate conventions so I don't think
it would be useful for us.
With Hibernate Reactive I started now to explore a new tool which looks better:
- https://github.com/hibernate/hibernate-reactive/pull/191/commits/c7c47c4c...
This one is rather flexible and configurable, great support for
Gradle, and can also be set to automatically fix the code rather than
complain.
We're going to use it on Hibernate Reactive to enforce only some
essentials: license headers, remove unused imports, remove end-of-line
whitespace. I suppose we could start using it for some more advanced
rules later, but I'd be cautious about it. One high on my list of
wishlist is to have imports sorted in a standard way, as that's
another source of totally pointless, annoying conflicts.
Other projects might want to explore using it as well?
It supposedly supports Maven as well; haven't tests it though.
See:
- https://github.com/diffplug/spotless
Thanks
5 years, 8 months
HHH-6221 foreign keys with shared columns
by Jason Pyeron
I have been hunting around this morning trying to mitigate some issues of our schema and JPA mapping and https://hibernate.atlassian.net/browse/HHH-6221 seems most related.
This is a specific case following on §2.4.1 and the other bugs I have worked with recently.
Is there any more history on this bug than is in the comments of it and the related tickets? We are going to have to dive in and fix and was hoping to have a good survey of the landscape first.
We will make test case(s) along with some patches.
--- BREAK ---
Tracking internally as https://projects.pdinc.us/show_bug.cgi?id=2115 .
In our codebase we got here because of (edited for clarity)
@ManyToOne
@JoinColumns
({
@JoinColumn(name = "id", referencedColumnName = "request_id", insertable = false, updatable = false),
@JoinColumn(name = "head", referencedColumnName = "id")
})
Signature head;
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
Long id;
Repeated column in mapping for entity: Entity column: column (should be mapped with insert="false" update="false")
Which then leads to
Mixing insertable and non insertable columns in a property is not allowed: Entity.column
at org.hibernate.cfg.Ejb3Column.checkPropertyConsistency(Ejb3Column.java:718)
At this moment, using the following workaround:
@ManyToOne
@JoinColumns
({
@JoinColumn(name = "id", referencedColumnName = "request_id", insertable = false, updatable = false),
@JoinColumn(name = "head", referencedColumnName = "id", insertable = false, updatable = false)
})
Signature head;
public void setHead(Signature head)
{
this.head = head;
// https://stackoverflow.com/a/49019669/58794
head2115 = head == null ? null : head.getId();
}
private Long head2115;
@Column(name = "head")
private Long getHead2115()
{
return head2115;
}
Note: JoinFormula workaround is doubly not acceptable – 1. Nonstandard, 2. org.hibernate.mapping.Formula cannot be cast to org.hibernate.mapping.Column
5 years, 8 months
(no subject)
by Post Office
q<E�"���S�fl�N|B���L��U�I�(/�QI�/�������y�v������������o�j�g�?��k����C���LJ��jsKR�����O�M���n'�(��G�8:'�C�D�8����mF%�C��^e��r�n���}���������L�UC$W���O#r��&h!��?t�����E��j��Uj5���'?M}�
���aJ�������X}y\�
��g�vVllsU��dp�3�4Y���D���S�Zn�~JfwMP{���Qt�9���j�����&���N�#������u�7��x�.��'eWF/ �#{0�Rs�)?��3���
��<�g�q_��e|�7���5NM�����3��F,��-];�E�|��q���`���q�W9�g%t�T���e?dv��t�B�� �1k���g`��k�S9<6f3}9�h��3oE�0�>B��-�;x���8������N���f`5��z����[wZ���%m��0��;"�DC��$4R��a��(4�7�����6_�a�Ll����%�����9E�����P�d�I�2F#����;�^�rD�����Z5�~�7�1�eM!��u�0Swz���vD�n�in>��W�Di��
�z1��������u�.`����1�9���m�Gg��B���7�\`�'I�����E�(�R�9��t6�L����J���G1���j�~F-����:�V��?� A�:0�4h��,�L"���L�*"H�-8�-n��Uk��7T�����r�RI��`�!��C�w�����V������l���my�tO��R��V���Y���}��F����68%z��S��d�������.�tX%� �j�Z������D��^�����������.,2���o����{W$S^��r����)��5�Z])��~���t~���BGY��e`)���c�,��Bq�xx��&jJ��4�?��NC�����b�1q�����F
G���Sc�I����
����H�{�2���e*4���PL�i���]��D���V�7�o��MG{k^-q�{|a�vl��
SJ����^��~q�PW�V|t
Uo���k#Re��a�]s];X�F�)�Jy��G���6Bd6^H��R�;��2���/-�R���V6[���
��,!(��br���L5�a.�t��BCI�x�BT����u�D�'�����}�:�&��u�Xwv����je������}a�����p�j\����nf��r
��/��vC��H������
��
�:�����q�Qh�!��"�a��^����
� ?�j�D{f��'HoDM25��sz{�)��<re�C7J�����*�����1T�{��o����D���.��'�R �l&�N[<(3��)�Q�����1��c�:��>��F�^��l�R����������9�K��0`7���(�����8���.�8a��l�o_�I�j���MO!����H��U,�2B�����e,�&8��hMA:��h��r��9(|qp�v����O*��>%������"L�[�����!d�vo;�?�E�����'g
^�v����u!B
���<Q�N���:
��&�D'���Q�c�s�4�������]|og����5��zxi~`��gDl��Rb��j�M��/%���s��U�q�$�W#�o��|w���Q����<9U����*�q�,G��#��� z������t��A��
pd����6���-�����Y���6N�|�46q���
�sr���>�C-Dt����L���F���-g�X����Ij�y�n�������6�j6��g9qt��W*�n�����
�VT'�0���t��v1�����n;gJ��wR_T�H2x�>��L��c���-X�s��J�g�Z�F���p���`��A_J.�y��m�����h&�$wLds(���C5B�B��.����;�}k/,];��4�8%�e`�{�""�(����$�D
��1MM�g�J<Nt����8�t���Ow��]�T�.�$Z������5g7��6
|�j3���'�g4�������~�B��JZ%��Ne Sh��C>��Gi��'x�%^��1�5�#���E��p9P�Owz�w\z������)}���������W��GeE��� �X/��.�����������7jP��������.��x>��2�}��S^�ug�:�xr��%�b-*T���Nn ���X���N�{B��CF�V��w���W���*E7����0�`(���m�>�z�1yp{s������l����������
����^7V]�)6�kjO)��AEkL�H(�9����uz����6��\���9;���6������^\��R������t���
�w�����ZTn��������_�dPu�������CY��
rwMR�
��{��}���z�������X���oPrr�Of������%��[/h����G\��*�����M#���8���mP���%z�~����9zM�L)T�Yo"�d��"r����K���t�/�r�/�q�S���h���6-����viH�B�1�us����k�����!����T%������>�X�T7��0�,
����m�{�^C�.�:�P�}��O����������g�!�4<�n|�����CBN����#����1k4�
��[.#b��"��o,x���6��L��!iU���C��>
���x4Y����)�[�4QD���-�V�U��.M�-��<B��X�D��%;�
i�D*n���t��i�8H�;T�#
5 years, 8 months