this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

refresh id on resync

dholms bbb4d32b e74ab5e5

+17 -14
+11 -13
nexus/processor.go
··· 30 30 31 31 func (ep *EventProcessor) ProcessIdentity(ctx context.Context, evt *comatproto.SyncSubscribeRepos_Identity) error { 32 32 defer ep.trackLastSeq(evt.Seq) 33 + return ep.RefreshIdentity(ctx, evt.Did) 34 + } 33 35 34 - curr, err := ep.GetRepoState(evt.Did) 36 + func (ep *EventProcessor) RefreshIdentity(ctx context.Context, did string) error { 37 + curr, err := ep.GetRepoState(did) 35 38 if err != nil { 36 39 return err 37 40 } else if curr == nil { 38 41 return nil 39 42 } 40 43 41 - did := syntax.DID(evt.Did) 42 - if err := ep.Dir.Purge(ctx, did.AtIdentifier()); err != nil { 43 - ep.Logger.Error("failed to purge identity cache", "did", evt.Did, "error", err) 44 + if err := ep.Dir.Purge(ctx, syntax.DID(did).AtIdentifier()); err != nil { 45 + ep.Logger.Error("failed to purge identity cache", "did", did, "error", err) 44 46 } 45 47 46 - id, err := ep.Dir.LookupDID(ctx, did) 48 + id, err := ep.Dir.LookupDID(ctx, syntax.DID(did)) 47 49 if err != nil { 48 50 return err 49 51 } ··· 53 55 return nil 54 56 } 55 57 56 - if evt.Handle == nil || *evt.Handle == "handle.invalid" { 57 - return nil 58 - } 59 - 60 58 userEvt := &UserEvt{ 61 - Did: evt.Did, 59 + Did: did, 62 60 Handle: handleStr, 63 61 } 64 62 65 63 if err := ep.Outbox.SendUserEvt(userEvt); err != nil { 66 - ep.Logger.Error("failed to send user evt", "did", evt.Did, "error", err) 64 + ep.Logger.Error("failed to send user evt", "did", did, "error", err) 67 65 return err 68 66 } 69 67 70 68 if err := ep.DB.Model(&models.Repo{}). 71 - Where("did = ?", evt.Did). 69 + Where("did = ?", did). 72 70 Update("handle", handleStr).Error; err != nil { 73 - ep.Logger.Error("failed to update handle", "did", evt.Did, "handle", handleStr, "error", err) 71 + ep.Logger.Error("failed to update handle", "did", did, "handle", handleStr, "error", err) 74 72 return err 75 73 } 76 74
+6 -1
nexus/resync.go
··· 67 67 func (n *Nexus) resyncDid(ctx context.Context, did string) error { 68 68 n.logger.Info("starting resync", "did", did) 69 69 70 - err := n.doResync(ctx, did) 70 + err := n.EventProcessor.RefreshIdentity(ctx, did) 71 + if err != nil { 72 + n.logger.Info("failed to refresh identity", "did", did, "error", err) 73 + } 74 + 75 + err = n.doResync(ctx, did) 71 76 if err != nil { 72 77 n.db.Model(&models.Repo{}). 73 78 Where("did = ?", did).