mirror of
https://github.com/waku-org/nwaku.git
synced 2025-01-28 15:46:33 +00:00
deploy: 95d2e8bf71fde85fc5e8c77aa1b6bb2e88913641
This commit is contained in:
parent
5632454f4f
commit
0c411dec21
@ -17,6 +17,7 @@ which is a sequence of string.
|
|||||||
- Increased maximum length for reading from a libp2p input stream to allow largest possible protocol messages, including `HistoryResponse` messages at max size.
|
- Increased maximum length for reading from a libp2p input stream to allow largest possible protocol messages, including `HistoryResponse` messages at max size.
|
||||||
- Significantly improved store node query performance
|
- Significantly improved store node query performance
|
||||||
- Added GossipSub `MessageIdProvider` for `11/WAKU2-RELAY` messages.
|
- Added GossipSub `MessageIdProvider` for `11/WAKU2-RELAY` messages.
|
||||||
|
- Store: timestamps of message reception, used for indexing, now have consistent millisecond resolution.
|
||||||
|
|
||||||
## 2021-11-05 v0.6
|
## 2021-11-05 v0.6
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
# libtool - Provide generalized library-building support services.
|
# libtool - Provide generalized library-building support services.
|
||||||
# Generated automatically by config.status (libbacktrace) version-unused
|
# Generated automatically by config.status (libbacktrace) version-unused
|
||||||
# Libtool was configured on host fv-az272-614:
|
# Libtool was configured on host fv-az199-574:
|
||||||
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
|
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
|
||||||
#
|
#
|
||||||
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
|
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
# Group by std, external then internal imports
|
# Group by std, external then internal imports
|
||||||
import
|
import
|
||||||
# std imports
|
# std imports
|
||||||
std/[tables, times, sequtils, algorithm, options],
|
std/[tables, times, sequtils, algorithm, options, math],
|
||||||
# external imports
|
# external imports
|
||||||
bearssl,
|
bearssl,
|
||||||
chronicles,
|
chronicles,
|
||||||
@ -55,15 +55,18 @@ const
|
|||||||
# TODO Move serialization function to separate file, too noisy
|
# TODO Move serialization function to separate file, too noisy
|
||||||
# TODO Move pagination to separate file, self-contained logic
|
# TODO Move pagination to separate file, self-contained logic
|
||||||
|
|
||||||
proc computeIndex*(msg: WakuMessage): Index =
|
proc computeIndex*(msg: WakuMessage, receivedTime = getTime().toUnixFloat()): Index =
|
||||||
## Takes a WakuMessage and returns its Index
|
## Takes a WakuMessage with received timestamp and returns its Index.
|
||||||
|
## Received timestamp will default to system time if not provided.
|
||||||
var ctx: sha256
|
var ctx: sha256
|
||||||
ctx.init()
|
ctx.init()
|
||||||
ctx.update(msg.contentTopic.toBytes()) # converts the contentTopic to bytes
|
ctx.update(msg.contentTopic.toBytes()) # converts the contentTopic to bytes
|
||||||
ctx.update(msg.payload)
|
ctx.update(msg.payload)
|
||||||
let digest = ctx.finish() # computes the hash
|
let digest = ctx.finish() # computes the hash
|
||||||
ctx.clear()
|
ctx.clear()
|
||||||
var index = Index(digest:digest, receiverTime: epochTime(), senderTime: msg.timestamp)
|
|
||||||
|
let receiverTime = receivedTime.round(3) # Ensure timestamp has (only) millisecond resolution
|
||||||
|
var index = Index(digest:digest, receiverTime: receiverTime, senderTime: msg.timestamp)
|
||||||
return index
|
return index
|
||||||
|
|
||||||
proc encode*(index: Index): ProtoBuffer =
|
proc encode*(index: Index): ProtoBuffer =
|
||||||
@ -466,7 +469,7 @@ proc init*(ws: WakuStore, capacity = DefaultStoreCapacity) =
|
|||||||
|
|
||||||
proc onData(receiverTime: float64, msg: WakuMessage, pubsubTopic: string) =
|
proc onData(receiverTime: float64, msg: WakuMessage, pubsubTopic: string) =
|
||||||
# TODO index should not be recalculated
|
# TODO index should not be recalculated
|
||||||
ws.messages.add(IndexedWakuMessage(msg: msg, index: msg.computeIndex(), pubsubTopic: pubsubTopic))
|
ws.messages.add(IndexedWakuMessage(msg: msg, index: msg.computeIndex(receiverTime), pubsubTopic: pubsubTopic))
|
||||||
|
|
||||||
info "attempting to load messages from persistent storage"
|
info "attempting to load messages from persistent storage"
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user