luci-app-olsr: ubus hook fails on large tables
Author: pmelangeCreated Sep 17, 2026Updated Sep 19, 2026
Is there an existing issue for this?
- I have searched among all existing issues (including closed issues)
screenshots or captures
# ubus call olsrinfo getjsondata '{ "otable": "/routes", "v4_
port":"9090" }'
Command failed: No responseand after writing a test script, which does the basics from the ubus script, I get the following:
# cat test.sh
#!/bin/sh
. /usr/share/libubox/jshn.sh
. /lib/functions.sh
jsonreq4=$(echo "/routes" | nc 127.0.0.1 9090 | sed -n '/^[}{ ]/p' 2>/dev/null)
json_init
json_add_string "jsonreq4" "$jsonreq4"
json_dump# ./test.sh
./test.sh: line 290: jshn: Argument list too longThis is most likely the same issue as https://github.com/openwrt/libubox/issues/19 and the recommended solution is to rewrite the code in ucode.
Actual behaviour
The requested data is not provided via ubus
Expected behaviour
Expected is that the requested "otable" gets echoed to STDOUT
Steps to reproduce
- Have a large OLSR network, (in this case, there are circa 6000 routes)
- request via ubus the routes table
ubus call olsrinfo getjsondata '{ "otable": "/routes", "v4_port":"9090" }'
Additional Information
{
"kernel": "6.12.94",
"hostname": "rhxb-core",
"system": "ARMv8 Processor rev 4",
"model": "Linksys E8450 (UBI)",
"board_name": "linksys,e8450-ubi",
"rootfs_type": "squashfs",
"release": {
"distribution": "OpenWrt",
"version": "25.12.5",
"firmware_url": "https://downloads.openwrt.org/",
"revision": "r33051-f5dae5ece4",
"target": "mediatek/mt7622",
"description": "OpenWrt 25.12.5 r33051-f5dae5ece4",
"builddate": "1782737960"
}
}What browsers do you see the problem on?
No response
Relevant log output
Source: openwrt/luci