Issue Details (XML | Word | Printable)

Key: CONF-7168
Type: Bug Bug
Status: Closed Closed
Resolution: Duplicate
Priority: Critical Critical
Assignee: Unassigned
Reporter: Mehmet D. Akin
Votes: 0
Watchers: 0
Operations

Add/Edit UI Mockup to this issue
If you were logged in you would be able to see more operations.
Confluence

Labels does not work in Turkish locale

Created: 17/Oct/06 03:50 AM   Updated: 06/Jun/07 01:35 AM   Resolved: 09/Nov/06 11:05 PM
Return to search
Component/s: Database / Hibernate
Affects Version/s: 2.2.9
Fix Version/s: None

Time Tracking:
Not Specified

Environment:

Standalone, Windows, tomcat, JDK 1.5.06 Locale : TR

Issue Links:
Duplicate
 

Participants: Agnes Ro [Atlassian], Ivan Benko [Atlassian], Mehmet D. Akin and Tom Davies [Atlassian]
Since last comment: 2 years, 35 weeks, 4 days ago
Labels:


 Description  « Hide

Confluence gives an error and exception stack trace when we try to go to Labels tab in preferences page, Here is the exception log:

Cause:
org.springframework.orm.hibernate.HibernateQueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]; nested exception is net.sf.hibernate.QueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]
at org.springframework.orm.hibernate.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:463)
caused by: net.sf.hibernate.QueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]
at net.sf.hibernate.hql.PathExpressionParser.token(PathExpressionParser.java:103)

Stack Trace: [hide]

org.springframework.orm.hibernate.HibernateQueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]; nested exception is net.sf.hibernate.QueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]
net.sf.hibernate.QueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]
at net.sf.hibernate.hql.PathExpressionParser.token(PathExpressionParser.java:103)
at net.sf.hibernate.hql.ParserHelper.parse(ParserHelper.java:29)
at net.sf.hibernate.hql.SelectParser.token(SelectParser.java:170)
at net.sf.hibernate.hql.ClauseParser.token(ClauseParser.java:87)
at net.sf.hibernate.hql.ClauseParser.end(ClauseParser.java:114)
at net.sf.hibernate.hql.PreprocessingParser.end(PreprocessingParser.java:143)
at net.sf.hibernate.hql.ParserHelper.parse(ParserHelper.java:30)
at net.sf.hibernate.hql.QueryTranslator.compile(QueryTranslator.java:149)
at net.sf.hibernate.hql.QueryTranslator.compile(QueryTranslator.java:138)
at net.sf.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:295)
at net.sf.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:1572)
at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1543)
at net.sf.hibernate.impl.QueryImpl.list(QueryImpl.java:49)
at com.atlassian.confluence.labels.persistence.dao.hibernate.HibernateLabelDao$2.doInHibernate(HibernateLabelDao.java:182)
at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:200)
at com.atlassian.confluence.labels.persistence.dao.hibernate.HibernateLabelDao.findByDetailsInSpace(HibernateLabelDao.java:158)
at com.atlassian.confluence.labels.persistence.dao.hibernate.HibernateLabelDao.findByDetails(HibernateLabelDao.java:124)
at com.atlassian.confluence.labels.DefaultLabelManager.getUsersLabels(DefaultLabelManager.java:289)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:61)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:116)
at com.atlassian.confluence.util.profiling.SpringProfilingInterceptor.invoke(SpringProfilingInterceptor.java:18)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:152)
at $Proxy7.getUsersLabels(Unknown Source)
at com.atlassian.confluence.user.actions.ViewMyLabelsAction.execute(ViewMyLabelsAction.java:103)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:168)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.intercept(DefaultWorkflowInterceptor.java:55)
at com.atlassian.confluence.core.ConfluenceWorkflowInterceptor.intercept(ConfluenceWorkflowInterceptor.java:39)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.atlassian.confluence.core.ConfluenceValidationInterceptor.intercept(ConfluenceValidationInterceptor.java:16)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.atlassian.confluence.security.actions.PermissionCheckInterceptor.intercept(PermissionCheckInterceptor.java:39)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.atlassian.confluence.pages.actions.PageAwareInterceptor.intercept(PageAwareInterceptor.java:114)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.atlassian.confluence.spaces.actions.SpaceAwareInterceptor.intercept(SpaceAwareInterceptor.java:82)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.atlassian.confluence.core.actions.LastModifiedInterceptor.intercept(LastModifiedInterceptor.java:39)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.atlassian.confluence.core.ConfluenceAutowireInterceptor.intercept(ConfluenceAutowireInterceptor.java:25)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.atlassian.confluence.util.XWorkTransactionInterceptor.intercept(XWorkTransactionInterceptor.java:133)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:115)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction(ServletDispatcher.java:229)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:199)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:117)
at com.atlassian.confluence.util.profiling.ProfilingPageFilter.parsePage(ProfilingPageFilter.java:143)
at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.atlassian.confluence.util.ServletContextThreadLocalFilter.doFilter(ServletContextThreadLocalFilter.java:30)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.atlassian.confluence.util.UserThreadLocalFilter.doFilter(UserThreadLocalFilter.java:45)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:181)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
at bucket.custom.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:31)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:73)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:122)
at com.atlassian.confluence.util.error.ProfilingAndErrorFilter.doFilter(ProfilingAndErrorFilter.java:27)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.atlassian.core.filters.gzip.GzipFilter.doFilter(GzipFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:37)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)

Referer URL: http://localhost:8080/users/editmyprofile.action

Build Information:
Confluence Home: C:\tmp\data
Uptime: 35 minutes, 13 seconds
Version: 2.2.9
Build Number: 527

Server Information:
Application Server: Apache Tomcat/5.5.15
Servlet Version: 2.4
Database Dialect: net.sf.hibernate.dialect.HSQLDialect
Database Driver Name: org.hsqldb.jdbcDriver
Database Driver Version: 1.8

Memory Information:
Total Memory: 127 MB
Free Memory: 76 MB
Used Memory: 51 MB

System Information:
System Date: Sal?, 17 Eki 2006
System Time: 11:23:32
System Favourite Colour: Taupe
Java Version: 1.5.0_06
Java Vendor: Sun Microsystems Inc.
JVM Version: 1.0
JVM Vendor: Sun Microsystems Inc.
JVM Implementation Version: 1.5.0_06-b05
Java Runtime: Java(TM) 2 Runtime Environment, Standard Edition
Java VM: Java HotSpot(TM) Client VM
User Name: dundara
User Timezone: Europe/Athens
Operating System: Windows 2000 5.0
OS Architecture: x86
Filesystem Encoding: Cp1254

Enabled Plugins:
Basic Macros (confluence.macros.basic, Version: 1.3)
Core Listeners (confluence.listeners.core, Version: 1.3)
Dashboard Macros (confluence.macros.dashboard, Version: 1.3)
User Listener (confluence.extra.userlister, Version: 1.2)
Chart Plugin (confluence.extra.chart, Version: 1.5)
Live Search Macros (confluence.extra.livesearch, Version: 1.4)
Information Macros (confluence.extra.information, Version: 0.1)
Global Labels Sections (confluence.sections.labels, Version: 1.0)
JIRA Macros (confluence.extra.jira, Version: 1.4)
Layout Macros (confluence.extra.layout, Version: 0.1)
Profile Tabs (confluence.sections.profile, Version: 1.0)
Confluence Remote API (confluence.extra.confluencerpc, Version: 1.4)
Admin Sections (confluence.sections.admin, Version: 1.0)
Tabular Metadata (confluence.extra.masterdetail, Version: 1.0)
Space Admin Sections (confluence.sections.space.admin, Version: 1.0)
Space Pages Sections (confluence.sections.space.pages, Version: 1.0)
Advanced Macros (confluence.macros.advanced, Version: 1.3)
Space Advanced Sections (confluence.sections.space.advanced, Version: 1.0)
IM Presence Macros (confluence.extra.impresence, Version: 0.1)
Attachments Macros (confluence.extra.attachments, Version: 1.3)
Edit Profile Sections (confluence.sections.profile.edit, Version: 1.0)
Space Actions Sections (confluence.sections.space.actions, Version: 1.0)
Task List Macros (confluence.extra.tasklist, Version: 1.3)
Space Labels Sections (confluence.sections.space.labels, Version: 1.0)
Attachment Extractors (confluence.extractors.attachments, Version: 1.4)
Left Navigation Theme (com.atlassian.confluence.themes.leftnavigation, Version: 1.0)
Dynamic Task List Macros (confluence.extra.dynamictasklist, Version: 1.3)
Core Extractors (confluence.extractors.core, Version: 1.4)
Compatibility Macros (confluence.macros.compatibility, Version: 1.3)
Code Macro (confluence.macros.code, Version: 1.4)
Request

Information:
URL: http://localhost:8080/500page.jsp

  • Scheme: http
  • Server: localhost
  • Port: 8080
  • URI: /500page.jsp
  • - Context Path:
  • - Servlet Path: /500page.jsp
  • - Path Info: null
  • - Query String: null

Attributes:

  • javax.servlet.forward.request_uri : /users/viewmylabels.action
  • javax.servlet.forward.context_path :
  • javax.servlet.forward.servlet_path : /users/viewmylabels.action
  • javax.servlet.forward.path_info : /500page.jsp
  • javax.servlet.error.message :
  • javax.servlet.error.exception : org.springframework.orm.hibernate.HibernateQueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]; nested exception is net.sf.hibernate.QueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]
  • os_securityfilter_already_filtered : true
  • _sitemesh_using_stream : false
  • com.atlassian.johnson.filters.JohnsonFilter_already_filtered : true
  • javax.servlet.error.request_uri : /users/viewmylabels.action
  • javax.servlet.error.status_code : 500
  • _sitemesh_filterapplied : true
  • javax.servlet.error.servlet_name : action
  • webwork.valueStack : com.opensymphony.xwork.util.OgnlValueStack@32d521
  • atlassian.core.seraph.original.url : /users/viewmylabels.action
  • loginfilter.already.filtered : true
  • javax.servlet.jsp.jspException : org.springframework.orm.hibernate.HibernateQueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]; nested exception is net.sf.hibernate.QueryException: undefined alias: DISTINCT [SELECT DISTINCT l FROM com.atlassian.confluence.labels.Label AS l WHERE l.namespace = :namespace AND l.owner = :owner order by l.name]
  • sessioninview.FILTERED : true
  • com.atlassian.core.filters.gzip.GzipFilter_already_filtered : true

and also when we try to add a label to a page it says " [41a] Error connecting to the server. The labels have not been updated."



Mehmet D. Akin added a comment - 09/Nov/06 01:20 AM

Any comment on this problem? We cannot use confluence properly because of this


Tom Davies [Atlassian] added a comment - 09/Nov/06 11:04 PM

As a work-around, please pass these arguments to your JVM by adding them to JAVA_OPTS in setenv.bat: -Duser.country=EN -Duser.language=en

Please let us know if that fixes the problem.


Ivan Benko [Atlassian] added a comment - 09/Nov/06 11:36 PM

I tested at on XP system, running Conf 2.2.9 and MySQL 5. The workaround suggested by Tom worked beautifully !
Ivan


Mehmet D. Akin added a comment - 10/Nov/06 01:56 AM

Yes we already know this workaround

But this solution brings another problem. If we are working on En locale, PDF and doc export garbles all Turkish characters, which renders Confluence almost useless for exporting pages.

Should I enter that problem as another bug?


Ivan Benko [Atlassian] added a comment - 12/Nov/06 10:54 PM

If you can create a bug for that, it would be great. Please link it to this issue though.
We shall look into it.
Thanks,
IB


Agnes Ro [Atlassian] added a comment - 05/Jun/07 09:05 PM

This bug has now been fixed for 2.5.4.
For creating PDFs in another language, please see: http://confluence.atlassian.com/display/CONF20/Create+PDF+in+another+language


Agnes Ro [Atlassian] added a comment - 06/Jun/07 01:35 AM

Sorry, it's actually fixed for 2.5.5.