You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@turbine.apache.org by bu...@apache.org on 2002/01/29 23:03:42 UTC

DO NOT REPLY [Bug 6113] New: - Turbine breaks using case sensitive databases

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6113>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6113

Turbine breaks using case sensitive databases

           Summary: Turbine breaks using case sensitive databases
           Product: Turbine
           Version: 2.1 final
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Source
        AssignedTo: turbine-dev@jakarta.apache.org
        ReportedBy: gederer@gscmail.gsfc.nasa.gov


The case sensitivity of column names is inconsistent across database utility 
classes and schema files in the source code. In particular, the 
id-table-schema.xml file defines the column "NEXT_ID" in the table "ID_TABLE", 
but in several places, notably org.apache.turbine.util.db.IDBroker, the column 
is referenced as "next_id". (There may be other inconsistencies as well. I did 
not grep for all the different columns defined in your schemas.)

This causes Turbine to throw the following exception when using the sample 
application with a case sensitive database (I'm using Sybase)...

[Tue Jan 29 14:08:30 EST 2002] -- ERROR -- Turbine.handleException: null
[Tue Jan 29 14:08:30 EST 2002] -- ERROR --
        Exception:  java.lang.reflect.InvocationTargetException
        Stack Trace follows:
        java.lang.reflect.InvocationTargetException: com.sybase.jdbc2.jdbc.SybSQ
LException: Invalid column name 'next_id'.
        at com.sybase.jdbc2.tds.Tds.processEed(Tds.java:2636)
        at com.sybase.jdbc2.tds.Tds.nextResult(Tds.java:1996)
        at com.sybase.jdbc2.jdbc.ResultGetter.nextResult(ResultGetter.java:69)
        at com.sybase.jdbc2.jdbc.SybStatement.nextResult(SybStatement.java:204)
        at com.sybase.jdbc2.jdbc.SybStatement.nextResult(SybStatement.java:187)
        at com.sybase.jdbc2.jdbc.SybStatement.updateLoop(SybStatement.java:1616)
        at com.sybase.jdbc2.jdbc.SybStatement.executeUpdate(SybStatement.java:15
99)
        at com.sybase.jdbc2.jdbc.SybStatement.executeUpdate(SybStatement.java:41
4)
        at org.apache.turbine.util.db.IDBroker.updateRow(IDBroker.java:742)
        at org.apache.turbine.util.db.IDBroker.storeIDs(IDBroker.java:563)
        at org.apache.turbine.util.db.IDBroker.getNextIds(IDBroker.java:371)
        at org.apache.turbine.util.db.IDBroker.getIdAsBigDecimal(IDBroker.java:2
85)
        at org.apache.turbine.om.peer.BasePeer.doInsert(BasePeer.java:746)
        at org.apache.turbine.om.peer.BasePeer.doInsert(BasePeer.java:657)
        at org.apache.turbine.services.security.db.DBSecurityService.addGroup(DB
SecurityService.java:742)
rethrown as org.apache.turbine.util.security.DataBackendException: addGroup(Grou
p) failed: Invalid column name 'next_id'.
        at org.apache.turbine.services.security.db.DBSecurityService.addGroup(DB
SecurityService.java:762)
        at org.apache.turbine.services.security.TurbineSecurity.addGroup(Turbine
Security.java:710)
        at org.apache.turbine.flux.modules.actions.group.FluxGroupAction.doInser
t(FluxGroupAction.java:89)
        at java.lang.reflect.Method.invoke(Native Method)
        at org.apache.turbine.util.velocity.VelocityActionEvent.executeEvents(Ve
locityActionEvent.java:166)
        at org.apache.turbine.util.velocity.VelocityActionEvent.perform(Velocity
ActionEvent.java:114)
        at org.apache.turbine.modules.actions.VelocityAction.perform(VelocityAct
ion.java:114)
        at org.apache.turbine.modules.ActionLoader.exec(ActionLoader.java:122)
        at org.apache.turbine.modules.pages.DefaultPage.doBuild(DefaultPage.java
:143)
        at org.apache.turbine.modules.Page.build(Page.java:90)
        at org.apache.turbine.modules.PageLoader.exec(PageLoader.java:123)
        at org.apache.turbine.Turbine.doGet(Turbine.java:447)
        at org.apache.turbine.Turbine.doPost(Turbine.java:537)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:247)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:193)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:255)
        at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:566)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:225)
        at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:566)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
torBase.java:472)
        at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:564)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:
2252)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:164)
        at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:566)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
446)
        at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:564)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:163)
        at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:566)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcesso
r.java:875)
        at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.ja
va:952)
        at java.lang.Thread.run(Thread.java:484)

To reproduce this bug, you need to set up a database to be case sensitive. Then, 
try and insert anything into it using the Turbine Data Manager sample 
application.

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>