BASDB data (domainversions) corrupt?

If you think that something doesn't work in Aware IM post your message here
Post Reply
hpl123
Posts: 2579
Joined: Fri Feb 01, 2013 1:13 pm
Location: Scandinavia

BASDB data (domainversions) corrupt?

Post by hpl123 »

Hi support (or other developers),
I have an issue with BASDB DB data for table domainversions being corrupt / not working. I had some server issues with one of my apps and I had to do some extensive recovery operations to fix the issues and as part of that I did a restore of all my DB´s on the server including the BASDB DB. The problem I then ran into is that the backups (all backups) for the BASDB DB and in particular the domainversions table of the BASDB DB is corrupt in some way and I am not able to restore it no matter what I do (I have tried full restore of DB, partial restore of only the domainversions table, SQL extract of data etc. and nothing works). I did initially attempt a full restore of the DB and that deleted the BASDB tables and data which means when I then tried to restore it (which wasn´t possible as the backups were corrupt), currently, I cannot restore the BASDB domainversions table in any way so I need to work around it manually. I have deleted and recreated all BS´s for all apps and then reimported data etc. which solved the issue as the domainversions rows get´s recreated BUT for the default app of the server, it´s another story. As I cannot delete the default app of the server, I need to either change the default app on the server in some way to another app and then delete and recreate the "old" default app OR I need to recreate the rows in the DB for the domainversions table (or is there something else I can do?). If I don´t fix this, I cannot place any version under test i.e the server is not working at all (for development, existing apps are running OK).

If I need to recreate the rows for the domainversions table, what should the values of the fields be? The 2 first fields DNAME and VERSIONSTR is no biggie as it´s BS name and version no so in this case it´s "Codebase" (DNAME) and "1.0" (VERSIONSTR) but what do I add in the DATA BLOB field? and is there anything else in some other table I need to add to fix this? To clarify, I need to recreate the rows in the domainversions table for the default app on the server called "Codebase", how do I do that?

Or should I just to a complete reinstall of AIM on the server and recreate/import etc. all apps/data?

Thanks in advance
Henrik (V8 Developer Ed. - Windows)
hpl123
Posts: 2579
Joined: Fri Feb 01, 2013 1:13 pm
Location: Scandinavia

Re: BASDB data (domainversions) corrupt?

Post by hpl123 »

Update:
I found an old backup file that had OK data so I managed to restore the missing rows for my default app into the domainversions table. All seems to be restored again.
Henrik (V8 Developer Ed. - Windows)
ACDC
Posts: 1138
Joined: Sat Jun 30, 2007 5:03 pm
Location: California, USA

Re: BASDB data (domainversions) corrupt?

Post by ACDC »

It would have probably been easier and safer deleting the installation and DB, doing a fresh install, Import all BSV's from backup, Publish them and then do a sql restore from a backup of the relevant tables.

This way you can be sure your AwareIM server setup is sound, and nothing comes back to bite you
hpl123
Posts: 2579
Joined: Fri Feb 01, 2013 1:13 pm
Location: Scandinavia

Re: BASDB data (domainversions) corrupt?

Post by hpl123 »

ACDC wrote:It would have probably been easier and safer deleting the installation and DB, doing a fresh install, Import all BSV's from backup, Publish them and then do a sql restore from a backup of the relevant tables.

This way you can be sure your AwareIM server setup is sound, and nothing comes back to bite you
Yeah, I also thought about that and will probably do it when upgrading to 8.3 as it is a production server and don´t wanna jeopardise more problems down the line.
Henrik (V8 Developer Ed. - Windows)
rocketman
Posts: 1239
Joined: Fri Jan 02, 2009 11:22 pm
Location: Preston UK
Contact:

Re: BASDB data (domainversions) corrupt?

Post by rocketman »

I was recently testing my disaster recovery procedures and this is my observations.

The disaster recovery comprises 1 single dump file at 3:00am each morning (contains entire DB dump - 13 clients, 13 BSV's) one or more bin logs

I created a new instance of AIM on a new machine, (so new BASDB)
created and published new business spaces for all clients using latest production BSV (So all tables correctly regenerated)
*** KEY BIT ***
opened up the backup file in a text editor (I'm on a MAC so it was BBEdit)
DELETED all the file relating to any BASDB object including the creation of BASDB itself (I also removed references to BASDBTEST as well because it wasn't needed and I've been wanting to get rid of that stuff for years now

using MySQL workbench RESTORED the modified dump file. Didn't get as far as running the bin logs - that's the next bit of the learning curve

All good
Rocketman

V8.7 Developer Edition. Server 2016 Standard edition. MySql 5.5
ACDC
Posts: 1138
Joined: Sat Jun 30, 2007 5:03 pm
Location: California, USA

Re: BASDB data (domainversions) corrupt?

Post by ACDC »

opened up the backup file in a text editor (I'm on a MAC so it was BBEdit)
DELETED all the file relating to any BASDB object including the creation of BASDB itself (I also removed references to BASDBTEST as well because it wasn't needed and I've been wanting to get rid of that stuff for years now
I only dump the relevant tables and restore the untouched .sql file into the new AIM setup. Editing the .sql file can get you into trouble.

When the restore takes place it recreates the relevant tables and leaves all the others intact that was created when publishing the new environment. After the restore, the newly created table structure should match the AIM BSV setup
Post Reply