Open Source RDBMS - Seamless, Scalable, Stable and Free

English | Login |Register


0
(click on this box to dismiss)

I encountered Error code= -41 and Error code= -52 Internal error: object overflow address 0|760|-1 may be corrupted

From today, all of sudden it is unable to select data.

 

When tried the 1st query, the error was -493

Error messages in a SQL log file:
Syntax: Internal error: object overflow address 0|760|-1 may be corrupted. select * from scan_temp where (rownum between 1 and 5000)

I searched how to handle this, and the link http://www.cubrid.com/zbxe/346902 said I should try "cubrid checkdb" so I did.

cubrid chckdb -S -r [databasename]


then I have found different error codes(-41 and -52) the log file of [databasename]_checkdb :
Time: 02/07/13 10:36:29.408 - ERROR *** file ..\..\src\storage\file_manager.c, line 5089 ERROR CODE = -41 Tran = 1, EID = 1
Internal error: Page 1|14377(volume "C:\CUBRID\DATABA~1\EB_SCA~1\EB_SCAN_TR_x001") is not part of file VFID 0|9219(volume "C:\CUBRID\DATABA~1\EB_SCA~1\EB_SCAN_TR").

Time: 02/07/13 10:36:29.409 - ERROR *** file ..\..\src\storage\overflow_file.c, line 977 ERROR CODE = -52 Tran = 1, EID = 2
Internal error: object overflow address 0|760|-1 may be corrupted.

---------------------------

I also tried to backup with cubrid backupdb utility, but failed.

How should I do?

링크 댓글 쓰기 (1)
질문시간 3달 전
cottonspan
41
It seems that the database volumes are corrupted. Can you provide more info on how this situation happened? - [레벨:7]ginarrbrik 3달 전
2 답변들
1
This error comes when there is a inconsistency between data and log volumes. That is also why you failed to select data and backup your database correctly. In addition, your attempt of "cubrid checkdb" failed.
Regarding of all occurances, I assume your data volumes or generic volumes are corrupted.
I am suggesting the following 2 ways. If possible, try the 1st way prior to 2nd.

1. DB re-build(reconfiguring) by cubrid unloaddb/ loaddb. Basically you will export the current data and import in a new DB.
Maual link: http://www.cubrid.org/manual/90/en/Database%20Migration


2. If 1st way doesn't work well, you need to restore your previous backup files by using "cubrid restoredb" . Then there is a possibility to lose a partial data after your last backup time.

I have translated a tip from Q&A forum on Korean community
링크 댓글 쓰기 (0)
답변시간 3달 전
cottonspan
41
0

[레벨:7]ginarrbrik asked a question how this situation happened? 

Before I answer to your question, it is very difficult to say why/how exactly happened.  

 In principle, it should not be happened no matter what/how a user did to the DB. However it is a higher possibility when followings occurred. 

1) Bugs from CUBRID Old versions

Since November 2008, CUBRID becomes stabilized a lot by resolving many bugs from a variety of users. Especially volume corruption bugs were on a high priority over years. I can say the later versions(8.4.1 or later) are much more stable compared with lower versions in terms of accidental corruption. Therefore we suggest the DBAs who are running CUBRID old versions to upgrade to the latest & stable version, otherwise to the latest patch version . 

2)  Disk Fault

Not an excuse but a fact :D

Very low possibility but we've experienced several times. If DB is run on the old machine, servers from hosting services, partitioned disk by different vendors, or newaly addded disk, disk fault happened unexpectedly. 

3) Other reasons we've never seen

Despite of dev team's efforts, CUBRID QA test senarios cannot cover every case before release out. Although it happened very rarely but is a critical issue, we will keep investigate whenever any of similar cases were reported and fix them to be more stabilized.

Hope this answer helps you. 

 

링크 댓글 쓰기 (1)
답변시간 3달 전
cottonspan
41




You are either using a very old browser or a browser that is not supported.
In order to browse cubrid.org you need to have one of the following browsers:



Internet Explorer: Mozilla Firefox: Google Chrome: