fix db console commands

Signed-off-by: si458 <simonsmith5521@gmail.com>

si458 committed May 26, 2026 at 20:37 UTC 96bdc130272203d053aff912eb4dd6413c88ef08
1 file changed +9 -6
agents/meshcore.js
+9 -6
@@ -5624,15 +5624,16 @@ function processConsoleCommand(cmd, args, rights, sessionid) {
5624 break;
5625 }
5626 case 'dbkeys': { // Return all data store keys
5627 + if (db == null) { response = 'Database not accessible.'; break; }
5628 response = JSON.stringify(db.Keys);
5629 break;
5630 }
5631 case 'dbget': { // Return the data store value for a given key
5632 if (db == null) { response = 'Database not accessible.'; break; }
5633 if (args['_'].length != 1) {
5633 - response = 'Proper usage: dbget (key)'; // Display the value for a given database key
5634 + response = 'Proper usage: dbget (key)';
5635 } else {
5635 - response = db.Get(args['_'][0]);
5636 + response = (db.Get(args['_'][0]) != null ? db.Get(args['_'][0]) : 'Key not found');
5637 }
5638 break;
5639 }
@@ -5642,7 +5643,7 @@ function processConsoleCommand(cmd, args, rights, sessionid) {
5643 response = 'Proper usage: dbset (key) (value)'; // Set a database key
5644 } else {
5645 var r = db.Put(args['_'][0], args['_'][1]);
5645 - response = 'Key set: ' + r;
5646 + response = r == 0 ? 'Key set' : 'Failed to set key';
5647 }
5648 break;
5649 }
@@ -5651,15 +5652,17 @@ function processConsoleCommand(cmd, args, rights, sessionid) {
5652 if (args['_'].length != 1) {
5653 response = 'Proper usage: dbdelete (key)'; // Delete a database key
5654 } else {
5654 - var r = db.Delete(args['_'][0]);
5655 - response = 'Key deleted: ' + r;
5655 + var existed = db.Get(args['_'][0]) != null;
5656 + db.Delete(args['_'][0]); // new agent with Delete fix
5657 + db.Delete('0/' + args['_'][0]); // old agent without Delete fix
5658 + response = existed ? 'Key deleted' : 'Key not found';
5659 }
5660 break;
5661 }
5662 case 'dbcompact': { // Compact the data store
5663 if (db == null) { response = 'Database not accessible.'; break; }
5664 var r = db.Compact();
5662 - response = 'Database compacted: ' + r;
5665 + response = r == 0 ? 'Database compacted' : 'Compact failed';
5666 break;
5667 }
5668 case 'httpget': {