Hello Martin,

I was able to reproduce the problem, as follows. Create database using
backup from 7.4.3, load system tables, kill kernel process without
further ado. Does this fit into your case?

As the indexes were created by the load system tables but not yet
manifested on the data volumes by a save point, the next restart marked
the indexes as bad. This is currently a feature of MaxDB to prevent
expensive index recreation during restart. The user has therefore the
privilege to manually recreate those indexes at a time suitable within
his environment.

Unfortunately, the dbmcli command "sql_recreateindex ..." tries not only
to verify, that the index is marked as bad, but has also to figure out
the columns that were part of the index. Therefore it uses the view
DOMAIN.INDEXCOLUMNS, which unfortunately does not contain information
about any schemas, that start with SYS except schema SYSINFO. Schema
SYSDBFILESYSTEM is obviously excluded from that view.

To make a long story short, until the sql_recreateindex command is
fixed, you have to either recreate the indexes manually:

drop index CONTAINER_INDEX
drop index INODE_INDEX_1
drop index INODE_INDEX_2

create unique index CONTAINER_INDEX on SYSDBFILESYSTEM.CONTAINER (INODE)
create unique index INODE_INDEX_1 on SYSDBFILESYSTEM.INODE
(ViewOwner,ParentDirectory, Name)
create unique index INODE_INDEX_2 on SYSDBFILESYSTEM.INODE (Container)

Or, if the scenario mentioned above is fitting your case, you could also
recreate the database using the backup, load the system tables and avoid
to kill the database, but do a backup instead.

Best regards,
Tilo Heinrich
SAP Labs Berlin

-----Original Message-----
From: Martin Cordova [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, December 27, 2005 9:14 PM
To: maxdb
Subject: Re: "Row not found" error when recreating index...

Hi Tilo:

In addition, an attempt to check the database structure ends with this
error message:

./dbmcli -d prod -u dbm,dbm
./dbmcli on prod>db_execute check data
ERR
-24988,ERR_SQL: Sql error
-9041,00000000030000000003

Database error file shows this:

2005-12-27 15:52:11    24 ERR 53019 CHECK    Base error:
index_not_accessib
2005-12-27 15:52:11    24 ERR 53019 CHECK    Root pageNo: 140762
2005-12-27 15:52:11    24 ERR 53019 CHECK    Base error:
index_not_accessib
2005-12-27 15:52:11    24 ERR 53019 CHECK    Root pageNo: 89427
2005-12-27 15:52:11    24 ERR 53019 CHECK    Base error:
index_not_accessib
2005-12-27 15:52:11    24 ERR 53019 CHECK    Root pageNo: 106262
2005-12-27 16:14:23    24 ERR 53000 CHECK    Check data finished
unsuccessfully

Best regards,
Martin Cordova
--
Dinamica - RADical J2EE framework
open source, easy and powerful
http://www.martincordova.com

On 12/27/05, Martin Cordova <[EMAIL PROTECTED]> wrote:
> Hi Tilo, here is the output of the SQL commands, executed from
> SQLStudio, logged as DBA, DBA:
>
> 1) SELECT * FROM SYSDBM.INFO_BAD_INDEXES
>
> SYSDBFILESYSTEM   CONTAINER     CONTAINER_INDEX
> SYSDBFILESYSTEM   INODE INODE_INDEX_1
> SYSDBFILESYSTEM   INODE INODE_INDEX_2
>
> 2) SELECT * FROM SYSDBM.INFO_BAD_INDEXES WHERE "Schema
> Name"='SYSDBFILESYSTEM' AND "Table Name"='INODE' AND "Index
> Name"='INODE_INDEX_1'
>
> SYSDBFILESYSTEM   INODE INODE_INDEX_1
>
> 3) select BADINDEXES from SYSDD.DBM_STATE
>
> Returns: 3
>
> 4) select * from SYSDD.BAD_INDEXES
>
> SYSDBFILESYSTEM SYSDBFILESYSTEM  CONTAINER CONTAINER_INDEX
> SYSDBFILESYSTEM SYSDBFILESYSTEM  INODE  INODE_INDEX_1
> SYSDBFILESYSTEM SYSDBFILESYSTEM  INODE  INODE_INDEX_2
>
> How should I log into DBMCLI in order to execute the sql_recreateindex
> command? Maybe that is the source of the problem, since the tables you
> mentioned seem to have the expected information.
>
> Best regards,
> Martin
>
>
> On 12/27/05, Heinrich, Tilo <[EMAIL PROTECTED]> wrote:
> > Hello Martin,
> >
> > DBM command sql_recreateindex tries to determine, whether
> > SYSDBFILESYSTEM.INODE.INODE_INDEX_1 is marked as bad or not. It
> > therefore, executes the following SQL command:
> >
> > SELECT * FROM SYSDBM.INFO_BAD_INDEXES WHERE "Schema
> > Name"='SYSDBFILESYSTEM' AND "Table Name"='INODE' AND "Index
> > Name"='INODE_INDEX_1'"
> >
> > It seems, that no result is returned for the select, hence the
answer
> > "Row not found". Please verify this.
> >
> > Please execute also an "sql_execute select BADINDEXES from
> > SYSDD.DBM_STATE" and a "sql_execute select * from SYSDD.BAD_INDEXES"
and
> > post the result too.
> >
> > Best regards
> > Tilo Heinrich
> >
> > -----Original Message-----
> > From: Martin Cordova [mailto:[EMAIL PROTECTED]
> > Sent: Monday, December 26, 2005 4:37 PM
> > To: maxdb
> > Subject: "Row not found" error when recreating index...
> >
> > After restoring from 7.4 to 7.6, with the database in online mode,
the
> > following indexes are reported BAD by DBMGUI, all from the schema
> > SYSDBFILESYSTEM:
> >
> > INODE.INODE_INDEX1
> > INODE.INODE_INDEX2
> > CONTAINER.CONTAINER_INDEX
> >
> > When trying to rebuild any of these indexes an error occurs:
> >
> > ./dbmcli on prod>sql_recreateindex
SYSDBFILESYSTEM.INODE.INODE_INDEX_1
> > ERR
> > -24988,ERR_SQL: Sql error
> > 100,Row not found
> >
> > A "check extended" reported these problems:
> >
> > 2005-12-22 18:44:45    24 ERR 53019 CHECK    Base error:
> > index_not_accessib
> > 2005-12-22 18:44:45    24 ERR 53019 CHECK    Root pageNo: 140762
> > 2005-12-22 18:44:45    24 ERR 53019 CHECK    Base error:
> > index_not_accessib
> > 2005-12-22 18:44:45    24 ERR 53019 CHECK    Root pageNo: 89427
> > 2005-12-22 18:44:45    24 ERR 53019 CHECK    Base error:
> > index_not_accessib
> > 2005-12-22 18:44:45    24 ERR 53019 CHECK    Root pageNo: 106262
> >
> > I already updated system tables several times (load_systab), also
> > updated statistics on system tables
(sql_updatestat_per_systemtable).
> >
> > Is there a workaround for this problem?
> >
> > Best regards,
> > Martin
> > --
> > Dinamica - RADical J2EE framework
> > open source, easy and powerful
> > http://www.martincordova.com
> >
> > --
> > MaxDB Discussion Mailing List
> > For list archives: http://lists.mysql.com/maxdb
> > To unsubscribe:
> > http://lists.mysql.com/[EMAIL PROTECTED]
> >
> >
> > --
> > MaxDB Discussion Mailing List
> > For list archives: http://lists.mysql.com/maxdb
> > To unsubscribe:
http://lists.mysql.com/[EMAIL PROTECTED]
> >
> >
>
>
> --
> Dinamica - RADical J2EE framework
> open source, easy and powerful
> http://www.martincordova.com
>

-- 
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:
http://lists.mysql.com/[EMAIL PROTECTED]


--
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to