Browse Source

refactored SaveEvent to return if it is replacing an event

main
mleku 3 months ago
parent
commit
3c11aa6f01
No known key found for this signature in database
  1. 4
      app/handle-event.go
  2. 12
      app/payment_processor.go
  3. 8
      cmd/benchmark/main.go
  4. 2
      pkg/acl/follows.go
  5. 2
      pkg/database/export_test.go
  6. 2
      pkg/database/fetch-event-by-serial_test.go
  7. 2
      pkg/database/get-serial-by-id_test.go
  8. 2
      pkg/database/get-serials-by-range_test.go
  9. 2
      pkg/database/import.go
  10. 6
      pkg/database/query-events-multiple-param-replaceable_test.go
  11. 10
      pkg/database/query-events-search_test.go
  12. 14
      pkg/database/query-events_test.go
  13. 2
      pkg/database/query-for-authors-tags_test.go
  14. 2
      pkg/database/query-for-created-at_test.go
  15. 2
      pkg/database/query-for-ids_test.go
  16. 2
      pkg/database/query-for-kinds-authors-tags_test.go
  17. 2
      pkg/database/query-for-kinds-authors_test.go
  18. 2
      pkg/database/query-for-kinds-tags_test.go
  19. 2
      pkg/database/query-for-kinds_test.go
  20. 2
      pkg/database/query-for-serials_test.go
  21. 2
      pkg/database/query-for-tags_test.go
  22. 2
      pkg/database/save-event.go
  23. 10
      pkg/database/save-event_test.go
  24. 2
      pkg/interfaces/store/store_interface.go
  25. 2
      pkg/spider/spider.go

4
app/handle-event.go

@ -274,7 +274,7 @@ func (l *Listener) HandleEvent(msg []byte) (err error) { @@ -274,7 +274,7 @@ func (l *Listener) HandleEvent(msg []byte) (err error) {
env.E.Pubkey,
)
log.I.F("delete event pubkey hex: %s", hex.Enc(env.E.Pubkey))
if err, _ = l.SaveEvent(saveCtx, env.E); err != nil {
if _, err = l.SaveEvent(saveCtx, env.E); err != nil {
log.E.F("failed to save delete event %0x: %v", env.E.ID, err)
if strings.HasPrefix(err.Error(), "blocked:") {
errStr := err.Error()[len("blocked: "):len(err.Error())]
@ -339,7 +339,7 @@ func (l *Listener) HandleEvent(msg []byte) (err error) { @@ -339,7 +339,7 @@ func (l *Listener) HandleEvent(msg []byte) (err error) {
saveCtx, cancel := context.WithTimeout(context.Background(), 30*time.Second)
defer cancel()
// log.I.F("saving event %0x, %s", env.E.ID, env.E.Serialize())
if err, _ = l.SaveEvent(saveCtx, env.E); err != nil {
if _, err = l.SaveEvent(saveCtx, env.E); err != nil {
if strings.HasPrefix(err.Error(), "blocked:") {
errStr := err.Error()[len("blocked: "):len(err.Error())]
if err = Ok.Error(

12
app/payment_processor.go

@ -166,7 +166,7 @@ func (pp *PaymentProcessor) syncFollowList() error { @@ -166,7 +166,7 @@ func (pp *PaymentProcessor) syncFollowList() error {
}
// sign and save
ev.Sign(sign)
if err, _ := pp.db.SaveEvent(pp.ctx, ev); err != nil {
if _, err := pp.db.SaveEvent(pp.ctx, ev); err != nil {
return err
}
log.I.F(
@ -358,7 +358,7 @@ Log in to the relay dashboard to access your configuration at: %s`, @@ -358,7 +358,7 @@ Log in to the relay dashboard to access your configuration at: %s`,
// Sign and save the event
ev.Sign(sign)
if err, _ := pp.db.SaveEvent(pp.ctx, ev); err != nil {
if _, err := pp.db.SaveEvent(pp.ctx, ev); err != nil {
return fmt.Errorf("failed to save expiry warning note: %w", err)
}
@ -472,7 +472,7 @@ Log in to the relay dashboard to access your configuration at: %s`, @@ -472,7 +472,7 @@ Log in to the relay dashboard to access your configuration at: %s`,
// Sign and save the event
ev.Sign(sign)
if err, _ := pp.db.SaveEvent(pp.ctx, ev); err != nil {
if _, err := pp.db.SaveEvent(pp.ctx, ev); err != nil {
return fmt.Errorf("failed to save trial reminder note: %w", err)
}
@ -695,7 +695,7 @@ func (pp *PaymentProcessor) createPaymentNote( @@ -695,7 +695,7 @@ func (pp *PaymentProcessor) createPaymentNote(
// Sign and save the event
ev.Sign(sign)
if err, _ := pp.db.SaveEvent(pp.ctx, ev); err != nil {
if _, err := pp.db.SaveEvent(pp.ctx, ev); err != nil {
return fmt.Errorf("failed to save payment note: %w", err)
}
@ -801,7 +801,7 @@ Enjoy your time on the relay!`, monthlyPrice, monthlyPrice, @@ -801,7 +801,7 @@ Enjoy your time on the relay!`, monthlyPrice, monthlyPrice,
// Sign and save the event
ev.Sign(sign)
if err, _ := pp.db.SaveEvent(pp.ctx, ev); err != nil {
if _, err := pp.db.SaveEvent(pp.ctx, ev); err != nil {
return fmt.Errorf("failed to save welcome note: %w", err)
}
@ -918,7 +918,7 @@ func (pp *PaymentProcessor) UpdateRelayProfile() error { @@ -918,7 +918,7 @@ func (pp *PaymentProcessor) UpdateRelayProfile() error {
// Sign and save the event
ev.Sign(sign)
if err, _ := pp.db.SaveEvent(pp.ctx, ev); err != nil {
if _, err := pp.db.SaveEvent(pp.ctx, ev); err != nil {
return fmt.Errorf("failed to save relay profile: %w", err)
}

8
cmd/benchmark/main.go

@ -370,7 +370,7 @@ func (b *Benchmark) RunPeakThroughputTest() { @@ -370,7 +370,7 @@ func (b *Benchmark) RunPeakThroughputTest() {
for ev := range eventChan {
eventStart := time.Now()
err, _ := b.db.SaveEvent(ctx, ev)
_, err := b.db.SaveEvent(ctx, ev)
latency := time.Since(eventStart)
mu.Lock()
@ -460,7 +460,7 @@ func (b *Benchmark) RunBurstPatternTest() { @@ -460,7 +460,7 @@ func (b *Benchmark) RunBurstPatternTest() {
defer wg.Done()
eventStart := time.Now()
err, _ := b.db.SaveEvent(ctx, ev)
_, err := b.db.SaveEvent(ctx, ev)
latency := time.Since(eventStart)
mu.Lock()
@ -554,7 +554,7 @@ func (b *Benchmark) RunMixedReadWriteTest() { @@ -554,7 +554,7 @@ func (b *Benchmark) RunMixedReadWriteTest() {
if eventIndex%2 == 0 {
// Write operation
writeStart := time.Now()
err, _ := b.db.SaveEvent(ctx, events[eventIndex])
_, err := b.db.SaveEvent(ctx, events[eventIndex])
writeLatency := time.Since(writeStart)
mu.Lock()
@ -878,7 +878,7 @@ func (b *Benchmark) RunConcurrentQueryStoreTest() { @@ -878,7 +878,7 @@ func (b *Benchmark) RunConcurrentQueryStoreTest() {
for time.Since(start) < b.config.TestDuration && eventIndex < len(writeEvents) {
// Write operation
writeStart := time.Now()
err, _ := b.db.SaveEvent(ctx, writeEvents[eventIndex])
_, err := b.db.SaveEvent(ctx, writeEvents[eventIndex])
writeLatency := time.Since(writeStart)
mu.Lock()

2
pkg/acl/follows.go

@ -422,7 +422,7 @@ func (f *Follows) startSubscriptions(ctx context.Context) { @@ -422,7 +422,7 @@ func (f *Follows) startSubscriptions(ctx context.Context) {
)
}
if err, _ = f.D.SaveEvent(
if _, err = f.D.SaveEvent(
ctx, res.Event,
); err != nil {
if !strings.HasPrefix(

2
pkg/database/export_test.go

@ -55,7 +55,7 @@ func TestExport(t *testing.T) { @@ -55,7 +55,7 @@ func TestExport(t *testing.T) {
}
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event: %v", err)
}

2
pkg/database/fetch-event-by-serial_test.go

@ -58,7 +58,7 @@ func TestFetchEventBySerial(t *testing.T) { @@ -58,7 +58,7 @@ func TestFetchEventBySerial(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/get-serial-by-id_test.go

@ -56,7 +56,7 @@ func TestGetSerialById(t *testing.T) { @@ -56,7 +56,7 @@ func TestGetSerialById(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/get-serials-by-range_test.go

@ -63,7 +63,7 @@ func TestGetSerialsByRange(t *testing.T) { @@ -63,7 +63,7 @@ func TestGetSerialsByRange(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/import.go

@ -59,7 +59,7 @@ func (d *D) Import(rr io.Reader) { @@ -59,7 +59,7 @@ func (d *D) Import(rr io.Reader) {
continue
}
if err, _ = d.SaveEvent(d.ctx, ev); err != nil {
if _, err = d.SaveEvent(d.ctx, ev); err != nil {
// return the pooled buffer on error paths too
ev.Free()
continue

6
pkg/database/query-events-multiple-param-replaceable_test.go

@ -43,7 +43,7 @@ func TestMultipleParameterizedReplaceableEvents(t *testing.T) { @@ -43,7 +43,7 @@ func TestMultipleParameterizedReplaceableEvents(t *testing.T) {
baseEvent.Sign(sign)
// Save the base parameterized replaceable event
if err, _ := db.SaveEvent(ctx, baseEvent); err != nil {
if _, err := db.SaveEvent(ctx, baseEvent); err != nil {
t.Fatalf("Failed to save base parameterized replaceable event: %v", err)
}
@ -61,7 +61,7 @@ func TestMultipleParameterizedReplaceableEvents(t *testing.T) { @@ -61,7 +61,7 @@ func TestMultipleParameterizedReplaceableEvents(t *testing.T) {
newerEvent.Sign(sign)
// Save the newer parameterized replaceable event
if err, _ := db.SaveEvent(ctx, newerEvent); err != nil {
if _, err := db.SaveEvent(ctx, newerEvent); err != nil {
t.Fatalf(
"Failed to save newer parameterized replaceable event: %v", err,
)
@ -81,7 +81,7 @@ func TestMultipleParameterizedReplaceableEvents(t *testing.T) { @@ -81,7 +81,7 @@ func TestMultipleParameterizedReplaceableEvents(t *testing.T) {
newestEvent.Sign(sign)
// Save the newest parameterized replaceable event
if err, _ := db.SaveEvent(ctx, newestEvent); err != nil {
if _, err := db.SaveEvent(ctx, newestEvent); err != nil {
t.Fatalf(
"Failed to save newest parameterized replaceable event: %v", err,
)

10
pkg/database/query-events-search_test.go

@ -67,7 +67,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) { @@ -67,7 +67,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) {
ev1.Content = []byte("Alpha beta visit https://example.com deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef")
ev1.Tags = tag.NewS()
ev1.Sign(sign)
if err, _ := db.SaveEvent(ctx, ev1); err != nil {
if _, err := db.SaveEvent(ctx, ev1); err != nil {
t.Fatalf("save ev1: %v", err)
}
@ -79,7 +79,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) { @@ -79,7 +79,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) {
ev2.Content = []byte("beta and GAMMA with nostr:nevent1qqqqq")
ev2.Tags = tag.NewS()
ev2.Sign(sign)
if err, _ := db.SaveEvent(ctx, ev2); err != nil {
if _, err := db.SaveEvent(ctx, ev2); err != nil {
t.Fatalf("save ev2: %v", err)
}
@ -91,7 +91,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) { @@ -91,7 +91,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) {
ev3.Content = []byte("see www.example.org #[1]")
ev3.Tags = tag.NewS()
ev3.Sign(sign)
if err, _ := db.SaveEvent(ctx, ev3); err != nil {
if _, err := db.SaveEvent(ctx, ev3); err != nil {
t.Fatalf("save ev3: %v", err)
}
@ -104,7 +104,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) { @@ -104,7 +104,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) {
ev4.Tags = tag.NewS()
*ev4.Tags = append(*ev4.Tags, tag.NewFromAny("t", "delta epsilon"))
ev4.Sign(sign)
if err, _ := db.SaveEvent(ctx, ev4); err != nil {
if _, err := db.SaveEvent(ctx, ev4); err != nil {
t.Fatalf("save ev4: %v", err)
}
@ -117,7 +117,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) { @@ -117,7 +117,7 @@ func TestQueryEventsBySearchTerms(t *testing.T) {
ev5.Tags = tag.NewS()
*ev5.Tags = append(*ev5.Tags, tag.NewFromAny("t", "zeta"))
ev5.Sign(sign)
if err, _ := db.SaveEvent(ctx, ev5); err != nil {
if _, err := db.SaveEvent(ctx, ev5); err != nil {
t.Fatalf("save ev5: %v", err)
}

14
pkg/database/query-events_test.go

@ -64,7 +64,7 @@ func setupTestDB(t *testing.T) ( @@ -64,7 +64,7 @@ func setupTestDB(t *testing.T) (
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}
@ -204,7 +204,7 @@ func TestReplaceableEventsAndDeletion(t *testing.T) { @@ -204,7 +204,7 @@ func TestReplaceableEventsAndDeletion(t *testing.T) {
replaceableEvent.Tags = tag.NewS()
replaceableEvent.Sign(sign)
// Save the replaceable event
if err, _ := db.SaveEvent(ctx, replaceableEvent); err != nil {
if _, err := db.SaveEvent(ctx, replaceableEvent); err != nil {
t.Errorf("Failed to save replaceable event: %v", err)
}
@ -217,7 +217,7 @@ func TestReplaceableEventsAndDeletion(t *testing.T) { @@ -217,7 +217,7 @@ func TestReplaceableEventsAndDeletion(t *testing.T) {
newerEvent.Tags = tag.NewS()
newerEvent.Sign(sign)
// Save the newer event
if err, _ := db.SaveEvent(ctx, newerEvent); err != nil {
if _, err := db.SaveEvent(ctx, newerEvent); err != nil {
t.Errorf("Failed to save newer event: %v", err)
}
@ -286,7 +286,7 @@ func TestReplaceableEventsAndDeletion(t *testing.T) { @@ -286,7 +286,7 @@ func TestReplaceableEventsAndDeletion(t *testing.T) {
)
// Save the deletion event
if err, _ = db.SaveEvent(ctx, deletionEvent); err != nil {
if _, err = db.SaveEvent(ctx, deletionEvent); err != nil {
t.Fatalf("Failed to save deletion event: %v", err)
}
@ -371,7 +371,7 @@ func TestParameterizedReplaceableEventsAndDeletion(t *testing.T) { @@ -371,7 +371,7 @@ func TestParameterizedReplaceableEventsAndDeletion(t *testing.T) {
paramEvent.Sign(sign)
// Save the parameterized replaceable event
if err, _ := db.SaveEvent(ctx, paramEvent); err != nil {
if _, err := db.SaveEvent(ctx, paramEvent); err != nil {
t.Fatalf("Failed to save parameterized replaceable event: %v", err)
}
@ -397,7 +397,7 @@ func TestParameterizedReplaceableEventsAndDeletion(t *testing.T) { @@ -397,7 +397,7 @@ func TestParameterizedReplaceableEventsAndDeletion(t *testing.T) {
paramDeletionEvent.Sign(sign)
// Save the parameterized deletion event
if err, _ := db.SaveEvent(ctx, paramDeletionEvent); err != nil {
if _, err := db.SaveEvent(ctx, paramDeletionEvent); err != nil {
t.Fatalf("Failed to save parameterized deletion event: %v", err)
}
@ -430,7 +430,7 @@ func TestParameterizedReplaceableEventsAndDeletion(t *testing.T) { @@ -430,7 +430,7 @@ func TestParameterizedReplaceableEventsAndDeletion(t *testing.T) {
paramDeletionEvent2.Sign(sign)
// Save the parameterized deletion event with e-tag
if err, _ := db.SaveEvent(ctx, paramDeletionEvent2); err != nil {
if _, err := db.SaveEvent(ctx, paramDeletionEvent2); err != nil {
t.Fatalf(
"Failed to save parameterized deletion event with e-tag: %v", err,
)

2
pkg/database/query-for-authors-tags_test.go

@ -58,7 +58,7 @@ func TestQueryForAuthorsTags(t *testing.T) { @@ -58,7 +58,7 @@ func TestQueryForAuthorsTags(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/query-for-created-at_test.go

@ -58,7 +58,7 @@ func TestQueryForCreatedAt(t *testing.T) { @@ -58,7 +58,7 @@ func TestQueryForCreatedAt(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if _, _, err = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/query-for-ids_test.go

@ -60,7 +60,7 @@ func TestQueryForIds(t *testing.T) { @@ -60,7 +60,7 @@ func TestQueryForIds(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/query-for-kinds-authors-tags_test.go

@ -59,7 +59,7 @@ func TestQueryForKindsAuthorsTags(t *testing.T) { @@ -59,7 +59,7 @@ func TestQueryForKindsAuthorsTags(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/query-for-kinds-authors_test.go

@ -59,7 +59,7 @@ func TestQueryForKindsAuthors(t *testing.T) { @@ -59,7 +59,7 @@ func TestQueryForKindsAuthors(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/query-for-kinds-tags_test.go

@ -59,7 +59,7 @@ func TestQueryForKindsTags(t *testing.T) { @@ -59,7 +59,7 @@ func TestQueryForKindsTags(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/query-for-kinds_test.go

@ -58,7 +58,7 @@ func TestQueryForKinds(t *testing.T) { @@ -58,7 +58,7 @@ func TestQueryForKinds(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/query-for-serials_test.go

@ -61,7 +61,7 @@ func TestQueryForSerials(t *testing.T) { @@ -61,7 +61,7 @@ func TestQueryForSerials(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/query-for-tags_test.go

@ -58,7 +58,7 @@ func TestQueryForTags(t *testing.T) { @@ -58,7 +58,7 @@ func TestQueryForTags(t *testing.T) {
events = append(events, ev)
// Save the event to the database
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}

2
pkg/database/save-event.go

@ -103,7 +103,7 @@ func (d *D) WouldReplaceEvent(ev *event.E) (bool, types.Uint40s, error) { @@ -103,7 +103,7 @@ func (d *D) WouldReplaceEvent(ev *event.E) (bool, types.Uint40s, error) {
// SaveEvent saves an event to the database, generating all the necessary indexes.
func (d *D) SaveEvent(c context.Context, ev *event.E) (
err error, replaced bool,
replaced bool, err error,
) {
if ev == nil {
err = errors.New("nil event")

10
pkg/database/save-event_test.go

@ -65,7 +65,7 @@ func TestSaveEvents(t *testing.T) { @@ -65,7 +65,7 @@ func TestSaveEvents(t *testing.T) {
// Save the event to the database
var k, v int
if err, _ = db.SaveEvent(ctx, ev); err != nil {
if _, err = db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event #%d: %v", eventCount+1, err)
}
kc += k
@ -125,7 +125,7 @@ func TestDeletionEventWithETagRejection(t *testing.T) { @@ -125,7 +125,7 @@ func TestDeletionEventWithETagRejection(t *testing.T) {
regularEvent.Sign(sign)
// Save the regular event
if err, _ := db.SaveEvent(ctx, regularEvent); err != nil {
if _, err := db.SaveEvent(ctx, regularEvent); err != nil {
t.Fatalf("Failed to save regular event: %v", err)
}
@ -151,7 +151,7 @@ func TestDeletionEventWithETagRejection(t *testing.T) { @@ -151,7 +151,7 @@ func TestDeletionEventWithETagRejection(t *testing.T) {
err = errorf.E("deletion events referencing other events with 'e' tag are not allowed")
} else {
// Try to save the deletion event
err, _ = db.SaveEvent(ctx, deletionEvent)
_, err = db.SaveEvent(ctx, deletionEvent)
}
if err == nil {
@ -204,12 +204,12 @@ func TestSaveExistingEvent(t *testing.T) { @@ -204,12 +204,12 @@ func TestSaveExistingEvent(t *testing.T) {
ev.Sign(sign)
// Save the event for the first time
if err, _ := db.SaveEvent(ctx, ev); err != nil {
if _, err := db.SaveEvent(ctx, ev); err != nil {
t.Fatalf("Failed to save event: %v", err)
}
// Try to save the same event again, it should be rejected
err, _ = db.SaveEvent(ctx, ev)
_, err = db.SaveEvent(ctx, ev)
if err == nil {
t.Fatal("Expected error when saving an existing event, but got nil")
}

2
pkg/interfaces/store/store_interface.go

@ -84,7 +84,7 @@ type Saver interface { @@ -84,7 +84,7 @@ type Saver interface {
// SaveEvent is called once relay.AcceptEvent reports true. The owners
// parameter is for designating admins whose delete by e tag events apply
// the same as author's own.
SaveEvent(c context.Context, ev *event.E) (err error, replaced bool)
SaveEvent(c context.Context, ev *event.E) (replaced bool, err error)
}
type Importer interface {

2
pkg/spider/spider.go

@ -395,7 +395,7 @@ func (s *Spider) queryRelayForEvents( @@ -395,7 +395,7 @@ func (s *Spider) queryRelayForEvents(
}
// Save the event to the database
if err, _ := s.db.SaveEvent(s.ctx, ev); err != nil {
if _, err := s.db.SaveEvent(s.ctx, ev); err != nil {
if !strings.HasPrefix(err.Error(), "blocked:") {
log.T.F(
"Spider sync: error saving event from relay %s: %v",

Loading…
Cancel
Save