'bundle exec rake db:migrate' tarda mucho debido a la migración del calendario

      DELETE
        FROM calendar_events ce
      WHERE
        ce.id IN (SELECT DISTINCT(ce3.id) FROM calendar_events ce2
                  LEFT JOIN calendar_events ce3 ON ce3.user_id = ce2.user_id AND ce3.description = ce2.description
                  WHERE ce2.start_date >= (ce3.start_date - INTERVAL '1 days')
                    AND ce2.start_date <= (ce3.start_date + INTERVAL '1 days')
                    AND ce2.timezone IS NOT NULL
                    AND ce3.timezone IS NULL
                    AND ce3.id != ce2.id
                    AND ce2.post_id IS NULL
                    AND ce3.post_id IS NULL
        )

Así que eso parece al menos una operación O(n^2), ¿verdad? Hay 69.724.384 filas en esa tabla, así que no parece una muy buena idea.

@Sikamikanico. Si quieres que el plugin de calendario vuelva, creo que lo que hay que hacer es simplemente eliminar todos los eventos del calendario y puedes empezar de nuevo. Lo otro que podríamos hacer sería ejecutar esa consulta en el servidor activo y ver si alguna vez termina.

La causa raíz, creo, es un error en el plugin que duplicaba eventos cuando cambiaba la zona horaria.

La tabla calendar_events tiene 11 GB:

discours=# SELECT pg_size_pretty( pg_total_relation_size('calendar_events') );
  pg_size_pretty
----------------
 11 GB
(1 row)

Aquí están las tablas más grandes:

       relation       | total_size
----------------------+------------
 calendar_events      | 11 GB
 post_timings         | 6884 MB
 posts                | 2292 MB
 user_auth_token_logs | 1240 MB
 user_actions         | 1055 MB
(5 rows)

Solo calendar_events es claramente extraño.