Skip to Main Content
IBM Power Ideas Portal


This portal is to open public enhancement requests against IBM Power Systems products, including IBM i. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Not under consideration
Workspace IBM i
Categories Db2 for i
Created by Guest
Created on Jan 3, 2020

Exit Point QIBM_QDB_OPEN split

In the operating system there is one entry point DBOPEN Format DBOP0100 that takes care of database access. This is a really powerful exit point, because if activated it shows every access to a file. But on the other side is this exact the biggest problem that providers of Firewall solutions have with this exit point.

REQUEST: Split this exit point or create two other exit points:

QIBM_QDB_OPEN_NATIVE – that is used only in case of native access (RPG, Cobol, Query, SQL, etc.)
QIBM_QDB_OPEN_ODBC – that is used only in case of external access (ODBC).

REASON: This would allow customers to register Firewall programs dedicated to external access (what is the target of Firewalls on IBM i) and there would be no performance impact anymore.


Use Case:

DBOPEN is used for Firewall solutions and see what external processes touch what files in order to allow or reject the access. So far so good. But by design the exit point is used for every access, from odbc as well as from the operating system native (RPG, Cobol, Query, SQL, etc.). This means if there is a program registered behind this exit point all external (ODBC) and internal (native) access to a file must pass this exit point. In many cases this causes delays in applications. Customer report few hours delays in their nightly work and delays in interactive jobs during the day.
We would appreciate to have this backward compatible for V7R2.


Idea priority Medium
  • Guest
    Reply
    |
    Dec 12, 2023
    BM does not intend to provide a solution to this Idea at this time, so it is being closed. There are many ways to access the database. IBM does not intend to add new exit points for combinations of database access methods.

    IBM's recommendation is to add checks to the exit point processing program to determine the interface that is being used. If an interface is not interesting, the exit program should return immediately.

    Db2 for i development team
    IBM Power Systems Development
  • Guest
    Reply
    |
    Jun 4, 2022

    Just to confirm, you are using ACTGRP(*CALLER) for your exit point programs, right?

    Also if you're using RPG IV and the RPG Logic Cycle is being used that too would severely impact performance. I would recommand either using the C or C++ language, or if RPG IV is desired, then be use to use the NON-Cycle form of RPG IV by including the MAIN keyword in the CTL-OPT (aka, Header spec) in that exit program.

    Using MAIN along with ACTGRP(*CALLER) would help performance if you're not already doing that.

  • Guest
    Reply
    |
    Apr 23, 2021

    IBM will use this request as input to planning but no commitment is made or implied. This request will be updated in the future if IBM implements it.

  • Guest
    Reply
    |
    Apr 8, 2021

    Due to processing by IBM, this request was reassigned to have the following updated attributes:
    Brand - Servers and Systems Software
    Product family - Power Systems
    Product - IBM i
    Component - Db2 for i
    Operating system - IBM i
    Source - Client

    For recording keeping, the previous attributes were:
    Brand - Servers and Systems Software
    Product family - Power Systems
    Product - IBM i
    Component - Work Management and Messaging
    Operating system - IBM i
    Source - Client

  • Guest
    Reply
    |
    Nov 23, 2020

    Due to processing by IBM, this request was reassigned to have the following updated attributes:
    Brand - Servers and Systems Software
    Product family - Power Systems
    Product - IBM i
    Component - Work Management and Messaging
    Operating system - IBM i
    Source - Client

    For recording keeping, the previous attributes were:
    Brand - Servers and Systems Software
    Product family - Power Systems
    Product - IBM i
    Component - Db2 for i
    Operating system - IBM i
    Source - Client

  • Guest
    Reply
    |
    Aug 16, 2020

    this also refers to ticket TS004052785

  • Guest
    Reply
    |
    May 5, 2020

    One customer reports massive performance issue using DB_OPEN on a single job (3 hours with, 1 hour without) so they stopped using that exit point which left a security problem due to not monitoring the access. They urgently ask for a comment or solution.
    Due to the high number of calls even the call itself does create a lot of work even if the processing program in the exit point is simply exiting without further processing.

  • Guest
    Reply
    |
    Feb 19, 2020

    Hello Michael, the QZDA.. exit points request to build an own parser that checks the incoming sql statement. Such a statement can be very complex and it may fail to detect the files used. The DBOPEN exit point is 100% accurate in detecting the files even in the complexest sql statement.

  • Guest
    Reply
    |
    Feb 18, 2020

    Can't this functionality be accomplished via the QZDA_____ exit points instead of QIBM_QDB_OPEN?

    These are not hit for native access.

  • Guest
    Reply
    |
    Feb 17, 2020

    The COMMON Europe Advisory Council (CEAC) has reviewed this requirement and recommends that IBM view this as a MEDIUM priority requirement that should be addressed.

    Background: The CEAC members have a broad range of experience in working with small and medium-sized IBM i customers. CEAC has a crucial role in working with IBM i development to help assess the value and impact of individual RFEs on the broader IBM i community and has therefore reviewed your RFE.

    To find out how CEAC help to shape the future of IBM i, see CEAC @ ibm.biz/BdYSYj and the article "The Five Hottest IBM i RFEs Of The Quarter" at ibm.biz/BdYSZT

    Therese Eaton – CEAC Program Manager, IBM

  • Guest
    Reply
    |
    Jan 27, 2020

    Niels,
    maybe split between 127.0.0.1 and RestOfWorld, or (if internally possible)
    to differentiate between RLA on Cobol/RPG and general ODBC/JDBC interfaces.

    Main reason for this is a customer working on billions of records changes at night with some old RPG 2.5 code and
    in parallel uses the tables from external.

  • Guest
    Reply
    |
    Jan 6, 2020

    I like your idea however it raises some questions:

    How will you determine that ODBC is not from a "native" python or node.js program. The question here is: what is native to you? You can also say the same for any JDBC connection.