> ## Documentation Index
> Fetch the complete documentation index at: https://docs.canton.network/llms.txt
> Use this file to discover all available pages before exploring further.

# 3.5.12

> Canton 3.5.12 release notes.

# Release of Canton 3.5.12

Canton 3.5.12 has been released on August 07, 2026.

## Summary

This is a maintenance release that ships improvements for CantonBFT and the
traffic enforcement app, as well as improving the mitigation for a critical fix
shipped with 3.4.11.

## What’s New

### Traffic Enforcement App

* This release reworks and improves the way local traffic accounts on the participant are updated.
  In particular the `par_traffic_enforcement_event` is dropped and re-created from scratch. Events were never exposed through the API
  so this will only affect users who have been accessing the database directly.
  Importantly, **the traffic balances are not affected by this change and account balance continuity is preserved**, and the API for querying traffic balances remains unchanged.
* Various bug fixes in the in-memory implementation of the traffic accounting

### CantonBFT Improvements

* Upon completing the locally-led segment in an epoch, CantonBFT nodes now dynamically increase the rate of retransmission requests to decrease the time it takes to retrieve any missing messages from other peers' segments.
* Added a new metric `relative-segment-latency` that records the rate and latency it takes to complete a segment after the segment led by this node completed.
* Lower log level of dissemination: some batch dissemination logs in CantonBFT were logged at WARN level, which is too high because they don't imply abnormal conditions nor non-compliant behavior. This change lowers their log level to INFO.

## Bugfixes

### (26-005, Critical): LSU: Cancelled LSU leftover state prevents PN startup after a successful LSU

A mitigation of this bug has already been shipped in 3.4.11, this patch release
improves the early fix.

#### Issue Description

Cancelled LSU left stale state that combined with a subsequent successful LSU state would prevent a participant node from starting up due to it erroneously recognizing the state mixture as an incomplete LSU and failing to complete it.

#### Affected Deployments

Participant nodes

#### Affected Versions

All versions before 3.5.11

#### Impact

Participants will not start up if restarted for any reason

#### Symptom

Participant node does not start with a log message: `Attempting to run Startup participant node failed with Unable to finish upgrade ...`

#### Workaround

Do not restart a PN before upgrading to a non-affected version. For the cancelled DevNet LSU to the physical synchronizer id `::35-4` the issue could be mitigated by running a database query:

```
update par_synchronizer_connection_configs
set
  status = 'I'
where
  physical_synchronizer_id = 'global-domain::1220be58c29e65de40bf273be1dc2b266d43a9a002ea5b18955aeef7aac881bb471a::35-4';
```

#### Likeliness

The issue happens on a restart of the participant node, regardless of the restart cause, including normal operational procedures.

#### Recommendation

Upgrade to 3.5.11

## Compatibility

The following Canton protocol versions are supported:

| Dependency               | Version |
| ------------------------ | ------- |
| Canton protocol versions | 34, 35  |

Canton has been tested against the following versions of its dependencies:

| Dependency   | Version                                                                                                                                                                                                                                             |
| ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Java Runtime | OpenJDK 64-Bit Server VM (build 21.0.12+2-nixos, mixed mode, sharing)                                                                                                                                                                               |
| Postgres     | Recommended: PostgreSQL 17.10 (Debian 17.10-1.pgdg13+1) – Also tested: PostgreSQL 14.23 (Debian 14.23-1.pgdg13+1), PostgreSQL 15.18 (Debian 15.18-1.pgdg13+1), PostgreSQL 16.14 (Debian 16.14-1.pgdg13+1), PostgreSQL 18.4 (Debian 18.4-1.pgdg13+1) |
