JDBC connection over SSL failed with "IO Error:Received fatal alert bad_record_mac"

JDBC connection over SSL failed with "IO Error:Received fatal alert bad_record_mac"

book

Article ID: KB0090637

calendar_today

Updated On:

Products Versions
TIBCO BusinessEvents Enterprise Edition -
Not Applicable -

Description

Resolution:
Description:
============
I use ojdbc6.jar and jre 1.6.0 to connect to Oracle database with SSL enabled. The jdbc connection over SSL failed with "IO Error:Received fatal alert bad_record_mac"

Environment:
===========
BusinessEvents 3.0.x
Oracle

Symptoms:
========
On engine startup, get the following exception while initializing the JDBC connection:
>>>>>>>>>>>>>>>
2012 Oct 19 13:27:45:726 GMT -7 cdcxvd0961 Error [DistributedCache] - java.lang.Exception: SQL Error while Instantiating Connection Cache :java.sql.SQLRecoverableException: IO Error: Received fatal alert: bad_record_mac
2012 Oct 19 13:27:45:726 GMT -7 cdcxvd0961 Error [DistributedCache] -   at  com.tibco.be.oracle.impl.OracleConnectionPool.initializeConnectionCache(OracleConnectionPool.java:385)
2012 Oct 19 13:27:45:726 GMT -7 cdcxvd0961 Error [DistributedCache] -   at com.tibco.be.oracle.impl.OracleConnectionPool.activate(OracleConnectionPool.java:79)
2012 Oct 19 13:27:45:726 GMT -7 cdcxvd0961 Error [DistributedCache] -   at com.tibco.be.oracle.impl.OracleActiveConnectionPool.activate(OracleActiveConnectionPool.java:151)
2012 Oct 19 13:27:45:726 GMT -7 cdcxvd0961 Error [DistributedCache] -   at com.tibco.be.oracle.impl.OracleAdapter.&ltinit>(OracleAdapter.java:143)
2012 Oct 19 13:27:45:727 GMT -7 cdcxvd0961 Error [DistributedCache] -   at com.tibco.be.oracle.BECoherenceOracleStore.initialize(BECoherenceOracleStore.java:566)
2012 Oct 19 13:27:45:727 GMT -7 cdcxvd0961 Error [DistributedCache] -   at com.tibco.be.oracle.BECoherenceOracleStore.&ltinit>(BECoherenceOracleStore.java:151)
<<<<<<<<<<<<<<<

Resolution:
==========
If BE uses jre 1.6.0,  you need to use ojdbc6.jar for the Oracle thin driver. Make sure the jar is in BE classpath.

If the connection fails with error "IO Error:Received fatal alert bad_record_mac", you should change security vendor to j2se.
Set the following property in TRA file:

java.property.TIBCO_SECURITY_VENDOR=j2se

Issue/Introduction

JDBC connection over SSL failed with "IO Error:Received fatal alert bad_record_mac"