MCPcopy
hub / github.com/docker/docker-agent / AddMemory

Method AddMemory

pkg/memory/database/sqlite/sqlite.go:117–134  ·  view source on GitHub ↗
(ctx context.Context, memory database.UserMemory)

Source from the content-addressed store, hash-verified

115}
116
117func (m *MemoryDatabase) AddMemory(ctx context.Context, memory database.UserMemory) error {
118 ctx, span := startMemorySpan(ctx, "add")
119 defer span.End()
120
121 if memory.ID == "" {
122 return database.ErrEmptyID
123 }
124 err := m.withWriteLock(ctx, func(db *sql.DB) error {
125 _, err := db.ExecContext(ctx, "INSERT INTO memories (id, created_at, memory, category) VALUES (?, ?, ?, ?)",
126 memory.ID, memory.CreatedAt, memory.Memory, memory.Category)
127 return err
128 })
129 if err != nil {
130 span.RecordError(err)
131 span.SetStatus(codes.Error, err.Error())
132 }
133 return err
134}
135
136func (m *MemoryDatabase) GetMemories(ctx context.Context) ([]database.UserMemory, error) {
137 ctx, span := startMemorySpan(ctx, "list")

Calls 6

withWriteLockMethod · 0.95
startMemorySpanFunction · 0.85
ExecContextMethod · 0.80
RecordErrorMethod · 0.65
EndMethod · 0.45
ErrorMethod · 0.45