nuxeo 5.9.5 cluster: Couldn't store job: ERROR: value too long for type character varying(1)

Hi,

  • I just configured nuxeo 5.9.5 in cluster.

  • I applied the /opt/nuxeo-dm/templates/postgresql-quartz-cluster/bin/create-quartz-tables.sql to my postgresql database

  • Members of the cluster registered (I see them in “select * from cluster_nodes;“),

  • the nuxeo service seems to running fine

    but in the logs I have these errors (see below). What can cause this?

org.quartz.JobPersistenceException: Couldn't store job: ERROR: value too long for type character varying(1) [See nested exception: org.postgresql.util.PSQLException: ERROR: value too long for type character varying(1)]

    at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeJob(JobStoreSupport.java:1132)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport$3.execute(JobStoreSupport.java:1071)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport$40.execute(JobStoreSupport.java:3716)
    at org.quartz.impl.jdbcjobstore.JobStoreCMT.executeInLock(JobStoreCMT.java:242)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInLock(JobStoreSupport.java:3712)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeJobAndTrigger(JobStoreSupport.java:1059)
    at org.quartz.core.QuartzScheduler.scheduleJob(QuartzScheduler.java:822)
    at org.quartz.impl.StdScheduler.scheduleJob(StdScheduler.java:243)
    at org.nuxeo.ecm.core.scheduler.SchedulerServiceImpl.schedule(SchedulerServiceImpl.java:211)
    at org.nuxeo.ecm.core.scheduler.SchedulerServiceImpl.registerSchedule(SchedulerServiceImpl.java:178)
    at org.nuxeo.ecm.core.scheduler.SchedulerServiceImpl.registerSchedule(SchedulerServiceImpl.java:166)
    at org.nuxeo.ecm.core.scheduler.SchedulerServiceImpl.setupScheduler(SchedulerServiceImpl.java:111)
    at org.nuxeo.ecm.core.scheduler.SchedulerServiceImpl.applicationStarted(SchedulerServiceImpl.java:137)
    at org.nuxeo.runtime.model.impl.RegistrationInfoImpl.notifyApplicationStarted(RegistrationInfoImpl.java:332)
    at org.nuxeo.runtime.osgi.OSGiRuntimeService.notifyComponentsOnStarted(OSGiRuntimeService.java:494)
    at org.nuxeo.runtime.osgi.OSGiRuntimeService.fireApplicationStarted(OSGiRuntimeService.java:533)
    at org.nuxeo.runtime.osgi.OSGiRuntimeService.frameworkEvent(OSGiRuntimeService.java:543)
    at org.nuxeo.osgi.OSGiAdapter.fireFrameworkEvent(OSGiAdapter.java:237)
    at org.nuxeo.osgi.application.loader.FrameworkLoader.doStart(FrameworkLoader.java:232)
    at org.nuxeo.osgi.application.loader.FrameworkLoader.start(FrameworkLoader.java:112)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.nuxeo.osgi.application.FrameworkBootstrap.start(FrameworkBootstrap.java:132)
    at org.nuxeo.runtime.tomcat.NuxeoLauncher.handleEvent(NuxeoLauncher.java:118)
    at org.nuxeo.runtime.tomcat.NuxeoLauncher.lifecycleEvent(NuxeoLauncher.java:89)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
    at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402)
    at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:347)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5498)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:656)
    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1635)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

Caused by: org.postgresql.util.PSQLException: ERROR: value too long for type character varying(1)

    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2157)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1886)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:555)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:417)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:363)
    at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
    at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
    at org.quartz.impl.jdbcjobstore.StdJDBCDelegate.insertJobDetail(StdJDBCDelegate.java:530)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeJob(JobStoreSupport.java:1126)
    ... 42 more

Regards,

0 votes

1 answers

834 views

ANSWER

What PostgreSQL version are you using?
10/07/2014

Postgresql 9.3
10/07/2014

More details:

  • I get "failed to schedule job with id 'softDeleteCleanup'"

  • too short fields are in the templates/postgresql-quartz-cluster/bin/create-quartz-tables.sql. In particular all VARCHAR(1) like is_durable, is_volatile, is_stateful, requests_recovery…

  • they should be 5 characters at least, because I see "false" stored inside, or they should be boolean and not varying char.

10/07/2014



Thanks for the report. This file has to be created by hand on each upgrade of Quartz because, for some reason, the Quartz project doesn't provide it themselves…

Could you change all the VARCHAR(1) in that file to BOOL and tell us if it works all right?

0 votes



This works also with BOOL (and I have proper data inside the tables)
10/10/2014

Opened NXP-15535.
10/15/2014