foojay

Running a CRaC Java application on Raspberry Pi

With the April release of the Zulu Build of OpenJDK, Azul announced the integration of CRaC in its version 17 of Java for Linux. Coordinated Restore at Checkpoint (CRaC) is a feature introduced in OpenJDK to improve Java’s application startup and warmup times to milliseconds from seconds or even minutes, by allowing a running application to pause, snapshot its state, …

Read More »

A Dissection of Java JDBC to PostgreSQL Connections, Part 2: Batching

This is the second part of a series where I look into how Java JDBC connections to PostgreSQL are working, to understand how to optimally implement them. If you’ve landed on this article, it might be a good idea to read my first article as well, which gives an introduction and shares how JDBC communicates with PostgreSQL using simple and …

Read More »

Seven Reasons You Should Not Ignore Flaky Tests

Imagine the scenario: you have good automated test coverage of your application code; you run your tests locally; and you have a Continuous Integration (CI) environment which runs your tests regularly. You’re doing everything right, right? Except… sometimes tests fail, and you’re not sure why. When you run the test locally, or a second time in the same environment, they …

Read More »

Foojay Status Report: July 2023

Since the start of the Friends of OpenJDK community in April 2020, we’ve had half yearly status reports, providing the highlights of the past half year, together with some stats and analysis, ending with roadmaps for the next upcoming periods. Note: Here are the earlier reports, from January – June 2021, July – December 2021, and January – June 2022. …

Read More »

Working on An Unfamiliar Codebase

In our profession, it’s common to work on an unfamiliar codebase. It happens every time one joins a new project or even needs to work on a previously untouched part in big ones. This occurrence is not limited to a developer having to fix a bug; it can be a solution architect having to design a new feature or an …

Read More »

JavaFX Links of June 2023

Again a lot has been shared this month in the jfx-central.com #LinksOfTheWeek! And that website itself is “under heavy construction” as version 2 is getting a completely new design and several improvements. Your help is wanted! See the last section of this summary… Core Rampdown Phase 1 (RDP1) for JavaFX 21 starts on July 13, 2023 at 16:00 UTC (09:00 …

Read More »

The Curious Case of Different Runtimes

While running some final tests, we noticed extremely erratic runtime behavior. It was hard to reproduce but very annoying because it means that the application runtime goes up from 5 to almost 14 min. This article tries to show how we diagnosed it and condensed it down to a few test cases. These might hopefully help us to provide some …

Read More »

How to Optimise CPU Performance Through Isolation and System Tuning

What are the challenges of tuning your CPU and system for optimal performance with Linux, and how does Chronicle Tune address them? CPU isolation and efficient system management are critical for any application which requires low-latency and high-performance computing. These measures are especially important for high-frequency trading systems, where split-second decisions on buying and selling stocks must be made. To …

Read More »