update on that: we created a temporary table with ...
# puppet-enterprise
b
update on that: we created a temporary table with all resources that need to go:
Copy code
EXPLAIN ANALYZE CREATE TABLE bad_kitties AS
SELECT
    resource
FROM
    resource_params_cache
EXCEPT
SELECT
    resource
FROM
    catalog_resources;

CREATE INDEX bad_kitties_idx ON bad_kitties (resource);
And we're deleting them 250k batches:
Copy code
EXPLAIN ANALYZE
WITH loosers AS (
    SELECT
        *
    FROM
        bad_kitties
    ORDER BY
        resource
    LIMIT 250000
), dead_loosers AS (
    DELETE FROM bad_kitties AS bk
    USING
        loosers AS l
    WHERE
        bk.resource = l.resource
)
DELETE FROM resource_params_cache AS rpc
USING
    loosers AS l
WHERE
    rpc.resource = l.resource;
I'm open for suggestions