SourceForge.net Logo
Main Overview Wiki Issues Forum Build Fisheye
Issue Details (XML | Word | Printable)

Key: CMP-328
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Minor Minor
Assignee: Shay Banon
Reporter: Matt Solnit
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Compass

Typo in configuration XSD blocks use of dbcp defaultTransactionIsolation

Created: 04/Dec/06 03:32 PM   Updated: 19/Feb/10 08:02 AM
Component/s: Compass::Core
Affects Version/s: 0.9.1, 1.0.0, 1.0.1, 1.1 M1, 1.1 M2, 1.1 M3
Fix Version/s: 1.1 RC1


 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Matt Solnit added a comment - 04/Dec/06 03:34 PM
CRAP! I hit the Enter key prematurely and now I can't edit this bug.

Here's what I meant to write:
"Typo in compass-core-config.xsd blocks use of 'defaultTransactionIsolation' setting for DBCP".

The XSD names the attribute "defaultTransacitonIsolation", but the SchemaConfigurationBuilder.java code looks for "defaultTransactionIsolation" (correct spelling). If I change the XML to use what the Java code is looking for, then I get a SAX parse error since it doesn't match the schema.

The workaround is to use the <settings> element.


Matt Solnit added a comment - 04/Dec/06 03:38 PM
XML examples:

<!-- Example 1: passes XSD validation but isn't recognized by Compass -->
<dataSourceProvider>
<dbcp url="jdbc:mysql://localhost/soasta_repository?emulateLocators=true"
username="soasta"
password="soasta"
driverClass="com.mysql.jdbc.Driver"
defaultTransacitonIsolation="2"
maxActive="10" maxWait="5" maxIdle="2" initialSize="3" minIdle="4"
poolPreparedStatements="true" />
</dataSourceProvider>

<!-- Example 2: fails XSD validation -->
<dataSourceProvider>
<dbcp url="jdbc:mysql://localhost/soasta_repository?emulateLocators=true"
username="soasta"
password="soasta"
driverClass="com.mysql.jdbc.Driver"
defaultTransactionIsolation="2"
maxActive="10" maxWait="5" maxIdle="2" initialSize="3" minIdle="4"
poolPreparedStatements="true" />
</dataSourceProvider>

<!-- Example 3: workaround -->
<settings>
<setting name="compass.engine.store.jdbc.connection.provider.dbcp.defaultTransactionIsolation" value="2"/>
</settings>