Simplicite + PostGreSql + Social post

Bonjour,

Nous avons l’erreur suivante sur une instance Simplicité avec PostGreSql :

Erreur SQL requête: jdbc/simplicite: select null from social_post where

  • Simplicité version4.0 patch level P25Built on2021-01-28 21:02
  • DatabasePostgreSQL 9.2.24 using BLOBs

2021-01-29 15:16:19,680 INFO [com.simplicite.util.engine.DynamicClassLoader] SIMPLICITE|https://partenor.simplicite.io:10953||INFO|system|com.simplicite.util.engine.DynamicClassLoader|compile||Evénement: Compiling all classes from src:/home/pnfdev/tomcat/webapps/ROOT/WEB-INF/src to bin:/home/pnfdev/tomcat/webapps/ROOT/WEB-INF/bin
2021-01-29 15:16:19,466 INFO [com.simplicite.util.engine.DynamicClassLoader] SIMPLICITE|https://partenor.simplicite.io:10953||INFO|system|com.simplicite.util.engine.DynamicClassLoader|compile||Evénement: Deleting source and binary directories
2021-01-29 15:16:18,863 ERROR [com.simplicite.util.engine.ObjectManager] SIMPLICITE|https://partenor.simplicite.io:10953||ECOREDB001|system|com.simplicite.util.engine.ObjectManager|query||Erreur SQL requête: jdbc/simplicite: select null from social_post where
org.postgresql.util.PSQLException: ERROR: syntax error at end of input
Position: 36
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2553)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2285)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:323)
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:473)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:393)
at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:164)
at org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:114)
at org.apache.tomcat.dbcp.dbcp2.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:122)
at org.apache.tomcat.dbcp.dbcp2.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:122)
at com.simplicite.util.engine.DBAccess.query(DBAccess.java:843)
at com.simplicite.util.engine.DBAccess.simpleQuery(DBAccess.java:1041)
at com.simplicite.util.engine.DBAccess.simpleQuery(DBAccess.java:1026)
at com.simplicite.util.engine.ObjectManager.searchRowId(ObjectManager.java:315)
at com.simplicite.util.engine.ObjectManager.validate(ObjectManager.java:135)
at com.simplicite.util.ObjectDirect.validate(ObjectDirect.java:158)
at com.simplicite.util.ObjectDB.validate(ObjectDB.java:565)
at com.simplicite.util.ObjectDB.validate(ObjectDB.java:553)
at com.simplicite.util.Grant.updateMetaObjects(Grant.java:2787)
at com.simplicite.util.engine.ObjectManager.update(ObjectManager.java:2621)
at com.simplicite.util.engine.ObjectManager.save(ObjectManager.java:2972)
at com.simplicite.util.ObjectDirect.save(ObjectDirect.java:441)
at com.simplicite.util.ObjectDB.save(ObjectDB.java:1158)
at com.simplicite.util.ObjectDB.save(ObjectDB.java:1145)
at com.simplicite.util.tools.IndexSQLTool.indexFields(IndexSQLTool.java:238)
at com.simplicite.util.tools.IndexSQLTool.indexation(IndexSQLTool.java:287)
at com.simplicite.util.engine.ObjectManager.indexObjectSync(ObjectManager.java:4434)
at com.simplicite.util.engine.ObjectManager$1.run(ObjectManager.java:4471)
at java.base/java.lang.Thread.run(Thread.java:832)

Cela se produit après le vidage de cache.
Cordialement

Oui j’ai déjà vu passer ce type de messages d’erreur au clear cache, c’est moche mais c’est à priori sans impact grave.

@Francois tu n’avais pas mis un “verrou” sur les post sociaux pendant le clear cache ? Ou peut être uniquement en V5 ?

Oui il y a des gardes fous mais ce cas ne me dit rien. C’est juste un thread d’indexation qui rale.
D’après la stack :

indexObjectSync > updateMetaObjects > select null from social_post where

Lors d’une l’indexation d’un objet, Simplicité cherche à mettre à jour les meta-objets liés, dont un SocialPost qui n’est pas encore prêt a être utilisé.

On va regarder pour ajouter un test pour éviter cette trace pour rien.

Merci pour votre retour.