SAP / SAP/node-hdb

hdb-ext library is not able to call specific procedures

Open
#144 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
322
Forks
99
PR merge metrics
No merged PRs in 30d

Description

I know this project is about node-hdb, but we failed to find the repository for hdb-ext.
If it's available, please let us know.

We have a procedure where input table parameters definition refer to synonyms. These synonyms are created based on tables from another HDI container service.
The procedure definition looks something like below -

"MGMT"."mgmt.access.procedures.collection::PR_UPDATE_COLLECTION_STRATEGY"(
	IT_NEW_COLL_STRAT  <refers table synonym for type definition>
	IT_OLD_COLL_STRAT <refers table synonym for type definition>,
	OT_COLL_STRAT         <refers table synonym for type definition>,
	OV_STATUS_CD     Integer,
	OT_MESSAGE    < some table type>
);

When we call the procedure from the hdb-ext library it gives us us the following error:

Error: Could not create temporary table: #mgmt.access.procedures.collection::PR_UPDATE_COLLECTION_STRATEGY_IT_NEW_COLL_STRAT_1571127570877: invalid table name: mgmt.access.synonyms::SY_SL_COLLECTION_STRATEGY

We found that when we call the procedure which expects table as parameters, hdb-ext library tries to create temporary tables using statement

'CREATE LOCAL TEMPORARY COLUMN TABLE IT_NEW_COLL_STRAT  LIKE <synonym reference from procedure table parameter definition>'

and thats where its failing because as per our understanding LIKE addition in CREATE LOCAL TEMPORARY COLUMN TABLE statement expects db table or table type.

hdb-ext should handle this scenario where procedure could be call when they are defined with parameters referring to synonyms rather than actual db tables.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue does not name files or tests. Start by locating hdb-ext's procedure-call path that creates temporary tables with CREATE LOCAL TEMPORARY COLUMN TABLE ... LIKE, then reproduce the failure with a procedure whose table parameters reference synonyms. Done means procedure calls with synonym-based table parameters no longer fail during temporary-table creation.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.