commit aa30de955358bc38e53c593f34404f3a679d5ac1
parent 877df588ae7d2804a915e69411ca92aab650c21d
Author: lash <dev@holbrook.no>
Date: Mon, 30 Dec 2024 19:38:02 +0000
Add prefix for dumper, format base dump key for pg
Diffstat:
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/db/gdbm/dump.go b/db/gdbm/dump.go
@@ -11,6 +11,7 @@ import (
)
func(gdb *gdbmDb) Dump(ctx context.Context, key []byte) (*db.Dumper, error) {
+ key = append([]byte{db.DATATYPE_USERDATA}, key...)
gdb.it = gdb.conn.Iterator()
for true {
k, err := gdb.it()
diff --git a/db/postgres/dump.go b/db/postgres/dump.go
@@ -13,9 +13,13 @@ func(pdb *pgDb) Dump(ctx context.Context, key []byte) (*db.Dumper, error) {
return nil, err
}
+ k := append([]byte{db.DATATYPE_USERDATA}, key...)
+
query := fmt.Sprintf("SELECT key, value FROM %s.kv_vise WHERE key >= $1 AND key < $2", pdb.schema)
- rs, err := tx.Query(ctx, query, key, key[0])
+ logg.TraceCtxf(ctx, "getkey", "q", query, "key", k)
+ rs, err := tx.Query(ctx, query, k, []byte{k[0] + 1})
if err != nil {
+ logg.Debugf("query fail", "err", err)
tx.Rollback(ctx)
return nil, err
}
@@ -26,11 +30,11 @@ func(pdb *pgDb) Dump(ctx context.Context, key []byte) (*db.Dumper, error) {
tx.Commit(ctx)
//tx.Rollback(ctx)
pdb.it = rs
- pdb.itBase = key
+ pdb.itBase = k
return db.NewDumper(pdb.dumpFunc).WithFirst(r[0], r[1]), nil
}
- return nil, db.NewErrNotFound(key)
+ return nil, db.NewErrNotFound(k)
}
func(pdb *pgDb) dumpFunc(ctx context.Context) ([]byte, []byte) {