> For the complete documentation index, see [llms.txt](https://mariadb.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mariadb.com/docs/release-notes/connectors/java/3.5/3.5.9.md).

# Connector/J 3.5.9 Release Notes

<a href="https://mariadb.com/downloads/connectors/connectors-data-access/java8-connector" class="button primary">Download</a> <a href="/pages/11aRnlmZLQuDGG1JwEfE" class="button secondary">Release Notes</a> <a href="/pages/EwLPMbILOFNWy5ytV1Gh" class="button secondary">Changelog</a> <a href="/spaces/CjGYMsT2MVP4nd3IyW2L/pages/2w3wOBJquBYSZu4GiT0h" class="button secondary">Connector/J Overview</a>

**Release date:** 09 Jun 2026

MariaDB Connector/J 3.5.9 is a [***Stable***](/docs/release-notes/community-server/about/release-criteria.md) ***(GA)*** release.

{% hint style="info" %}
**For an overview of MariaDB Connector/J see the** [**About MariaDB Connector/J**](/docs/connectors/mariadb-connector-j/about-mariadb-connector-j.md) **page**
{% endhint %}

## Key Enhancements

* [CONJ-1223](https://jira.mariadb.org/browse/CONJ-1223) - Cache TLS trust/key managers across connections to reduce SSL connection cost
* [CONJ-1314](https://jira.mariadb.org/browse/CONJ-1314) - Add SPI for interactive dialog (PAM) authentication callback
* [CONJ-1311](https://jira.mariadb.org/browse/CONJ-1311) - Add dedicated option `useIpForKillQuery` for query cancellation
* [CONJ-1310](https://jira.mariadb.org/browse/CONJ-1310) - Add full native-image (GraalVM) support and CI coverage

## Bugs Fixed

* [CONJ-1320](https://jira.mariadb.org/browse/CONJ-1320) - PAM (dialog) authentication must require a secure connection (TLS or unix socket), like `mysql_clear_password`
* [CONJ-1319](https://jira.mariadb.org/browse/CONJ-1319) - Use constant-time comparison when validating the server certificate fingerprint
* [CONJ-1318](https://jira.mariadb.org/browse/CONJ-1318) - Enforce `allowLocalInfile=false` on the server's local-infile request, so a malicious server cannot read a client file despite the option being disabled
* [CONJ-1322](https://jira.mariadb.org/browse/CONJ-1322) - Match `LOAD LOCAL INFILE` filename case-sensitively
* [CONJ-1323](https://jira.mariadb.org/browse/CONJ-1323) - `LOAD LOCAL INFILE` validation rejects statements preceded by line comments
* [CONJ-1324](https://jira.mariadb.org/browse/CONJ-1324) - Fix SQL parser to correctly handle `--` in expressions and reset `lastChar` after block comments
* [CONJ-1315](https://jira.mariadb.org/browse/CONJ-1315) - Cap `BigDecimal`/`BigInteger` string parsing length to prevent CPU exhaustion in case of a man-in-the-middle
* [CONJ-1317](https://jira.mariadb.org/browse/CONJ-1317) - Ensure a non-UTF-8 character set cannot be used for protocol exchanges
* [CONJ-1316](https://jira.mariadb.org/browse/CONJ-1316) - Pin `Locale.ROOT` on locale-sensitive call sites and date/time/Duration text formatting (fixes locale-dependent parsing/formatting, e.g. under `tr_TR`)
* [CONJ-1304](https://jira.mariadb.org/browse/CONJ-1304) - Read `CallableStatement` parameter metadata from `mysql.proc`, with MySQL `information_schema` fallback
* [CONJ-1299](https://jira.mariadb.org/browse/CONJ-1299) - Keep `VALUES` literals after the last placeholder when rewriting batches
* [CONJ-1313](https://jira.mariadb.org/browse/CONJ-1313) - Race condition in `HaMode#getAvailableHostInOrder` can cause a `NullPointerException`
* [CONJ-1311](https://jira.mariadb.org/browse/CONJ-1311) - `Connection.cancelCurrentQuery` fails with `SslMode.VERIFY_FULL` when the client socket IP is set
* [CONJ-1264](https://jira.mariadb.org/browse/CONJ-1264) - Handle `LocalDateTime` as a zoneless wall-clock value

## Changelog

For a complete list of changes made in MariaDB Connector/J 3.5.9, with links to detailed\
information on each push, see the [changelog](/docs/release-notes/connectors/java/changelogs/3.5/3.5.9.md).

<sub>*This page is: Copyright © 2025 MariaDB. All rights reserved.*</sub>

{% @marketo/form formid="4316" formId="4316" %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mariadb.com/docs/release-notes/connectors/java/3.5/3.5.9.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
