I was thinking the same, you could try to reproduce this in a test by
just generating sql. Could you share that part of code somehow so we
can have a deeper look?

Cheers,
Francis

On 27 February 2013 18:26, [email protected] <[email protected]> wrote:
> Hi Alain!
>
> Just a shot in the dark: might it be possible you are running into multi 
> threading issues? Do you have static date formatter or static members of 
> empire classes/instances in your code?
>
> Jens
>
> Sent from my iPhone
>
> On 27.02.2013, at 16:19, Alain Becam <[email protected]> wrote:
>
>> Hi all,
>>     I have an insert which is called a lot (several time per seconds, 
>> 24h/24h), and very rarely, something like once in a week, I get an SQL error 
>> because the date is not quoted. It is a very simple insert, and so works 
>> something like 99.9% of the time. Still I am curious to know what happen. 
>> Here is the relevant part of the raised exception:
>>
>>
>> Insert new search terms 
>> org.apache.empire.db.exceptions.QueryFailedException: Error executing query 
>> INSERT INTO SEARCH_TERMS_LOG( SEARCH_TERMS, IS_LOCAL, AT_TIME, FROM_IP) 
>> VALUES ( 'XXXX', 1, Thu Feb 21 10:27:45 CET 2013, '10.11.4.119').
>> Native error is INSERT INTO SEARCH_TERMS_LOG( SEARCH_TERMS, IS_LOCAL, 
>> AT_TIME, FROM_IP) VALUES ( 'XXXX', 1, Thu Feb 21 10:27:45 CET 2013, 
>> '10.11.4.119').
>>    at org.apache.empire.db.DBDatabase.executeSQL(DBDatabase.java:1037)
>>    at org.apache.empire.db.DBRowSet.updateRecord(DBRowSet.java:711)
>>    at org.apache.empire.db.DBRecord.update(DBRecord.java:683)
>>    at 
>> de.embl.common.core.logging.DBRecordLoggingWrapper.update(DBRecordLoggingWrapper.java:89)
>>    ...
>> Caused by: java.sql.SQLSyntaxErrorException: ORA-00917: missing comma
>>
>>    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:440)
>>    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
>>    at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:837)
>>    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:445)
>>    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:191)
>>    at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:523)
>>    at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:193)
>>    at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:999)
>>    at 
>> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1315)
>>    at 
>> oracle.jdbc.driver.OracleStatement.executeUpdateInternal(OracleStatement.java:1822)
>>    at 
>> oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:1787)
>>    at 
>> oracle.jdbc.driver.OracleStatementWrapper.executeUpdate(OracleStatementWrapper.java:280)
>>    at 
>> com.mchange.v2.c3p0.impl.NewProxyStatement.executeUpdate(NewProxyStatement.java:64)
>>    at 
>> org.apache.empire.db.DBDatabaseDriver.executeSQL(DBDatabaseDriver.java:535)
>>    at org.apache.empire.db.DBDatabase.executeSQL(DBDatabase.java:1025)
>>    ... 26 common frames omitted
>>
>> The DBRecordLoggingWrapper is simply saving udpate/insert informations if 
>> needed, and in that case it is doing nothing, just calling back the DBRecord 
>> methods. Still it could do something wrong, I simply don't see what.
>> Best regards,
>>    Alain
>>

Reply via email to