Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
facd751
Memgraph 3.9
gitbuda Feb 12, 2026
d6f7707
Merge main
gitbuda Mar 10, 2026
ca73147
Add embeddings memory tracking docs (#1556)
DavIvek Mar 11, 2026
42c75d0
Add vector index creation using functions docs (#1555)
DavIvek Mar 11, 2026
26e7290
Start adding changelog items
gitbuda Mar 11, 2026
379f764
Add more changelog items
gitbuda Mar 11, 2026
3c6e4f0
Complete changelog item
gitbuda Mar 11, 2026
b14a629
Update --storage-access-timeout-sec runtime flag info (#1554)
andrejtonev Mar 11, 2026
45f8522
Add mention that modifying users in community builds loses user auth …
colinbarry Mar 11, 2026
dc8c96a
Add license check logic update (#1553)
andrejtonev Mar 11, 2026
22c97d4
Add docs for log retention days (#1550)
as51340 Mar 11, 2026
64f948d
Add docs for async logs (#1549)
as51340 Mar 11, 2026
9569722
Add server side parameters docs (#1546)
DavIvek Mar 11, 2026
0899d72
Add missing server side params release note
gitbuda Mar 11, 2026
c50dc5f
Update SHOW TRANSACTIONS docs (#1545)
andrejtonev Mar 11, 2026
205a73b
Add section on using GDB in Memgraph Helm charts (#1544)
as51340 Mar 11, 2026
4c88737
Add section on profiling in Memgraph (#1543)
as51340 Mar 11, 2026
6b00c2d
Add S3 core dumps docs (#1542)
as51340 Mar 11, 2026
25a5b34
Add PropertyStore float precision docs (#1541)
andrejtonev Mar 11, 2026
1bf8a54
Add Vertex/Edge size update docs (#1540)
andrejtonev Mar 11, 2026
b861e71
feat: Parameter 'deltas_batch_progress_size' (#1538)
as51340 Mar 11, 2026
4b7e40a
feat: Coordinator request forwarding (#1535)
as51340 Mar 11, 2026
b56ecee
Merge branch 'main' into memgraph-3-9
gitbuda Mar 11, 2026
d2c075c
Remove breaking section
gitbuda Mar 11, 2026
e664313
Add some grammar fixes
gitbuda Mar 12, 2026
58a83b3
Add minor fix
gitbuda Mar 12, 2026
90bc135
Add the pre-release check skill + add missing chengelog item
gitbuda Mar 12, 2026
157e8f8
Update image naming due to 1.34 K8s (#1561)
as51340 Mar 18, 2026
74215d8
Add information about swapping DNS (#1560)
as51340 Mar 18, 2026
2735df7
Add information about upgrading to 3.9 (#1559)
as51340 Mar 18, 2026
5bd49b0
Make the changelog up-to-date
gitbuda Mar 18, 2026
96ab859
Add support for HA volumes (#1539)
as51340 Mar 18, 2026
aff7aed
Add pre-release improvements and update SKILLs
gitbuda Mar 18, 2026
3e1f29e
Apply formatting
gitbuda Mar 18, 2026
61d8948
Connect check and write-changelog item skills
gitbuda Mar 18, 2026
6caa086
Update pages/clustering/high-availability/best-practices.mdx
gitbuda Mar 18, 2026
001e64e
Update pages/clustering/high-availability/best-practices.mdx
gitbuda Mar 18, 2026
3fe7fad
Update pages/clustering/high-availability/best-practices.mdx
gitbuda Mar 18, 2026
4e24247
Update pages/data-migration/parquet.mdx
gitbuda Mar 18, 2026
b92d108
Update pages/data-migration/json.mdx
gitbuda Mar 18, 2026
59c065e
Add to skill
vpavicic Mar 19, 2026
83eb4bf
Add additional grammar fixes
gitbuda Mar 23, 2026
2ecf611
Add pre-release SKILL
gitbuda Mar 23, 2026
1444c7c
feat: Priority class name (#1564)
as51340 Mar 25, 2026
46437f9
feat: External LB access service (#1565)
as51340 Mar 25, 2026
60aed72
feat: Node affinity (#1566)
as51340 Mar 25, 2026
f7fedc4
update sitemap
mattkjames7 Mar 25, 2026
b41caca
Merge branch 'main' into memgraph-3-9
mattkjames7 Mar 25, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
CLAUDE.md
.claude/
# next.js
.next
node_modules
Expand Down
13 changes: 13 additions & 0 deletions pages/advanced-algorithms/available-algorithms/migrate.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,19 @@ filter, and convert relational data into a graph format.
| **Implementation** | Python |
| **Parallelism** | sequential |

<Callout type="info">
When running multiple migrations against the same source, avoid repeating the `config` map in every call.
Use [server-side parameters](/database-management/server-side-parameters) to store the connection config once
and reference it as `$config` across all your queries:

```cypher
SET GLOBAL PARAMETER pg_config = {user: 'memgraph', password: 'password', host: 'localhost', database: 'demo_db'};

CALL migrate.postgresql('users', $pg_config) YIELD row CREATE (u:User {id: row.id});
CALL migrate.postgresql('orders', $pg_config) YIELD row CREATE (o:Order {id: row.id});
```
</Callout>

---

## Procedures
Expand Down
8 changes: 4 additions & 4 deletions pages/ai-ecosystem/graph-rag/atomic-pipelines.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,9 @@ Offer the ability to compute embeddings during the preprocessing or retrieval
stages.
11. [`llm.complete`](/advanced-algorithms/available-algorithms/llm) function:
Allows you to call any LLM under any given Cypher query.
12. Server-side parameters: Could be used for many different things, but in this
context, the parameters help you with managing configuration under any given
query or pipeline.
12. [Server-side parameters](/database-management/server-side-parameters): Could
be used for many different things, but in this context, the parameters help you
with managing configuration under any given query or pipeline.

## Question and Pipeline Types

Expand Down Expand Up @@ -107,4 +107,4 @@ exists, it synthesizes what is missing or not well-covered. Example use cases:
- **Publishing**: *"I want to write a book, which important topics in this
domain are not yet well covered in the existing literature?"*

![atomic_graphrag_pipelines](/pages/ai-ecosystem/graph-rag/atomic-pipelines/atomic-graphrag-pipelines.png)
![atomic_graphrag_pipelines](/pages/ai-ecosystem/graph-rag/atomic-pipelines/atomic-graphrag-pipelines.png)
12 changes: 12 additions & 0 deletions pages/clustering/high-availability.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -60,5 +60,17 @@ production-ready clusters, scaling patterns, cross–data center deployments, an
advanced architectures for low-latency or geographically distributed
environments.

## Upgrades & migration

### [Upgrades](/database-management/upgrades)

Plan Memgraph version upgrades, including standalone and HA clusters. Use the
[version-specific guides](/database-management/upgrades/specific-versions) when
moving between major releases.

### [In-service software upgrade (ISSU) on Kubernetes](/clustering/high-availability/setup-ha-cluster-k8s#in-service-software-upgrade-issu)

For HA on Kubernetes, Memgraph supports rolling upgrades with minimal downtime
when you follow the ISSU procedure on the Helm chart setup page.

<CommunityLinks/>
1 change: 1 addition & 0 deletions pages/clustering/high-availability/_meta.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,5 @@ export default {
"best-practices": "Best practices",
"ha-commands-reference": "Reference commands",
"ha-reference-architectures": "Reference architectures",
"migrating-to-v3-9-ha": "Migrating to v3.9 HA",
}
13 changes: 13 additions & 0 deletions pages/clustering/high-availability/best-practices.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -279,6 +279,19 @@ The configuration value can be controlled using the query:
SET COORDINATOR SETTING 'max_replica_read_lag' TO '10' ;
```

### `deltas_batch_progress_size`

Users can control how often REPLICAs report back to the MAIN that they're still processing the data (transactions, WALs, snapshots)
the MAIN has sent to them. The default value is 100'000, which should be enough for most of your transactions.
However, if processing 100'000 deltas takes more than 30s (because you're dealing with large deltas or you have older CPUs),
you can set the configuration value `deltas_batch_progress_size` to a smaller value. This will avoid timeouts on REPLICAs so
you won't see the query exception "At least one SYNC replica has not committed", but at the cost of lower throughput since REPLICAs
will be sending in-progress messages to the MAIN more often.

```
SET COORDINATOR SETTING 'deltas_batch_progress_size' TO '50000';
```

## Observability

Monitoring cluster health is essential. Key metrics include:
Expand Down
21 changes: 12 additions & 9 deletions pages/clustering/high-availability/ha-commands-reference.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,18 @@ Memgraph High Availability (HA) cluster.
## Cluster registration commands

<Callout type="warning">
**Important:** **All registration commands (adding coordinators and registering
data instances) must be executed on the *same* coordinator.** You may choose any
**Important:** You may choose any
coordinator for the initial setup; it automatically becomes the leader. After
setup, the choice no longer matters.
</Callout>

<Callout type="info">
All queries can be run on any coordinator. If currently the coordinator is not a
leader, the query will be automatically forwarded to the current leader and
executed there. This is because the Raft protocol specifies that only the
leader should accept changes in the cluster.
</Callout>

### `ADD COORDINATOR`

Adds a coordinator to the cluster.
Expand Down Expand Up @@ -78,7 +84,6 @@ REMOVE COORDINATOR coordinatorId;

{<h4 className="custom-header"> Behavior & implications </h4>}

- Must be executed on the **leader** coordinator.
- Leader coordinator **cannot** remove itself. To remove the leader, first
trigger a leadership change.

Expand All @@ -90,7 +95,9 @@ REMOVE COORDINATOR 2;

### `UPDATE CONFIG`

Updates the configuration of the data instance/coordinator in the cluster.
Updates the configuration of the data instance/coordinator in the cluster. Use
this command to update the DNS of your bolt servers, for example, when
migrating to new load balancers.

```cypher
UPDATE CONFIG FOR ( INSTANCE instanceName | COORDINATOR coordinatorServerId ) configsMap=configMap ;
Expand All @@ -106,7 +113,6 @@ of each instance.

{<h4 className="custom-header"> Behavior & implications </h4>}

- Must be executed on the **leader** coordinator.
- Only bolt server can be updated.

{<h4 className="custom-header"> Example </h4>}
Expand Down Expand Up @@ -294,8 +300,7 @@ SHOW INSTANCE;

### `SHOW REPLICATION LAG`

Shows replication lag (in committed transactions) for all instances. Must be run
on the **leader**.
Shows replication lag (in committed transactions) for all instances.

```cypher
SHOW REPLICATION LAG;
Expand Down Expand Up @@ -326,7 +331,5 @@ FORCE RESET CLUSTER STATE;

{<h4 className="custom-header"> Implications </h4>}

- Must be executed on the **leader** coordinator.


<CommunityLinks/>
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,19 @@ Below is a cleaned-up categorization.

#### Coordinator → Coordinator RPCs

| RPC | Purpose | Description |
| -------------------- | ------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `ShowInstancesRpc` | Follower requests cluster state from leader | Sent by a follower coordinator to the leader coordinator when a user executes `SHOW INSTANCES` through the follower. |
| RPC | Purpose | Description |
| ------------------------ | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `ShowInstancesRpc` | Follower requests cluster state from leader. | Sent by a follower coordinator to the leader coordinator when a user executes `SHOW INSTANCES` through the follower. |
| `AddCoordinatorRpc` | Follower requests adding coordinator. | Sent by a follower coordinator to the leader coordinator when a user executes `ADD COORDINATOR` through the follower. |
| `RemoveCoordinatorRpc` | Follower requests removing coordinator. | Sent by a follower coordinator to the leader coordinator when a user executes `REMOVE COORDINATOR` through the follower. |
| `RegisterInstanceRpc` | Follower requests registering an instance. | Sent by a follower coordinator to the leader coordinator when a user executes `REGISTER INSTANCE` through the follower. |
| `UnregisterInstanceRpc` | Follower requests unregistering an instance. | Sent by a follower coordinator to the leader coordinator when a user executes `UNREGISTER INSTANCE` through the follower. |
| `SetInstanceToMainRpc` | Follower requests updating MAIN instance. | Sent by a follower coordinator to the leader coordinator when a user executes `SET INSTANCE TO MAIN` through the follower. |
| `DemoteInstanceRpc` | Follower requests demoting an instance. | Sent by a follower coordinator to the leader coordinator when a user executes `DEMOTE INSTANCE` through the follower. |
| `UpdateConfigRpc` | Follower requests updating config. | Sent by a follower coordinator to the leader coordinator when a user executes `UPDATE CONFIG` through the follower. |
| `ForceResetRpc` | Follower requests resetting cluster state. | Sent by a follower coordinator to the leader coordinator when a user executes `FORCE RESET` through the follower. |
| `GetRoutingTableRpc` | Follower requests a routing table. | Sent by a follower coordinator to the leader coordinator when a user connects using `bolt+routing` through the follower. |
| `CoordReplicationLagRpc` | Follower requests replication lag info. | Sent by a follower coordinator to the leader coordinator when a user executes `SHOW REPLICATION LAG` through the follower. |


#### Coordinator → Data Instance RPCs
Expand Down
42 changes: 42 additions & 0 deletions pages/clustering/high-availability/migrating-to-v3-9-ha.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
title: Migrating to v3.9 HA
description: Learn about the required migration steps when upgrading a Memgraph high-availability cluster to version 3.9.
---

import { Callout } from 'nextra/components'
import { Steps } from 'nextra/components'

# Migrating to v3.9 HA

Memgraph 3.9 includes a fix for a bug in how durability is handled on
coordinators in a high-availability (HA) setup. Because of this fix, **all
coordinator data directories must be cleaned and coordinators must be started
fresh**.

Data instances are not affected and can stay unchanged.

<Callout type="warning">
Upgrading to 3.9 **cannot be performed without downtime** if you are using a
routing connection to connect to the currently writable instance. You can,
however, keep using direct Bolt connections to data instances during this
maintenance period.
</Callout>

<Steps>

{<h3 className="custom-header">Clean coordinator data directories</h3>}

Remove the data directories of all coordinators. If you are running Memgraph HA
in Kubernetes, delete the coordinators' PVCs and PVs before the restart.

{<h3 className="custom-header">Restart coordinators</h3>}

Start all coordinators with the new Memgraph 3.9 version.

{<h3 className="custom-header">Reconnect the cluster</h3>}

After the coordinators are running, reconnect your cluster by executing
`REGISTER INSTANCE` and `ADD COORDINATOR` queries for each data instance and
coordinator respectively.

</Steps>
Loading