IBM Data and AI

Welcome to the IBM Data and AI Ideas Portal for Clients!

We welcome and appreciate your feedback on IBM Data and AI Products to help make them even better than they are today!
Before you submit an idea, please perform a search first as a similar idea may have already been reported in the portal. If a related idea is not yet listed, please create a new idea and include with it a description which includes expected behavior as well as why having this feature would improve the service and how it would address your use case.
IBM Employees:
Clients:
  • Our team welcomes any feedback and suggestions you have for improving our offerings / products! This forum allows us to connect your offering / product improvement ideas with IBM product and engineering teams.

  • If you have not registered on this portal please click on the following link and register. To complete registration you will need to open the email you will receive from Aha to confirm your identity. http://ibm.biz/IBM-Data-and-AI-Portal-Register

Additional Information:
  • The shorter URL for this site is: https://ibm.biz/IBM-Data-and-AI-Ideas

  • To view our roadmaps: http://ibm.biz/Data-and-AI-Roadmaps

  • Reminder: This is not the place to submit defects or support needs, please use normal support channel for these cases

  • Please do not use the Ideas Portal for reporting bugs - we ask that you report bugs or issues with the product by contacting IBM support.

Improvement in the check for high serial values

I'm trying to check if a serial value has reached its upper limit. I noticed the following unpleasant behaviour.

In the sysmaster tables sysptnhdr and sysactptnhdr the currently used serial values are in three fields for the datatypes serial, serial8 and bigserial.

If my serial approaches the upper limit for integer data types, the easiest way is to change it to a serial8 or bigserial.

During the alter table, the current value from serial is now copied into the column of the new type. Unfortunately the value of serial is not reset to 0 or NULL.

This means that a value check still reports a dangerously high serial value, even though the table no longer has this data type.

Since you can have both types serial and serial8/BigSerial in a table in parallel, you must now also check the syscolumns of the affected database to suppress this message.

At least for databases with non-english locale this is even more difficult, because you cannot access directly from sysadmin or sysmaster.

My suggestion is that only the field of the data type that is used is filled with the current serial value and the others are reset to 0 or NULL.

A repro for this behaviour can be found in the support case TS002868693.

  • Avatar32.5fb70cce7410889e661286fd7f1897de Guest
  • Aug 17 2020
  • Under Review
Who would benefit from this IDEA? All users who use the serial data type and check if they reach its upper limit to prevent production stopping when this happens.
How should it work?

Only the current serial data type should be used in the tables syspthhdr and syspactptnhdr. The others should be marked as unused with 0 or NULL.

Idea Priority Medium
Priority Justification There is a workaround as described above, but it is quite tricky.
Customer Name CURSOR Software AG
  • Attach files
  • Avatar40.8f183f721a2c86cd98fddbbe6dc46ec9
    Guest commented
    3 Sep 05:31pm

    A work around to this problem at ALTER time when changing the type of a column from, for example, SERIAL to BIGSERIAL would be to first set the next serial number to zero then alter the type to BIGSERIAL setting the next value manually as part of the alter:

    ALTER TABLE mytab MODIFY keycol SERIAL(0);
    ALTER TABLE mytab MODIFY keycol BIGSERIAL(16,010,001);

    I agree that this behavior should be automatic, especially given that a table can contain more than one serialized type as long as they are different types (ie one SERIAL, one BIGSERIAL, and one SERIAL8)!

NOTICE TO EU RESIDENTS: per EU Data Protection Policy, if you wish to remove your personal information from the IBM ideas portal, please login to the ideas portal using your previously registered information then change your email to "anonymous@euprivacy.out" and first name to "anonymous" and last name to "anonymous". This will ensure that IBM will not send any emails to you about all idea submissions