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 Submitted
Workspace Informix
Components Informix Server
Created by Guest
Created on Feb 5, 2024

Improve Ontape Point-in-Time Restores for Tables

The archecker tool can be used for point-in-time restores of table data from Level 0 Informix backups in conjunction with whatever logs were created after the Level 0 backup. However, if an organization does one Level 0 backup per week, then they will have a problem if they need to do a point-in-time restore if they are working with a table that was either created or altered after the Level 0 backup. In the scenario where the table was created after the Level 0 backup and then rows were added, then no point-in-time restore is possible. In the scenario where a new field is added after the Level 0 backup, then when you attempt a point-in-time restore, you may find garbled data in the new field.


I am attaching my notes that reflect some of my experiments with archecker, in case they are helpful to anyone.


Here is the sequence to reproduce the problem:

a. Create a database named "dargan_test".

b. Do a Level 0 backup if one has not been done recently.

c. Create a table named test_data:

create table "informix".test_data
(
c_info char(20)
) extent size 32 next size 32 lock mode row;

d. Insert three rows

e. Truncate the table.

f. Force a log backup: “ontape –a” (optionally run this command a second time)

g. Create a new archecker script with the lines below. We can name the file “test”.

database dargan_test;
create table "informix".test_data
(
c_info char(20)
) extent size 32 next size 32 lock mode row;
insert into test_data select * from test_data;
restore to <point-in-time>;

h. Now run archecker:

archecker -tdvsf test

i. In the lines that appear on the screen you should be able to find this line if archecker had done its job in the expected manner:

Logically recovered dargan_test:test_data Inserted 3 Deleted 0 Updated 0

j. If you look at your table again, you should see the 3 rows now, but I don't think you will. I think you will find that the three rows are missing and you don't see the message saying that 3 rows were inserted.

The archecker tool is supposed to help with recovering data up until the moment when someone inadvertently truncates the data in the table.

I've found that if you create the table, *** do a Level 0 backup ***, then add the rows, force the new log with "ontape -a", then truncate the table, then run archecker, then the rows are restored. However, if you create the table AFTER you do the Level 0 backup, then the archecker tool fails to do its job.


Needed By Yesterday (Let's go already!)
  • Guest
    Reply
    |
    Feb 5, 2024

    I edited my original post to substitute a line for restoring to a particular point in time rather than "restore to current". See my other comment for more information about this aspect.

  • Guest
    Reply
    |
    Feb 5, 2024

    You will notice that in step "e" we are truncating the table after adding the three rows. You might think that the truncation of those rows would occur when the archecker tool runs the script, but actually the archecker tool has an undocumented feature -- if it sees table truncation, it stops the "restore".


    You could alter my example by substituting a line like this:

    restore to "2024-01-23 17:16:30";

    instead of the "restore to current". If you pick a point in time before the truncate in step "e", then should should have the same result of not seeing the rows that were added to the new table.