[object Object]

← back to Exo

up gossipsub limit (#1671)

009615972850003ebee1e537a9c1bac057ecdb7d · 2026-03-06 14:20:51 +0000 · Evan Quiney

bump gossipsub limit to 8MB + add warning
this is a bandaid solution for large messages while we figure out the
point to point protocol

Files touched

Diff

commit 009615972850003ebee1e537a9c1bac057ecdb7d
Author: Evan Quiney <evanev7@gmail.com>
Date:   Fri Mar 6 14:20:51 2026 +0000

    up gossipsub limit (#1671)
    
    bump gossipsub limit to 8MB + add warning
    this is a bandaid solution for large messages while we figure out the
    point to point protocol
---
 rust/exo_pyo3_bindings/pyproject.toml | 2 +-
 rust/networking/src/swarm.rs          | 2 +-
 src/exo/routing/router.py             | 4 ++++
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/rust/exo_pyo3_bindings/pyproject.toml b/rust/exo_pyo3_bindings/pyproject.toml
index 9b5cfa95..17c170cb 100644
--- a/rust/exo_pyo3_bindings/pyproject.toml
+++ b/rust/exo_pyo3_bindings/pyproject.toml
@@ -4,7 +4,7 @@ build-backend = "maturin"
 
 [project]
 name = "exo_pyo3_bindings"
-version = "0.2.0"
+version = "0.2.1"
 description = "Add your description here"
 readme = "README.md"
 authors = [
diff --git a/rust/networking/src/swarm.rs b/rust/networking/src/swarm.rs
index d1991485..15babc43 100644
--- a/rust/networking/src/swarm.rs
+++ b/rust/networking/src/swarm.rs
@@ -263,7 +263,7 @@ mod behaviour {
         gossipsub::Behaviour::new(
             MessageAuthenticity::Signed(keypair.clone()),
             ConfigBuilder::default()
-                .max_transmit_size(1024 * 1024)
+                .max_transmit_size(8 * 1024 * 1024)
                 .validation_mode(ValidationMode::Strict)
                 .build()
                 .expect("the configuration should always be valid"),
diff --git a/src/exo/routing/router.py b/src/exo/routing/router.py
index 793cd8e3..0d4f4190 100644
--- a/src/exo/routing/router.py
+++ b/src/exo/routing/router.py
@@ -219,6 +219,10 @@ class Router:
             async for topic, data in networked_items:
                 try:
                     logger.trace(f"Sending message on {topic} with payload {data}")
+                    if len(data) > 1024 * 1024:
+                        logger.warning(
+                            "Sending overlarge payload, network performance may be temporarily degraded"
+                        )
                     await self._net.gossipsub_publish(topic, data)
                 except NoPeersSubscribedToTopicError:
                     pass

← 7a36d396 docs: Update documentation for v1.0.68 release (#1667)  ·  back to Exo  ·  Ciaran/minor download bugs (#1674) 79c8dbea →