mirror of
https://github.com/R0m1k3/noteflow.git
synced 2026-10-11 17:29:37 +02:00
Fix: Migration timezone - Suppression et resync Google Calendar
Amélioration de la migration timezone pour éviter les données corrompues PROBLÈME: Les événements existants ont des heures incorrectes car: - Stockés en TIMESTAMP (sans timezone) - Driver PostgreSQL les interprète comme UTC - Décalage d'1h lors de l'affichage SOLUTION: 1. Supprimer TOUS les événements existants 2. Convertir les colonnes TIMESTAMP → TIMESTAMPTZ 3. Forcer resynchronisation depuis Google Calendar Migration mise à jour: - DELETE FROM calendar_events (supprime données corrompues) - ALTER COLUMN → TIMESTAMPTZ - Les nouvelles syncs utiliseront TIMESTAMPTZ - Heures correctes garanties APRÈS REBUILD: 1. Docker rebuild applique TIMESTAMPTZ 2. Migration supprime les anciens événements 3. Resynchronisez Google Calendar dans l'interface 4. Les heures seront correctes scripts/migrate-calendar-timezone.js ligne 52-55
This commit is contained in:
1 file changed
+8
-2
@@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
// Migration: Convertir calendar_events TIMESTAMP → TIMESTAMPTZ
|
||||
// + Supprimer les données existantes et forcer resynchronisation
|
||||
const { Pool } = require('pg');
|
||||
|
||||
const DATABASE_URL = process.env.DATABASE_URL;
|
||||
@@ -48,6 +49,11 @@ async function migrate() {
|
||||
|
||||
await client.query('BEGIN');
|
||||
|
||||
// SUPPRIMER toutes les données existantes pour éviter les problèmes de timezone
|
||||
console.log(' 🗑️ Suppression des événements existants (seront resynchronisés)');
|
||||
const deleteResult = await client.query('DELETE FROM calendar_events');
|
||||
console.log(` ✅ ${deleteResult.rowCount} événements supprimés`);
|
||||
|
||||
// Convertir start_time
|
||||
await client.query(`
|
||||
ALTER TABLE calendar_events
|
||||
@@ -81,8 +87,8 @@ async function migrate() {
|
||||
|
||||
console.log('\n✅ Migration terminée avec succès!');
|
||||
console.log('');
|
||||
console.log('📝 Note: Resynchronisez vos événements Google Calendar');
|
||||
console.log(' pour appliquer le nouveau format de timezone.');
|
||||
console.log('⚠️ IMPORTANT: Resynchronisez Google Calendar pour récupérer');
|
||||
console.log(' vos événements avec les bonnes heures.');
|
||||
console.log('');
|
||||
|
||||
client.release();
|
||||
|
||||
Reference in new issue
Block a user