Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[dev.icinga.com #11088] API queries on non-existant objects cause exception #3898

Closed
icinga-migration opened this issue Feb 4, 2016 · 3 comments
Labels
area/api REST API bug Something isn't working
Milestone

Comments

@icinga-migration
Copy link

This issue has been migrated from Redmine: https://dev.icinga.com/issues/11088

Created by tgelf on 2016-02-04 13:45:21 +00:00

Assignee: mfriedrich
Status: Resolved (closed on 2016-02-04 21:45:03 +00:00)
Target Version: 2.4.2
Last Update: 2016-02-23 09:58:47 +00:00 (in Redmine)

Icinga Version: 2.4.1
Backport?: Already backported
Include in Changelog: 1

This results in "invalid JSON", should IMO be caught and served as 404:

[2016-02-04 14:43:11 +0100] information/HttpServerConnection: Request: POST /v1/actions/reschedule-check?filter[]=host.name%20==%20%22localhost2%22%20&&%20service.name%20==%20%22Diagnostics%20(Director)%22 (director)
[2016-02-04 14:43:11 +0100] information/HttpServerConnection: Request: GET /v1/objects/services/localhost2!Diagnostics%20(Director)?all_joins[]=1 (director)
[2016-02-04 14:43:11 +0100] critical/HttpServerConnection: Unhandled exception while processing Http request: Error: Object does not exist.

    (0) libremote.so: void boost::throw_exception >(boost::exception_detail::error_info_injector const&) (+0x72) [0x2b81284b0152]
    (1) libremote.so: void boost::exception_detail::throw_exception_(std::invalid_argument const&, char const*, char const*, int) (+0xbc) [0x2b8128497362]
    (2) libremote.so: icinga::ConfigObjectTargetProvider::GetTargetByName(icinga::String const&, icinga::String const&) const (+0x95) [0x2b81284616f7]
    (3) libremote.so: icinga::FilterUtility::GetFilterTargets(icinga::QueryDescription const&, boost::intrusive_ptr const&, boost::intrusive_ptr const&) (+0x2fd) [0x2b8128462bcb]
    (4) libremote.so: icinga::ObjectQueryHandler::HandleRequest(boost::intrusive_ptr const&, icinga::HttpRequest&, icinga::HttpResponse&) (+0x64e) [0x2b8128473faa]
    (5) libremote.so: icinga::HttpHandler::ProcessRequest(boost::intrusive_ptr const&, icinga::HttpRequest&, icinga::HttpResponse&) (+0x60a) [0x2b8128467eb8]
    (6) libremote.so: icinga::HttpServerConnection::ProcessMessageAsync(icinga::HttpRequest&) (+0x98a) [0x2b81284666c8]
    (7) libremote.so: void boost::_mfi::mf1::call, icinga::HttpRequest>(boost::intrusive_ptr&, void const*, icinga::HttpRequest&) const (+0x75) [0x2b8128532dbd]
    (8) libremote.so: void boost::_mfi::mf1::operator() >(boost::intrusive_ptr&, icinga::HttpRequest&) const (+0x34) [0x2b81285261c6]
    (9) libremote.so: void boost::_bi::list2 >, boost::_bi::value >::operator(), boost::_bi::list0>(boost::_bi::type, boost::_mfi::mf1&, boost::_bi::list0&, int) (+0x69) [0x2b81285161a3]
    (10) libremote.so: boost::_bi::bind_t, boost::_bi::list2 >, boost::_bi::value > >::operator()() (+0x3b) [0x2b8128501cb3]
    (11) libremote.so: boost::detail::function::void_function_obj_invoker0, boost::_bi::list2 >, boost::_bi::value > >, void>::invoke(boost::detail::function::function_buffer&) (+0x23) [0x2b81284e8ae3]
    (12) libbase.so: boost::function0::operator()() const (+0x52) [0x2b81274ca55e]
    (13) libbase.so: icinga::WorkQueue::WorkerThreadProc() (+0x254) [0x2b81274b956c]
    (14) libbase.so: boost::_mfi::mf0::operator()(icinga::WorkQueue*) const (+0x65) [0x2b8127590307]
    (15) libbase.so: void boost::_bi::list1 >::operator(), boost::_bi::list0>(boost::_bi::type, boost::_mfi::mf0&, boost::_bi::list0&, int) (+0x4a) [0x2b81275a4874]
    (16) libbase.so: boost::_bi::bind_t, boost::_bi::list1 > >::operator()() (+0x3b) [0x2b81275a1b83]
    (17) libbase.so: boost::detail::thread_data, boost::_bi::list1 > > >::run() (+0x1e) [0x2b812759d756]
    (18) libboost_thread.so.1.55.0:  (+0xdaea) [0x2b8126562aea]
    (19) libpthread.so.0:  (+0x80a4) [0x2b8126f080a4]
    (20) libc.so.6: clone (+0x6d) [0x2b812a3e19cd]

Changesets

2016-02-04 21:40:01 +00:00 by mfriedrich 3227186

Fix: API queries on non-existant objects cause exception

fixes #11088

2016-02-23 08:38:39 +00:00 by mfriedrich c3dc3e6

Fix: API queries on non-existant objects cause exception

fixes #11088
@icinga-migration
Copy link
Author

Updated by mfriedrich on 2016-02-04 21:39:47 +00:00

  • Subject changed from Actions on non-existant objects cause exception to API queries on non-existant objects cause exception
  • Status changed from New to Assigned
  • Assigned to set to mfriedrich
  • Target Version set to 2.4.2

Actions did catch the exception, the other queries did not.

@icinga-migration
Copy link
Author

Updated by mfriedrich on 2016-02-04 21:45:03 +00:00

  • Status changed from Assigned to Resolved
  • Done % changed from 0 to 100

Applied in changeset 3227186.

@icinga-migration
Copy link
Author

Updated by gbeutner on 2016-02-23 09:58:47 +00:00

  • Backport? changed from Not yet backported to Already backported

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/api REST API bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant