[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-wallet-core] 01/03: -logging
From: |
gnunet |
Subject: |
[taler-wallet-core] 01/03: -logging |
Date: |
Tue, 07 Jan 2025 16:25:02 +0100 |
This is an automated email from the git hooks/post-receive script.
dold pushed a commit to branch master
in repository wallet-core.
commit 0d04772c9f2b9b4d51f30c03b4fa38ddc8be192d
Author: Florian Dold <florian@dold.me>
AuthorDate: Tue Jan 7 10:48:49 2025 +0100
-logging
---
packages/idb-bridge/taler-helper-sqlite3 | 38 +++++++++++++++++---------------
1 file changed, 20 insertions(+), 18 deletions(-)
diff --git a/packages/idb-bridge/taler-helper-sqlite3
b/packages/idb-bridge/taler-helper-sqlite3
index 02a936220..a04758bb5 100755
--- a/packages/idb-bridge/taler-helper-sqlite3
+++ b/packages/idb-bridge/taler-helper-sqlite3
@@ -7,9 +7,14 @@ import os
print("started sqlite3 helper at", os.getcwd(), file=sys.stderr)
enable_tracing = False
+
+
def trace(*args):
+ if not enable_tracing:
+ return
print("HELPER", *args, file=sys.stderr)
+
CMD_HELLO = 1
CMD_SHUTDOWN = 2
CMD_OPEN = 3
@@ -46,8 +51,7 @@ prep_handles = dict()
def write_resp(req_id, cmd, payload=None):
- if enable_tracing:
- trace("sending response to request", req_id)
+ trace("sending response to request", req_id)
outlen = 4 + 4 + 1 + (0 if payload is None else len(payload))
respstream.write(outlen.to_bytes(4))
respstream.write(req_id.to_bytes(4))
@@ -100,7 +104,7 @@ class PacketWriter:
for row in rows:
if len(row) != len(description):
- raise Error("invariant violated")
+ raise Exception("invariant violated")
for val in row:
if val is None:
self.write_uint8(TAG_NULL)
@@ -114,7 +118,7 @@ class PacketWriter:
self.write_uint8(TAG_INT)
self.write_int64(val)
else:
- raise Error("unknown col type")
+ raise Exception("unknown col type")
def reap(self):
return b"".join(self.chunks)
@@ -175,15 +179,17 @@ class PacketReader:
if tag == TAG_BLOB:
params[name] = pr.read_blob()
continue
- raise Error("tag not understood")
+ raise Exception("tag not understood")
return params
+
def read_exactly(n):
buf = cmdstream.read(n)
if len(buf) != n:
- raise Error("incomplete message")
+ raise Exception("incomplete message")
return buf
+
def handle_query_failure(req_id, e):
pw = PacketWriter()
pw.write_string(str(e))
@@ -191,22 +197,21 @@ def handle_query_failure(req_id, e):
pw.write_string(e.sqlite_errorname)
write_resp(req_id, RESP_FAIL, pw.reap())
+
while True:
- if enable_tracing:
- trace("reading command")
+ trace("reading command")
buf_sz = cmdstream.read(4)
if len(buf_sz) == 0:
trace("end of input reached")
sys.exit(0)
elif len(buf_sz) != 4:
- raise Error("incomplete message")
+ raise Exception("incomplete message")
size = int.from_bytes(buf_sz)
req_id = int.from_bytes(read_exactly(4))
rest = read_exactly(size - 8)
pr = PacketReader(rest)
cmd = pr.read_uint8()
- if enable_tracing:
- trace("received command:", cmd, "request_id:", req_id)
+ trace("received command:", cmd, "request_id:", req_id)
if cmd == CMD_HELLO:
write_resp(req_id, RESP_OK)
@@ -214,7 +219,7 @@ while True:
if cmd == CMD_OPEN:
# open
if dbconn is not None:
- raise Error("DB already connected")
+ raise Exception("DB already connected")
db_handle = pr.read_uint16()
filename = pr.read_string()
dbconn = sqlite3.connect(filename, autocommit=True,
isolation_level=None)
@@ -267,8 +272,7 @@ while True:
write_resp(req_id, RESP_ROWLIST, pw.reap())
continue
if cmd == CMD_STMT_RUN:
- if enable_tracing:
- trace("running statement")
+ trace("running statement")
prep_id = pr.read_uint16()
params = pr.read_params()
dbconn, stmt = prep_handles[prep_id]
@@ -276,12 +280,10 @@ while True:
try:
res = cursor.execute(stmt, params)
except sqlite3.Error as e:
- if enable_tracing:
- trace("got sqlite error")
+ trace("got sqlite error")
handle_query_failure(req_id, e)
continue
- if enable_tracing:
- trace("running query succeeded")
+ trace("running query succeeded")
if cursor.lastrowid is None:
write_resp(req_id, RESP_OK)
else:
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.