SAP Knowledge Base Article - Public

3087670 - Search functionality is not working in Plan Customer Projects app

Symptom

When trying to search for a project in the Plan Customer projects app, no project is found.

An error is raised in the TREX call:

Return code: 23008

Return text: exception 70023008: Can't create plan for join query

The indexserver trace contains entries similar to the ones below:

XXXX-XX-XX XX:XX:XX e join_eval PlanCreator.cpp(11837) : Found unconnected output with id=XXX
XXXX-XX-XX XX:XX:XX e join_eval PlanCreator.cpp(11852) : Dangling output is created by JEStep2 pop119 (JEStep2)
XXXX-XX-XX XX:XX:XX e join_eval PlanCreator.cpp(02886) : Found unconnected outputs in plan. Please set 'indexserver.ini -> joins -> fail_on_unconnected_outputs = false' and have a closer look by turning on join_eval=info.
XXXX-XX-XX XX:XX:XX e join_eval PlanCreator.cpp(02890) : SqlExecutor at
1: in Diagnose::impl::dumpInfoSelfCtx(ltt::basic_ostream<char, ltt::char_traits<char> >&, bool, bool, bool, bool, bool, bool, unsigned long)+0x65 at Trace.cpp:32 (libhdbbasis.so)
2: in JoinEvaluator::PlanCreator::createPlan(ltt_adp::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<bool, true> >*)::{lambda()#8}::operator()() const [clone .isra.1735] [clone .lto_priv.9893]+0x15e at PlanCreator.cpp:2890 (libhdbcsapi.so)
3: in JoinEvaluator::PlanCreator::createPlan(ltt_adp::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<bool, true> >*)+0x6c1 at PlanCreator.cpp:2890 (libhdbcsapi.so)
4: in TRexAPI::TRexApiSearch::searchJoinIndex(TRexAPI::QueryContext&, TRexAPI::TRexApiSearchTableResult&, ltt_adp::vector<TRexAPI::FSTermAttributeInfo, ltt::integral_constant<bool, true> > const*, ltt_adp::vector<TRexConfig::TableOrView, ltt::integral_constant<bool, true> > const&)+0x31a0 at TRexApiSearch.cpp:9126 (libhdbcsapi.so)
5: in TRexAPI::TRexApiSearch::doSearch(TRexAPI::TRexApiSearchTableResult&)+0x7120 at TRexApiSearch.cpp:5838 (libhdbcsapi.so)
6: in TRexAPI::TRexApiSearch::search(TRexAPI::TRexApiSearchTableResult&)+0x60 at TRexApiSearch.cpp:4932 (libhdbcsapi.so)
7: in TRexAPI::SearchDbslCommand::executeImpl(TrexBase::AsXmlWriter&)+0x847 at TRexApiSearch.cpp:16826 (libhdbcsapi.so)
8: in TREXviaDBSL+0x67b at trex_util.cc:497 (libhdbcswrapper.so)
[...]

Environment

SAP S/4HANA Cloud 2108

Cause

Due to a programming error in SAP HANA database, the Join Engine optimizer causes an error when JEStep2 produces 2 outputs in the redundant reduction move but only one is consumed by following JEStep 1.

Affected Releases:

  • SAP HANA 2:
    • Revisions <= 048.03 (SPS04)
    • Revisions <= 054.00 (SPS05)

Prerequisites:

  • A very complex join query is executed by the Join Engine.

Resolution

Issue is fixed when one of the following SAP HANA Revisions is applied:

  • SAP HANA 2:
    • Revisions >= 048.04 (SPS04) 
    • Revisions >= 055.00 (SPS05) 
    • or higher
  • or higher

Workaround:

Reach out to S/4HANA Cloud Operations team through an case and request that the following workaround is applied:

  • Disable the check for unconsumed output in Join engine plan by setting the parameter:

    ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'SYSTEM') SET ('joins', 'fail_on_unconnected_outputs') = 'false' with reconfigure;

Disclaimer:

The SAP HANA configuration parameter [joins] fail_on_unconnected_outputs is an internal parameter and may only be used in the context of this SAP Note. Using such a parameter requires that the SAP HANA system has the revision specified in the SAP Note and the described prerequisites are met. Using internal parameters outside of this given scope is not supported. This workaround should be removed as soon as a permanent solution is available and implemented.

See Also

3027852 - Join Query Fail With Error "Can't create plan for join query"

Keywords

KBA , CA-CPD-SS , S/4HANA Public Cloud – Professional Service Projects , HAN-DB , SAP HANA Database , Problem

Product

SAP S/4HANA Cloud Public Edition all versions