A bug found

Oracle数据库错误与解决方案

Got an error from alert log:

Tue Mar 8 04:54:18 2011
Errors in file /global/oracle1/centDB/admin/centDB/udump/centdb_ora_8749.trc:
ORA-07445: exception encountered: core dump [_memcmp()+88] [SIGSEGV] [Address not mapped to object] [0x000000010] [] []

SQL> SELECT NAME, VALUE
2 FROM V$SYSSTAT
3 WHERE NAME = 'redo buffer allocation retries';

NAME VALUE
---------------------------------------------------------------- ----------
redo buffer allocation retries 387582

SQL> SELECT a.name,b.value
2 FROM v$statname a,v$sysstat b
3 WHERE a.statistic# = b.statistic#
AND a.name like '%redo%'; 4

NAME VALUE
---------------------------------------------------------------- ----------
redo synch writes 42621021
redo synch time 42146939
redo blocks read for recovery 0
redo entries 229665272
redo size 3.7509E+11
redo buffer allocation retries 387582
redo wastage 5160641384
redo writer latching time 1297
redo writes 27577242
redo blocks written 762220497
redo write time 50104443

NAME VALUE
---------------------------------------------------------------- ----------
redo log space requests 8977
redo log space wait time 273809
redo log switch interrupts 0
redo ordering marks 19457235
redo subscn max counts 0

16 rows selected.

Top 5 Timed Events Avg %Total
~~~~~~~~~~~~~~~~~~ wait Call
Event Waits Time (s) (ms) Time Wait Class
------------------------------ ------------ ----------- ------ ------ ----------
log file parallel write 6,467 109 17 73.5 System I/O
log file sync 6,411 75 12 50.5 Commit
db file parallel write 1,301 70 53 47.0 System I/O
CPU time 49 33.3
log buffer space 54 40 750 27.4 Configurat

But the database is not busy during the timeframe:

Snap Id Snap Time Sessions Curs/Sess
--------- ------------------- -------- ---------
Begin Snap: 38796 08-Mar-11 04:00:06 38 1.2
End Snap: 38797 08-Mar-11 05:00:08 38 1.3
Elapsed: 60.02 (mins)
DB Time: 2.47 (mins)

So I doubt it is a bug:

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Solaris: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

Searched it from MOS and found Bug 4591936

Applies to:

Oracle Server - Enterprise Edition - Version: 10.1.0.2 to 10.2.0.3
This problem can occur on any platform.

Symptoms

Trace files are getting generated withfollowing errors logged in trace files:

*** 2006-06-13 22:24:29.826
*** SERVICE NAME:() 2006-06-13 22:24:29.825
*** SESSION ID:(166.1) 2006-06-13 22:24:29.825
Maximum redo generation record size = 132096 bytes
Maximum redo generation change vector size = 98708 bytes
*** 2006-06-13 22:24:57.649
Media recovery not enabled or manual archival only 0x10000
Media recovery not enabled or manual archival only 0x10000
Media recovery not enabled or manual archival only 0x10000
Media recovery not enabled or manual archival only 0x10000

Cause

Bug 4591936
Abstract: KCCSGA_UPDATE_CKPT,KCCDEBUG_LEVEL,MEDIA RECOVERY MESSAGES ARE LOGGED AT STARTUP
Fixed In Ver: 11.0

Solution

These messages were added for debugging purposeand can be ignored.
Delete these files manually or use some job to clean up diskspace.

A one-off patch is available on top of 10.2.0.3 for following platforms
- HP-UX Itanium
- Solaris 64 Bit

Bug is fixed in 10.2.0.4, 11.1.0.6 and higher versions.

To download:

1. Go to metalink.oracle.com
2. On top left hand side under Quick Find from the drop down list choose "Patch Number" and provide the patch number as 4591936 in the box below it. Click go.
3. In the following page, choose your platform and download the patch. ( This will list all the plaforms for which patch is available )

Please follow the readme.txt for instruction on how to apply the patch.

Please note that these one-off patches are not regression tested and hence you are advised to apply the same on a test server before applying it on a production box.

References

BUG:4591936 - KCCSGA_UPDATE_CKPT,KCCDEBUG_LEVEL,MEDIA RECOVERY MESSAGES ARE LOGGED AT STARTUP


### 软件开发中的Bug定义 在软件开发过程中,Bug是指程序中存在的错误、缺陷或异常行为[^2]。这些错误可能导致应用程序未能按照预期的方式运行或者完全无法工作。 为了更好地理解和处理Bug,在记录和报告时通常会包含以下几个重要方面: - **发现问题的版本**:开发人员需知晓出现问题的具体版本号以便于获取该版本对应的源码来进行故障重现操作。这有助于更精准地锁定问题所在并评估修复方案的影响范围。 - **问题发生的环境配置详情**:对于Web应用来说,应提供浏览器名称及其版本号;而对于移动应用程序,则要说明设备型号、屏幕分辨率以及操作系统版本等信息。详尽描述可以极大提高排查效率,并帮助确认是否存在特定平台上的兼容性问题。 当发现Bug之后,通过编写清晰准确的日志文件、截图或者其他辅助材料能够进一步协助开发者理解问题的本质,从而加快解决问题的速度。 ```python def report_bug(version, environment_details): """ A function to simulate reporting a bug with version and detailed environment information. Args: version (str): The software version where the issue was found. environment_details (dict): Details about hardware/software environments. Returns: str: Confirmation message of reported bug details. """ log_message = f"Bug reported for Version {version}. Environment Info: " for key, value in environment_details.items(): log_message += f"{key}: {value}, " return log_message[:-2] # Example usage print(report_bug("v1.0", {"OS": "Windows 10", "Browser": "Chrome v89"})) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值