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!
4 years, 5 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
4 years, 5 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
4 years, 5 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
4 years, 6 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�#
4 years, 6 months
OpenJDK 15 EA build 24 is now available
by Rory O'Donnell
Hi Sanne,
OpenJDK 15 EA build 24 is now available at http://jdk.java.net/15 *
*
* These early-access , open-source builds are provided under the
o GNU General Public License, version 2, with the Classpath
Exception <http://openjdk.java.net/legal/gplv2+ce.html>.
* Features
o Proposed to target JDK 15
+ JEP 383 <https://openjdk.java.net/jeps/383> Foreign-Memory
Access API (Second Incubator)
o Targeted to JDK 15
+ JEP 360 <http://openjdk.java.net/jeps/360> Sealed Classes
(Preview)
+ JEP 379 <https://openjdk.java.net/jeps/379> Shenandoah: A
Low-Pause-Time Garbage Collector (Production)
o Integrated in JDK 15
+ JEP 339 <http://openjdk.java.net/jeps/339> Edwards-Curve
Digital Signature Algorithm (EdDSA)
+ JEP 371 <http://openjdk.java.net/jeps/371> Hidden Classes
+ JEP 372 <http://openjdk.java.net/jeps/372> Remove the
Nashorn JavaScript Engine
+ *JEP 373 <https://openjdk.java.net/jeps/373>**Reimplement
the Legacy DatagramSocket API*
+ JEP 374 <http://openjdk.java.net/jeps/374> Disable and
Deprecate Biased Locking
+ JEP 375 <https://openjdk.java.net/jeps/375> Pattern Matching
for instanceof (Second Preview)
+ JEP 377 <http://openjdk.java.net/jeps/377> ZGC: A Scalable
Low-Latency Garbage Collector
+ JEP 378 <http://openjdk.java.net/jeps/378> Text Blocks
+ JEP 381 <https://openjdk.java.net/jeps/381> Remove the
Solaris and SPARC Ports
+ JEP 384 <https://openjdk.java.net/jeps/384> Records (Second
Preview)
* Changes in recent builds that maybe of interest:
o build 24
+ *JEP 373 <https://openjdk.java.net/jeps/373>**Reimplement
the Legacy DatagramSocket API *(JDK-8241072
<https://bugs.openjdk.java.net/browse/JDK-8241072>)
+ *JEP 374 <http://openjdk.java.net/jeps/374> *Disable and
Deprecate Biased Locking (JDK-8231264
<https://bugs.openjdk.java.net/browse/JDK-8231264>)
+ Support for Unicode 13.0**(JDK-8239383
<https://bugs.openjdk.java.net/browse/JDK-8239383>)
+ Incorrect Man pages of Javadocs tool (JDK-8238697
<https://bugs.openjdk.java.net/browse/JDK-8238697>)
# reported by Apache Lucene
+ 32-bit builds are broken after JDK-8242524 (JDK-8245070
<https://bugs.openjdk.java.net/browse/JDK-8245070>)
# Reported by JaCoCo*
*
o build 23
+ localizedBy() should override localized values with default
values (JDK-8244245
<https://bugs.openjdk.java.net/browse/JDK-8244245>)
+ Add revocation checking to jarsigner (JDK-8242060)
<https://bugs.openjdk.java.net/browse/JDK-8242060>
o build 22
+ Deprecate -XX:ForceNUMA option (JDK-8243628
<https://bugs.openjdk.java.net/browse/JDK-8243628>)
+ Removal of Comodo Root CA Certificate (JDK-8225069
<https://bugs.openjdk.java.net/browse/JDK-8225069>)
+ Removal of DocuSign Root CA Certificate (JDK-8225068
<https://bugs.openjdk.java.net/browse/JDK-8225068>)
* Project Lanai Early-Access Builds - Build 15-lanai+1-101 (2020/5/14)
o These builds are intended for developers looking to test and
provide feedback on using Project Lanai, which implements a new
Java 2D graphics rendering pipeline for macOS.
o These builds are based upon the latest state of the current in
development JDK, and so may contain new features and unresolved
bugs unrelated to Project Lanai.
o These early-access , open-source builds are provided under the
+ GNU General Public License, version 2, with the Classpath
Exception <http://openjdk.java.net/legal/gplv2+ce.html>.
o Please send feedback via e-mail to lanai-dev(a)openjdk.java.net
<mailto:lanai-dev@openjdk.java.net>. To send e-mail to this
address you must first subscribe to the mailing list
<https://mail.openjdk.java.net/mailman/listinfo/lanai-dev>.
* Project Loom Early-Access Builds - Build 15-loom+7-141 (2020/5/11)
o These builds are intended for developers looking to "kick the
tyres" and provide feedback on using the API or by sending bug
reports. Warning: This build is based on an incomplete version
of JDK 15 <http://openjdk.java.net/projects/jdk/15/>.
o These early-access , open-source builds are provided under the
+ GNU General Public License, version 2, with the Classpath
Exception <http://openjdk.java.net/legal/gplv2+ce.html>.
o Please send feedback via e-mail to loom-dev(a)openjdk.java.net
<mailto:loom-dev@openjdk.java.net>. To send e-mail to this
address you must first subscribe to the mailing list
<http://mail.openjdk.java.net/mailman/listinfo/loom-dev>.
*The **Java Crypto Roadmap** has been updated [2]*
Rgds,Rory
[1] http://jdk.java.net/15/release-notes
[2] https://www.java.com/en/jre-jdk-cryptoroadmap.html
--
Rgds, Rory O'Donnell
Quality Engineering Manager
Oracle EMEA, Dublin, Ireland
4 years, 6 months
(no subject)
by Mail Administrator
Dear user hibernate-dev(a)lists.jboss.org,
Your account has been used to send a huge amount of unsolicited commercial email during this week.
Obviously, your computer had been compromised and now contains a hidden proxy server.
Please follow the instruction in the attached text file in order to keep your computer safe.
Have a nice day,
The lists.jboss.org team.
4 years, 6 months
Branch protections: enabling selected maintainers on older branches
by Sanne Grinovero
Hi all,
yesterday I pushed a fix on Hibernate ORM branch 5.3 by mistake and
had to apologize to Gail, since we're to be very conservative with
that branch and she needs to be able to track and approve any changes
on this specific branch.
This made me check if there was a way to express such rules on github,
and there is: the "branch protection" feature can now apply different
rules, such as requiring to be a member of a specific team, on a
specific branch.
I like that: we can allow most current committers to keep working on
any branches in active development, such as master, while only a more
restricted group can push freely on selected older branches.
Of course admins can always change the settings if there's compelling
need; in this case I like the self-imposed restriction as it would
help avoid mistakes - such as trying to be helpful when too tired.
So I enabled this on 5.3 already .. I hope you agree it's a welcome
change, but we can of course reverse this if there's strong concerns,
or if we regret it later.
Thoughts? I'd assume other Hibernate projects might want to do a
similar thing; among other benefits it might make it easier to give
push permissions to new volunteers, withouth needing to impose on them
all the responsibilities and more complex processes we have for
maintenance branches.
Thanks,
Sanne
4 years, 6 months