Hi,

What are the drawbacks if using MySQL with VCS. We have a client that wants
us to install nuxeo 5.2 on MySQL, is this "unsupported" or known to cause
problems ?

Thanks

Nel

2009/5/4 Florent Guillaume <[email protected]>

> Basically MySQL is broken, it shouldn't ever close a connection that's
> open.
> Various people have tried various workarounds. But using autoReconnect is
> not always semantically safe (you lose non-committed stuff).
> Jackrabbit has implemented a workaround in 1.4 (
> https://issues.apache.org/jira/browse/JCR-940), but Nuxeo 5.1.6 uses
> 1.3.3.
> See also http://wiki.magnolia-cms.com/display/WIKI/MySQL+Persistence for
> instance.
>
> Your options are:
> - upgrade the MySQL timeout to more that the default (8h), to avoid losing
> connections,
> - restart Nuxeo from time to time, before the MySQL timeout,
> - try to upgrade to Jackrabbit 1.4.* in Nuxeo 5.1.6, but there will
> probably be Nuxeo source code changes to do,
> - upgrade Nuxeo to 5.2.RC1, but there are quite a number of other changes
> in Nuxeo so it's not a light operation,
> - ditch MySQL and use a real database.
>
> Florent
>
>
> On 23 Apr 2009, at 11:39, Enrique Perez wrote:
>
>  Thanks for your answer, Florent.
>>
>> I also tried with the configuration you say. I configure it with the
>> following line:
>>
>> <param name="url"
>> value="jdbc:mysql://localhost/mydatabase?autoReconnect=true"/>
>>
>> But it still fails. Is the previous line correct or I have to add
>> something like the following one?:
>>
>> <param name="autoReconnect" value="true"/>
>>
>> Thanks in advance.
>>
>> Florent Guillaume wrote:
>>
>>> Hi,
>>>
>>> The error (simplified below) is a Jackrabbit error. So the connection
>>> parameters to modify are those of the Jackrabbit configuration file.
>>>
>>> For a blank server the file is in config/repository-config.xml (or
>>> config/default-repository-config.xml depending on how you named it). Once
>>> the database is created it lives in
>>> server/default/data/NXRuntime/repos/default/default.xml. It's the
>>> <PersistenceManager> section.
>>>
>>> The <connection-url> you mention is for a JDBC datasource, but that's not
>>> what Jackrabbit uses for configuration.
>>>
>>> See http://www.google.com/search?q=jackrabbit+mysql+autoReconnect for
>>> more.
>>>
>>> Florent
>>>
>>> On 22 Apr 2009, at 09:18, Enrique Perez wrote:
>>>
>>>  Hi all,
>>>>
>>>> I have a Nuxeo instance (5.1.6-2) using a MySql database. When I start
>>>> the server it works fine, but if I try to upload a file after a couple of
>>>> days it crashes. It seems like if the connection with the database is
>>>> closed.
>>>>
>>>> I try with the autoReconnect property:
>>>>
>>>>
>>>>  
>>>> <connection-url>jdbc:mysql://localhost/mydatabase?relaxAutoCommit=true&amp;emulateLocators=true&amp;autoReconnect=true</connection-url>
>>>>
>>>> But the platform still crashes.
>>>>
>>>> The exception I get when I upload a file is:
>>>>
>>>>
>>>> org.nuxeo.ecm.core.api.ClientException
>>>>
>>>> org.nuxeo.ecm.core.api.WrappedException: Exception:
>>>> org.nuxeo.ecm.core.api.ClientException. message:
>>>> org.nuxeo.ecm.core.api.WrappedException: Exception:
>>>> org.nuxeo.ecm.core.api.ClientException. message: Failed to save session
>>>>
>>>> org.nuxeo.ecm.core.api.WrappedException
>>>>
>>>> Exception: com.mysql.jdbc.CommunicationsException. message: The last
>>>> packet successfully received from the server was88772 milliseconds ago.The
>>>> last packet sent successfully to the server was 88772 milliseconds ago,
>>>> which  is longer than the server configured value of 'wait_timeout'. You
>>>> should consider either expiring and/or testing connection validity before
>>>> use in your application, increasing the server configured values for client
>>>> timeouts, or using the Connector/J connection property 'autoReconnect=true'
>>>> to avoid this problem.
>>>>
>>>>
>>>> com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1070)
>>>> com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3270)
>>>> com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1932)
>>>> com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
>>>> com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2548)
>>>> com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:4916)
>>>>
>>>> org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.store(BundleDbPersistenceManager.java:484)
>>>>
>>>> org.apache.jackrabbit.core.state.SharedItemStateManager$Update.end(SharedItemStateManager.java:688)
>>>>
>>>> org.apache.jackrabbit.core.state.SharedItemStateManager.update(SharedItemStateManager.java:855)
>>>>
>>>> org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemStateManager.java:326)
>>>>
>>>> org.apache.jackrabbit.core.state.XAItemStateManager.update(XAItemStateManager.java:313)
>>>>
>>>> org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemStateManager.java:302)
>>>>
>>>> org.apache.jackrabbit.core.state.SessionItemStateManager.update(SessionItemStateManager.java:306)
>>>> org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1240)
>>>> org.apache.jackrabbit.core.SessionImpl.save(SessionImpl.java:849)
>>>> org.nuxeo.ecm.core.repository.jcr.JCRSession.save(JCRSession.java:146)
>>>> org.nuxeo.ecm.core.api.AbstractSession.save(AbstractSession.java:1457)
>>>>
>>>
> --
> Florent Guillaume, Head of R&D, Nuxeo
> Open Source, Java EE based, Enterprise Content Management (ECM)
> http://www.nuxeo.com   http://www.nuxeo.org   +33 1 40 33 79 87
>
> _______________________________________________
> ECM mailing list
> [email protected]
> http://lists.nuxeo.com/mailman/listinfo/ecm
> To unsubscribe, go to http://lists.nuxeo.com/mailman/options/ecm
>
_______________________________________________
ECM mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm
To unsubscribe, go to http://lists.nuxeo.com/mailman/options/ecm

Reply via email to