High-Performance Java Persistence Newsletter, Issue 26
Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Wouldn’t that be just awesome?
Well, Hypersistence Optimizer is that tool! And it works with Spring Boot, Spring Framework, Jakarta EE, Java EE, Quarkus, or Play Framework.
So, enjoy spending your time on the things you love rather than fixing performance issues in your production system on a Saturday night!
Introduction
Welcome to a new issue of the High-Performance Java Persistence Newsletter in which we share articles, videos, workshops, and StackOverflow answers that are very relevant to any developer who interacts with a database system using Java.
Articles
The pick of this edition is this article which shows how you can host an SQLite database on GitHub pages and use it to serve dynamic content to a static generated website.
Knowing how a Clustered Index works is very important when you are using MySQL or SQL Server. For this reason, I wrote this article to help you get a good understanding of this topic.
If you’re using PostgreSQL GIN indexes, then you should definitely read this article, which explains how the gin_pending_list_limit
setting works for fastupdate
.
Talking of PostgreSQL indexes, you should also read this Percona article about BRIN indexes that can help you speed up queries with a very compact index structure.
If your Java application uses SQL Server, then you should always disable the sendStringParametersAsUnicode
. For more details about this topic, check out this article.
If you’re using MySQL and want to speed up JSON queries, then you should add a JSON path expression index. For more info about how you can do that, check out this article.
Best Tweets
Here are the best tweets I posted since the last newsletter:
Firefox on Windows pic.twitter.com/3tSHDwmVkQ
— Vlad Mihalcea (@vlad_mihalcea) April 24, 2021
Developer being asked for an estimate pic.twitter.com/gvG3tErMHw
— Vlad Mihalcea (@vlad_mihalcea) April 16, 2021
Mechanical engineers don't change their tools every 6 months because they are no longer cool.
— Vlad Mihalcea (@vlad_mihalcea) April 28, 2021
So true! pic.twitter.com/r9I0kODj4N
— Vlad Mihalcea (@vlad_mihalcea) April 14, 2021
You can definitely become a self-taught software developer.
— Vlad Mihalcea (@vlad_mihalcea) April 10, 2021
That's exactly what I did.
Project Releases
The Hibernate ORM project released the 5.4.31 version.
And, to support the JPA 3.0 spec, which changes the namespaces from javax
to jakarta
, the Hibernate 5.5 branch has been created, and the 5.5.0.Alpha1 initial version has been released.
If you’re using MySQL, then you might be interested in the 8.0.24 release, which provides several bug fixes and optimizations.

Get in touch with my latest articles!
StackOverflow Answers
The following StackOverflow answers have been trending over the past two weeks:
- First level cache not working with JPA and Hibernate
- What the difference between
CascadeType
andFetchType
- JPA difference between transaction isolation and entity locking
- How to fix Hibernate
LazyInitializationException
– failed to lazily initialize a collection of roles, could not initialize proxy – no Session - How do I add a custom
CHECK
constraint on a MySQL table? - How can I see the SQL execution plan in Oracle?