[
https://issues.apache.org/jira/browse/DISPATCH-1707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17173479#comment-17173479
]
ASF subversion and git services commented on DISPATCH-1707:
-----------------------------------------------------------
Commit 2348f53af186b54dcf21bc8d967869bf48c5b2ed in qpid-dispatch's branch
refs/heads/master from Charles E. Rolke
[ https://gitbox.apache.org/repos/asf?p=qpid-dispatch.git;h=2348f53 ]
DISPATCH-1707: Accept trailing brace on separate line
This patch reorganizes the parse accounting for json fields embedded
in a dispatch-config formatted config file. Policy vhost groups hold
doubly-nested maps and those need to be detected and retired as they
come and go.
This closes #811
> Policy config file fails with cryptic error if trailing brace on wrong line
> ---------------------------------------------------------------------------
>
> Key: DISPATCH-1707
> URL: https://issues.apache.org/jira/browse/DISPATCH-1707
> Project: Qpid Dispatch
> Issue Type: Bug
> Components: Management Agent, Policy Engine
> Affects Versions: 1.12.0
> Reporter: Charles E. Rolke
> Assignee: Charles E. Rolke
> Priority: Major
>
> If a policy vhost in a config file is specified like this
> {code:java}
> vhost {
> hostname: 0.0.0.0
> allowUnknownUser: true
> groups: {
> "$default": {
> "users": "*",
> "remoteHosts": "*",
> "allowDynamicSource": true,
> "allowAnonymousSender": true,
> "sources": "*",
> "targets": "*"}
> }
> }
> {code}
> then it works fine. Buf if the trailing brace after _targets_ is on a line by
> itself
> {code:java}
> vhost {
> hostname: 0.0.0.0
> allowUnknownUser: true
> groups: {
> "$default": {
> "users": "*",
> "remoteHosts": "*",
> "allowDynamicSource": true,
> "allowAnonymousSender": true,
> "sources": "*",
> "targets": "*"
> }
> }
> }
> {code}
>
> then it fails with a confusing message that does not pinpoint what is wrong.
> {code:java}
> > qdrouterd -c permissive-info.conf
> 2020-07-08 11:18:36.907041 -0400 ERROR (error) Python: Exception: Cannot load
> configuration file permissive-info.conf: Expecting ',' delimiter: line 46
> column 3 (char 723)
> 2020-07-08 11:18:36.907563 -0400 ERROR (error) Traceback (most recent call
> last):
> File
> "/opt/local/lib/qpid-dispatch/python/qpid_dispatch_internal/management/config.py",
> line 61, in __init__
> self.load(filename, raw_json)
> File
> "/opt/local/lib/qpid-dispatch/python/qpid_dispatch_internal/management/config.py",
> line 221, in load
> self.load(f, raw_json)
> File
> "/opt/local/lib/qpid-dispatch/python/qpid_dispatch_internal/management/config.py",
> line 223, in load
> sections = self._parserawjson(source) if raw_json else self._parse(source)
> File
> "/opt/local/lib/qpid-dispatch/python/qpid_dispatch_internal/management/config.py",
> line 193, in _parse
> sections = json.loads(js_text)
> File "/usr/lib64/python3.7/json/__init__.py", line 348, in loads
> return _default_decoder.decode(s)
> File "/usr/lib64/python3.7/json/decoder.py", line 337, in decode
> obj, end = self.raw_decode(s, idx=_w(s, 0).end())
> File "/usr/lib64/python3.7/json/decoder.py", line 353, in raw_decode
> obj, end = self.scan_once(s, idx)
> json.decoder.JSONDecodeError: Expecting ',' delimiter: line 46 column 3 (char
> 723)
> During handling of the above exception, another exception occurred:
> Traceback (most recent call last):
> File
> "/opt/local/lib/qpid-dispatch/python/qpid_dispatch_internal/management/config.py",
> line 251, in configure_dispatch
> config = Config(filename)
> File
> "/opt/local/lib/qpid-dispatch/python/qpid_dispatch_internal/management/config.py",
> line 64, in __init__
> % (filename, e))
> Exception: Cannot load configuration file permissive-info.conf: Expecting ','
> delimiter: line 46 column 3 (char 723)
> 2020-07-08 11:18:36.907599 -0400 MAIN (critical) Router start-up failed:
> Python: Exception: Cannot load configuration file permissive-info.conf:
> Expecting ',' delimiter: line 46 column 3 (char 723)
> qdrouterd: Python: Exception: Cannot load configuration file
> permissive-info.conf: Expecting ',' delimiter: line 46 column 3 (char 723)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]