Skip to content

Conversation

@bkioshn
Copy link
Contributor

@bkioshn bkioshn commented Dec 1, 2025

Description

Implement quiet timer for doc-sync

Related Issue(s)

This PR covers 3. Keep alive mechanism

Closes #703

Description of Changes

  • Modify the Channel constructor to create timers and start the quiet timer
  • The timer is moved to hermes-ipfs

Related Pull Requests

input-output-hk/catalyst-libs#698

Test

Keepalive failed: Keepalive publish failed indicate that the send_new_keepalive is being sent.
The failure is expected because there is only one node running.

{"timestamp":"2025-12-11T03:44:46.955289671Z","level":"INFO","fields":{"message":"Created Doc Sync Channel: documents"},"target":"hermes::runtime_extensions::hermes::doc_sync::host","filename":"bin/src/runtime_extensions/hermes/doc_sync/host.rs","line_number":138,"threadName":"main","threadId":"ThreadId(1)"}
{"timestamp":"2025-12-11T03:45:25.766862744Z","level":"ERROR","fields":{"message":"pubsub_publish failed: NoPeersSubscribedToTopic","topic":"documents.new"},"target":"hermes::ipfs::task","filename":"bin/src/ipfs/task.rs","line_number":117,"threadId":"ThreadId(6)"}
{"timestamp":"2025-12-11T03:45:25.766928608Z","level":"WARN","fields":{"message":"Keepalive failed: Keepalive publish failed: Errno { code: 12, name: \"pubsub-publish-error\", message: \"Unable to publish to IPFS topic.\" }"},"target":"hermes_ipfs::doc_sync::timers::state","filename":"/home/bkioshn/.cargo/git/checkouts/catalyst-libs-ea5fae4b3770f96d/4885498/rust/hermes-ipfs/src/doc_sync/timers/state.rs","line_number":98,"threadId":"ThreadId(18)"}
{"timestamp":"2025-12-11T03:46:06.464535951Z","level":"ERROR","fields":{"message":"pubsub_publish failed: NoPeersSubscribedToTopic","topic":"documents.new"},"target":"hermes::ipfs::task","filename":"bin/src/ipfs/task.rs","line_number":117,"threadId":"ThreadId(6)"}
{"timestamp":"2025-12-11T03:46:06.464649354Z","level":"WARN","fields":{"message":"Keepalive failed: Keepalive publish failed: Errno { code: 12, name: \"pubsub-publish-error\", message: \"Unable to publish to IPFS topic.\" }"},"target":"hermes_ipfs::doc_sync::timers::state","filename":"/home/bkioshn/.cargo/git/checkouts/catalyst-libs-ea5fae4b3770f96d/4885498/rust/hermes-ipfs/src/doc_sync/timers/state.rs","line_number":98,"threadId":"ThreadId(18)"}
{"timestamp":"2025-12-11T03:46:32.868180449Z","level":"ERROR","fields":{"message":"pubsub_publish failed: NoPeersSubscribedToTopic","topic":"documents.new"},"target":"hermes::ipfs::task","filename":"bin/src/ipfs/task.rs","line_number":117,"threadId":"ThreadId(6)"}
{"timestamp":"2025-12-11T03:46:32.868260179Z","level":"WARN","fields":{"message":"Keepalive failed: Keepalive publish failed: Errno { code: 12, name: \"pubsub-publish-error\", message: \"Unable to publish to IPFS topic.\" }"},"target":"hermes_ipfs::doc_sync::timers::state","filename":"/home/bkioshn/.cargo/git/checkouts/catalyst-libs-ea5fae4b3770f96d/4885498/rust/hermes-ipfs/src/doc_sync/timers/state.rs","line_number":98,"threadId":"ThreadId(18)"}
{"timestamp":"2025-12-11T03:47:00.090811034Z","level":"ERROR","fields":{"message":"pubsub_publish failed: NoPeersSubscribedToTopic","topic":"documents.new"},"target":"hermes::ipfs::task","filename":"bin/src/ipfs/task.rs","line_number":117,"threadId":"ThreadId(6)"}
{"timestamp":"2025-12-11T03:47:00.090876968Z","level":"WARN","fields":{"message":"Keepalive failed: Keepalive publish failed: Errno { code: 12, name: \"pubsub-publish-error\", message: \"Unable to publish to IPFS topic.\" }"},"target":"hermes_ipfs::doc_sync::timers::state","filename":"/home/bkioshn/.cargo/git/checkouts/catalyst-libs-ea5fae4b3770f96d/4885498/rust/hermes-ipfs/src/doc_sync/timers/state.rs","line_number":98,"threadId":"ThreadId(18)"}
{"timestamp":"2025-12-11T03:47:36.1963705Z","level":"ERROR","fields":{"message":"pubsub_publish failed: NoPeersSubscribedToTopic","topic":"documents.new"},"target":"hermes::ipfs::task","filename":"bin/src/ipfs/task.rs","line_number":117,"threadId":"ThreadId(6)"}

Please confirm the following checks

  • My code follows the style guidelines of this project
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream module

Base automatically changed from feat/703/new-topic to main December 1, 2025 13:53
@bkioshn bkioshn marked this pull request as draft December 1, 2025 14:02
@aido-mth aido-mth force-pushed the feat/703/new-topic-timer branch from a67bc0a to d5e8a9d Compare December 4, 2025 08:57
@bkioshn bkioshn changed the title wip: implement quiet timer feat(hermes): Implement Timers Dec 8, 2025
@bkioshn bkioshn added the squad: hermetics Hermes Backend, System Development & Integration Team label Dec 10, 2025
@bkioshn bkioshn added this to Catalyst Dec 10, 2025
@bkioshn bkioshn changed the title feat(hermes): Implement Timers feat(hermes): Implement quiet timers Dec 10, 2025
@bkioshn bkioshn moved this from New to 👀 In review in Catalyst Dec 10, 2025
@bkioshn bkioshn marked this pull request as ready for review December 10, 2025 09:11
Signed-off-by: bkioshn <[email protected]>
Signed-off-by: bkioshn <[email protected]>
@bkioshn bkioshn added the review me PR is ready for review label Dec 11, 2025
@github-actions
Copy link

📚 Docs Preview

The docs for this PR can be previewed at the following URL:

https://docs.dev.projectcatalyst.io/hermes/feat/703/new-topic-timer

@bkioshn bkioshn added the do not merge yet PR is not ready to be merged yet label Dec 17, 2025
@bkioshn bkioshn removed the do not merge yet PR is not ready to be merged yet label Dec 22, 2025
@bkioshn bkioshn requested a review from no30bit December 23, 2025 08:39
Copy link
Contributor

@no30bit no30bit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@bkioshn bkioshn merged commit 5354ace into main Dec 24, 2025
56 checks passed
@bkioshn bkioshn deleted the feat/703/new-topic-timer branch December 24, 2025 00:43
@github-project-automation github-project-automation bot moved this from 👀 In review to ✅ Done in Catalyst Dec 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review me PR is ready for review squad: hermetics Hermes Backend, System Development & Integration Team

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

🛠️ [TASK] : .new topic

5 participants