Skip to Main Content
IBM Data and AI Ideas Portal for Customers


This portal is to open public enhancement requests against products and services offered by the IBM Data & AI organization. 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

Post ideas and requests to enhance a product or service. Take a look at ideas others have posted and upvote them if they matter to you,

  1. Post an idea

  2. Upvote ideas that matter most to you

  3. Get feedback from the IBM team to refine your idea


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.

IBM Employees should enter Ideas at https://ideas.ibm.com


Status Not under consideration
Workspace Db2 for z/OS
Created by Guest
Created on Aug 2, 2023

Adding new values to CHECK Constraints should not put Table in CHECK PENDING

    There are many instances today when existing CHECK Constraints have to be modified to add additional values. Currently, making any modifications to CHECK Constraints to add or remove values requires that the Constraint be dropped and re-created.  This causes an outage on the table as the table is put into CHECK PENDING until either a CHECK DATA or REPAIR Utility is run to remove the CHECK PENDING status.  If a table is very large, and unless a REPAIR Utility is run, the outage can be significant.

      This idea goes to higher availability for shops that require 24x7 processing and is intended to reduce the outages caused by certain changes to CHECK Constraints.

     Specifically:

1)      Adding a value to an existing CHECK Constraint should not require a DROP/CREATE of the existing constraint.  A new SQL command such as those suggested below can be use to simply add a value to an existing constraint.  The ALTER command would verify that the new value being added conforms to the requirements of the column’s data type. Since it is assumed that a given Table’s data already conforms to any existing constraint, adding a new value to that constraint should have no impact on the Table since the new value would have been restricted from the Table with the existing Constraint.   Additionally, new values can be added to any constraint in advance of any related application code moves.

a.      ALTER CONSTRAINT  or 

b.      ALTER TABLE tname  ALTER CONSTRAINT constname

2)      Dropping obsolete values from CHECK constraints should also not require a DROP/CREATE of the existing constraint.  However to ensure that a valid value is not being removed, a DROP of a constraint value might be handled in a couple of ways:

a.      Have the command detect if at least one occurrence of the value exists and fail the command if it does.

b.      Have the command execute as a PENDING change and place the Table in a new status of Advisory Check Pending.  If a subsequent CHECK DATA does not find any occurrences of the dropped value the Advisory Check Pending would be removed; otherwise, the Advisory status would remain.  The user can then decide to have any data updated separately or, since the change is a PENDING change, it can be dropped.

3)      To facilitate #2, the CHECK DATA Utility should be enhanced to allow for checking only CHECK Constraint values and possibly only specific Constraints.  A Table may have many Constraints defined and for large Tables, if only one Constraint is changed it would seem appropriate to be able to request that only that one Constraint be checked.  By allowing to focus in on only one CHECK Constraint the Elapsed Time and/or CPU Time may be reduced considerably.

Needed By Not sure -- Just thought it was cool
  • Admin
    Janet Figone
    Reply
    |
    Oct 17, 2023

    Dear Dave,

    Thank you for submitting this Db2 for z/OS enhancement request. We have reviewed this request and believe it is a good candidate for the Db2 for z/OS product. However, it does not align within functionality prioritized for delivery within the next 12 months. Therefore, unfortunately, we will not be considering this idea at this time.


    We appreciate your input to the Db2 for z/OS development team. We hope that you will continue to submit enhancement suggestions for improvements as customer feedback is a key component to shaping the future direction of Db2 for z/OS.


    Sincerely,

    Db2 for z/OS Team