tangled
alpha
login
or
join now
regnault.dev
/
core
forked from
tangled.org/core
0
fork
atom
Monorepo for Tangled
0
fork
atom
overview
issues
pulls
pipelines
fix jetstream not reconnecting
oppi.li
1 year ago
17bb59e3
fca5dfad
+11
-3
3 changed files
expand all
collapse all
unified
split
appview
state
state.go
knotserver
jetstream.go
routes.go
+1
appview/state/state.go
···
467
467
ksResp, err := ksClient.AddMember(memberIdent.DID.String())
468
468
if err != nil {
469
469
log.Printf("failed to make request to %s: %s", domain, err)
470
470
+
return
470
471
}
471
472
472
473
if ksResp.StatusCode != http.StatusNoContent {
+8
-1
knotserver/jetstream.go
···
47
47
jc := &JetstreamClient{
48
48
cfg: cfg,
49
49
client: client,
50
50
-
reconnectCh: make(chan struct{}),
50
50
+
reconnectCh: make(chan struct{}, 1),
51
51
}
52
52
53
53
h.jc = jc
···
78
78
}
79
79
}
80
80
}
81
81
+
}
82
82
+
83
83
+
func (j *JetstreamClient) AddDid(did string) {
84
84
+
j.mu.Lock()
85
85
+
j.cfg.WantedDids = append(j.cfg.WantedDids, did)
86
86
+
j.mu.Unlock()
87
87
+
j.reconnectCh <- struct{}{}
81
88
}
82
89
83
90
func (j *JetstreamClient) UpdateDids(dids []string) {
+2
-2
knotserver/routes.go
···
484
484
return
485
485
}
486
486
487
487
-
h.jc.UpdateDids([]string{did})
487
487
+
h.jc.AddDid(did)
488
488
if err := h.e.AddMember(ThisServer, did); err != nil {
489
489
l.Error("adding member", "error", err.Error())
490
490
writeError(w, err.Error(), http.StatusInternalServerError)
···
520
520
writeError(w, err.Error(), http.StatusInternalServerError)
521
521
return
522
522
}
523
523
-
h.jc.UpdateDids([]string{data.Did})
523
523
+
h.jc.AddDid(data.Did)
524
524
525
525
repoName := filepath.Join(ownerDid, repo)
526
526
if err := h.e.AddRepo(data.Did, ThisServer, repoName); err != nil {