argument 'date' du pipeline optimiser_base_disparus #4633

Closed
opened 8 months ago by maieul · 10 comments
maieul commented 8 months ago

Hop,

dans mes logs j'ai ceci

2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16''
in /home/mrouquet/Sites/dev/localhost/plugins-dist/forum/forum_pipelines.php L308 [sql_delete(),forum_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()]
DELETE FROM `spip_localhost`.spip_forum
WHERE statut='redac' AND maj < '\'2021-01-17 18:22:16\''
2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16''
in /home/mrouquet/Sites/dev/localhost/plugins-dist/mots/mots_pipelines.php L97 [sql_delete(),mots_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()]
DELETE FROM `spip_localhost`.spip_mots
WHERE length(titre)=0 AND maj < '\'2021-01-17 18:22:16\''
2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16''
in /home/mrouquet/Sites/dev/localhost/plugins-dist/petitions/petitions_pipelines.php L58 [sql_delete(),petitions_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()]
DELETE FROM `spip_localhost`.spip_petitions
WHERE statut='poubelle' AND maj < '\'2021-01-17 18:22:16\''
2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16''
in /home/mrouquet/Sites/dev/localhost/plugins-dist/sites/sites_pipelines.php L228 [sql_delete(),sites_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()]
DELETE FROM `spip_localhost`.spip_syndic
WHERE maj<'\'2021-01-17 18:22:16\'' AND statut='refuse'
2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16''
in /home/mrouquet/Sites/dev/localhost/plugins-dist/breves/breves_pipelines.php L298 [sql_select(),breves_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()]
SELECT B.id_breve AS id
FROM `spip_localhost`.spip_breves AS B
			LEFT JOIN `spip_localhost`.spip_rubriques AS R
				ON B.id_rubrique=R.id_rubrique
WHERE R.id_rubrique IS NULL
			AND B.maj < '\'2021-01-17 18:22:16\''

Cela vient du fait que $flux['args']['date'] du pipeline optimiser_base_disparus est valeur qui est déjà passé par sql_quote(). (cf. fonction optimiser_base_disparus du code, qui contient la ligne ($mydate = sql_quote(date("Y-m-d H:i:s", time() - $attente));)

Or la plupart des plugin(-dist) qui utilise ce paramètre $flux['args']['date'] pour construire leur requete passe en sql_quote. Du couip double sql_quote.

La question que je me pose : faut-il corriger les plugins(-dist) ou le core ?

Hop, dans mes logs j'ai ceci <pre> 2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16'' in /home/mrouquet/Sites/dev/localhost/plugins-dist/forum/forum_pipelines.php L308 [sql_delete(),forum_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()] DELETE FROM `spip_localhost`.spip_forum WHERE statut='redac' AND maj &lt; '\'2021-01-17 18:22:16\'' 2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16'' in /home/mrouquet/Sites/dev/localhost/plugins-dist/mots/mots_pipelines.php L97 [sql_delete(),mots_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()] DELETE FROM `spip_localhost`.spip_mots WHERE length(titre)=0 AND maj &lt; '\'2021-01-17 18:22:16\'' 2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16'' in /home/mrouquet/Sites/dev/localhost/plugins-dist/petitions/petitions_pipelines.php L58 [sql_delete(),petitions_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()] DELETE FROM `spip_localhost`.spip_petitions WHERE statut='poubelle' AND maj &lt; '\'2021-01-17 18:22:16\'' 2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16'' in /home/mrouquet/Sites/dev/localhost/plugins-dist/sites/sites_pipelines.php L228 [sql_delete(),sites_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()] DELETE FROM `spip_localhost`.spip_syndic WHERE maj&lt;'\'2021-01-17 18:22:16\'' AND statut='refuse' 2021-01-18 18:22:16 127.0.0.1 (pid 13677) :Pri:ERREUR: Erreur 1525 de mysql: Incorrect TIMESTAMP value: ''2021-01-17 18:22:16'' in /home/mrouquet/Sites/dev/localhost/plugins-dist/breves/breves_pipelines.php L298 [sql_select(),breves_optimiser_base_disparus(),minipipe(),execute_pipeline_optimiser_base_disparus(),pipeline(),optimiser_base_disparus(),optimiser_base(),genie_optimiser_dist(),queue_start_job(),queue_schedule(),action_forcer_job_dist(),traiter_appels_actions()] SELECT B.id_breve AS id FROM `spip_localhost`.spip_breves AS B LEFT JOIN `spip_localhost`.spip_rubriques AS R ON B.id_rubrique=R.id_rubrique WHERE R.id_rubrique IS NULL AND B.maj &lt; '\'2021-01-17 18:22:16\'' </pre> Cela vient du fait que $flux['args']['date'] du pipeline optimiser_base_disparus est valeur qui est déjà passé par sql_quote(). (cf. fonction `optimiser_base_disparus` du code, qui contient la ligne (`$mydate = sql_quote(date("Y-m-d H:i:s", time() - $attente));`) Or la plupart des plugin(-dist) qui utilise ce paramètre $flux['args']['date'] pour construire leur requete passe en sql_quote. Du couip double sql_quote. La question que je me pose : faut-il corriger les plugins(-dist) ou le core ?
Owner

Version cible ?

Version cible ?
Poster

Idéalement 3.2

Idéalement 3.2
Poster

mais je peux pas le modifier

mais je peux pas le modifier
Owner

Version cible mise à 3.2

**Version cible mise à 3.2**
Poster

Je me dis que corriger le core plutot que les plugins est pertinent, car on pourrait avoir besoin dans le pipeline d'utiliser $flux['args']['date'] pour autre chose que de la requete sql (même si je ne sais pas encore quoi).

Si vous êtes d'accord avec mon analyse, je peux me charger de la PR

Je me dis que corriger le core plutot que les plugins est pertinent, car on pourrait avoir besoin dans le pipeline d'utiliser $flux['args']['date'] pour autre chose que de la requete sql (même si je ne sais pas encore quoi). Si vous êtes d'accord avec mon analyse, je peux me charger de la PR
Owner

oui il faut corriger le core, et faire un tour des plugins qui utilisent mais je crois en effet que majoritairement tout le monde prend ça pour une date et non une date quotée

oui il faut corriger le core, et faire un tour des plugins qui utilisent mais je crois en effet que majoritairement tout le monde prend ça pour une date et non une date quotée
Owner

Version cible mise à 4.0

**Version cible mise à 4.0**
Owner

La PR attend vos +1 #105 :)
Statut changé à En cours

La PR attend vos +1 https://git.spip.net/spip/spip/pulls/105 :) **Statut changé à En cours**
Owner

c'est intégré
Statut changé à Fermé

c'est intégré **Statut changé à Fermé**
Owner

et reporté en 3.2 (mais après la release secu, ça sera pour la prochaine)

et reporté en 3.2 (mais après la release secu, ça sera pour la prochaine)
Sign in to join this conversation.
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.