Informix

 View Only
  • 1.  Safe to DROP sbspace with zombie objects?

    IBM Champion
    Posted Fri October 27, 2023 01:59 PM

    IDS 12.10.FC14

    Solaris 10   1/13

    This is related to this prior thread which discusses sbspaces that contain objects with Ref Count = 0, or Ref Count = 1, but with zero tables in the database that actually reference the object.

    The work-around is simple and effective: bounce Informix, then run 'onspaces -cl'.

    That, of course, means an interruption in service, which we avoid as much as possible for our production databases.  And, the database involved in this case is production.

    Running 'onspaces -cl' cleans up the erroneous objects with Ref Count = 0, but, does it do anything else?

    I'm always paranoid about doing stuff to production.  I want to DROP that sbspace, so I don't care whether it is cleaned up first, or not.  But, if it does anything else (behind the scenes) that could have some side-effect that would "bite me", I'll wait for our next maintenance window, and do the bounce.

    Otherwise, I could just do a forced DROP ('onspaced -d -f') and be on my way.

    Might anyone know if there is any risk in doing the forced drop, as opposed to cleaning the sbspace, and then doing the drop?

    (I have already satisfied myself that the remaining object that has a Ref Count = 1, really and truly is absolutely NOT referenced by any other table in the database.  So, I am happy to destroy it, too.  How 'oncheck -cS'  could report a Ref Count = 1, when there is no reference is a mystery to me.  Were it up to me, I would insist that Informix should track the references, and be able to tell me what table(s) reference objects when Informix asserts that there are more than 0 references.)

    Anyway, I can't mock up a test environment because I do not know how to intentionally create zombie objects (objects that have a Ref Count of 0-- or more than 0--, yet have zero tables in the database that actually reference the object).

    I just want to (forcibly) delete that sbspace, but do not want to put a production database at risk.

    Thank you.

    DG



    ------------------------------
    David Grove
    ------------------------------


  • 2.  RE: Safe to DROP sbspace with zombie objects?

    Posted Sun October 29, 2023 08:25 AM
    "Anyway, I can't mock up a test environment because I do not know how to intentionally create zombie objects (objects that have a Ref Count of 0-- or more than 0--, yet have zero tables in the database that actually reference the object).”

    Can you not do a PROD restore into test?

    Regards,


    Clive Eisen




  • 3.  RE: Safe to DROP sbspace with zombie objects?

    IBM Champion
    Posted Sun October 29, 2023 11:58 PM

    Good idea.  I'll just have to create some chunks and drop some chunks (on the test platform).