mirror of
https://github.com/coracle-social/coracle.git
synced 2024-09-19 11:43:35 +00:00
Speed up by reducing threshold
This commit is contained in:
parent
953d9bbf85
commit
8be9d2cd47
@ -186,7 +186,7 @@ const request = (relays, filters, {threshold = 1} = {}) => {
|
||||
// a short timeout, or all after a long timeout, go ahead and unsubscribe.
|
||||
const done = (
|
||||
eose.length === agg.subs.length
|
||||
|| eose.filter(url => relaysWithEvents.has(url)).length > threshold
|
||||
|| eose.filter(url => relaysWithEvents.has(url)).length >= threshold
|
||||
|| (
|
||||
Date.now() - now >= 1000
|
||||
&& eose.length > agg.subs.length - Math.round(agg.subs.length / 10)
|
||||
|
@ -14,7 +14,7 @@ const onChunk = async (relays, pubkey, events) => {
|
||||
events = events.filter(e => isAlert(e, pubkey))
|
||||
|
||||
if (events.length > 0) {
|
||||
const context = await loaders.loadContext(relays, events)
|
||||
const context = await loaders.loadContext(relays, events, {threshold: 2})
|
||||
const notes = threadify(events, context, {muffle: getMuffle()})
|
||||
|
||||
await db.alerts.bulkPut(notes)
|
||||
@ -24,8 +24,12 @@ const onChunk = async (relays, pubkey, events) => {
|
||||
}
|
||||
|
||||
const load = async (relays, pubkey) => {
|
||||
const since = get(lastCheckedAlerts)
|
||||
const events = await _load(relays, {kinds: [1, 7], '#p': [pubkey], since, limit: 100})
|
||||
const since = get(mostRecentAlert)
|
||||
const events = await _load(
|
||||
relays,
|
||||
{kinds: [1, 7], '#p': [pubkey], since, limit: 100},
|
||||
{threshold: 2}
|
||||
)
|
||||
|
||||
onChunk(relays, pubkey, events)
|
||||
}
|
||||
@ -40,7 +44,8 @@ const listen = async (relays, pubkey) => {
|
||||
{kinds: [1, 7], '#p': [pubkey], since: now()},
|
||||
batch(300, events => {
|
||||
onChunk(relays, pubkey, events)
|
||||
})
|
||||
}),
|
||||
{threshold: 2}
|
||||
)
|
||||
}
|
||||
|
||||
|
@ -44,7 +44,7 @@
|
||||
$: flag = find(whereEq({pubkey: $user?.pubkey}), flags)
|
||||
|
||||
const onClick = e => {
|
||||
if (!['I'].includes(e.target.tagName) && !e.target.closest('a')) {
|
||||
if (interactive && !['I'].includes(e.target.tagName) && !e.target.closest('a')) {
|
||||
modal.set({type: 'note/detail', note, relays})
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,6 @@
|
||||
import {onMount} from 'svelte'
|
||||
import {fly} from 'svelte/transition'
|
||||
import {now, createScroller} from 'src/util/misc'
|
||||
import {isLike} from 'src/util/nostr'
|
||||
import {user, db} from 'src/agent'
|
||||
import {alerts} from 'src/app'
|
||||
import Note from 'src/partials/Note.svelte'
|
||||
@ -21,7 +20,7 @@
|
||||
|
||||
const events = await db.alerts.toArray()
|
||||
const notes = events.filter(e => e.kind === 1)
|
||||
const likes = events.filter(e => e.kind === 7 && isLike(e.content))
|
||||
const likes = events.filter(e => e.kind === 7)
|
||||
|
||||
// Combine likes of a single note. Remove grandchild likes
|
||||
const likesById = {}
|
||||
|
Loading…
Reference in New Issue
Block a user