explain.depesz.com

PostgreSQL's explain analyze made readable

Result: jkol

Settings
# exclusive inclusive rows x rows loops node
1. 134.670 29,909.228 ↓ 38,723.0 38,723 1

GroupAggregate (cost=818,459.80..818,470.00 rows=1 width=2,497) (actual time=29,770.371..29,909.228 rows=38,723 loops=1)

  • Output: soc.soc_id, dossier.dossier_id, dossier.numero_dossier, (replace(((((btrim((a1_part_affi.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_affi.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_affi.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text)), a1_part_affi.dte_naissance, (replace(((((btrim((a1_part_assure.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_assure.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_assure.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text)), a1_part_assure.dte_naissance, a1_part_dossier_assure.role, partie_dossier.type_partie, type_couv.desc_courte, couv.desc_courte, sum(COALESCE(pa_gen_prest.prest_due, '0'::numeric)), a1_adresses_assu.ligne_01, a1_adresses_assu.ligne_02, a1_adresses_assu.ligne_03, a1_adresses_assu.ligne_04, a1_adresses_assu.ligne_05, a1_adresses_assu.ligne_06, a1_adresses_assu.ligne_07, a1_adresses_assu.ligne_08, a1_adresses_assu.ligne_09, a1_adresses_assu.ligne_10, montant_a_payer.id, paiement.numero, paiement.numero_compte, paiement.numero_swift, paiement.numero_compte_postal, paiement.numero_iban, sum((((COALESCE(pa_gen_prest.prest_tot, '0'::numeric) + COALESCE(pa_gen_prest.idx, '0'::numeric)) + COALESCE(pa_gen_prest.idx_employeur_fine_capi, '0'::numeric)) + COALESCE(pa_gen_prest.idx_employeur_fine_perio, '0'::numeric))), sum(COALESCE(pa_gen_prest.prest_tot, '0'::numeric)), mut_dossier.statut, ((SubPlan 1)), ((SubPlan 2)), soc.desc_courte, fam_prod.fam_id, fam_prod.desc_courte, prod.pro_id, prod.desc_courte, contrat.contrat_id, contrat.numero_contrat, a1_part_employeur.nom_ou_raison_sociale, a1_part_affi.sexe, ((SubPlan 3)), a1_part_affi.etat_civil, ((SubPlan 4)), partie_dossier.dte_deb_partie
  • Group Key: soc.soc_id, dossier.dossier_id, (replace(((((btrim((a1_part_affi.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_affi.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_affi.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text)), a1_part_affi.dte_naissance, (replace(((((btrim((a1_part_assure.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_assure.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_assure.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text)), a1_part_assure.dte_naissance, a1_part_dossier_assure.role, partie_dossier.type_partie, type_couv.desc_courte, couv.desc_courte, a1_adresses_assu.ligne_01, a1_adresses_assu.ligne_02, a1_adresses_assu.ligne_03, a1_adresses_assu.ligne_04, a1_adresses_assu.ligne_05, a1_adresses_assu.ligne_06, a1_adresses_assu.ligne_07, a1_adresses_assu.ligne_08, a1_adresses_assu.ligne_09, a1_adresses_assu.ligne_10, montant_a_payer.id, paiement.numero, paiement.numero_compte, paiement.numero_swift, paiement.numero_compte_postal, paiement.numero_iban, mut_dossier.statut, ((SubPlan 1)), ((SubPlan 2)), fam_prod.fam_id, prod.pro_id, contrat.contrat_id, a1_part_employeur.nom_ou_raison_sociale, a1_part_affi.sexe, ((SubPlan 3)), a1_part_affi.etat_civil, ((SubPlan 4)), partie_dossier.dte_deb_partie
  • Buffers: shared hit=2353727 read=569228
2. 1,144.220 29,774.558 ↓ 39,079.0 39,079 1

Sort (cost=818,459.80..818,459.81 rows=1 width=2,419) (actual time=29,770.311..29,774.558 rows=39,079 loops=1)

  • Output: soc.soc_id, dossier.dossier_id, (replace(((((btrim((a1_part_affi.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_affi.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_affi.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text)), a1_part_affi.dte_naissance, (replace(((((btrim((a1_part_assure.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_assure.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_assure.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text)), a1_part_assure.dte_naissance, a1_part_dossier_assure.role, partie_dossier.type_partie, type_couv.desc_courte, couv.desc_courte, a1_adresses_assu.ligne_01, a1_adresses_assu.ligne_02, a1_adresses_assu.ligne_03, a1_adresses_assu.ligne_04, a1_adresses_assu.ligne_05, a1_adresses_assu.ligne_06, a1_adresses_assu.ligne_07, a1_adresses_assu.ligne_08, a1_adresses_assu.ligne_09, a1_adresses_assu.ligne_10, montant_a_payer.id, paiement.numero, paiement.numero_compte, paiement.numero_swift, paiement.numero_compte_postal, paiement.numero_iban, mut_dossier.statut, ((SubPlan 1)), ((SubPlan 2)), fam_prod.fam_id, prod.pro_id, contrat.contrat_id, a1_part_employeur.nom_ou_raison_sociale, a1_part_affi.sexe, ((SubPlan 3)), a1_part_affi.etat_civil, ((SubPlan 4)), partie_dossier.dte_deb_partie, dossier.numero_dossier, pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, soc.desc_courte, fam_prod.desc_courte, prod.desc_courte, contrat.numero_contrat
  • Sort Key: soc.soc_id, dossier.dossier_id, (replace(((((btrim((a1_part_affi.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_affi.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_affi.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text)), a1_part_affi.dte_naissance, (replace(((((btrim((a1_part_assure.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_assure.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_assure.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text)), a1_part_assure.dte_naissance, a1_part_dossier_assure.role, partie_dossier.type_partie, type_couv.desc_courte, couv.desc_courte, a1_adresses_assu.ligne_01, a1_adresses_assu.ligne_02, a1_adresses_assu.ligne_03, a1_adresses_assu.ligne_04, a1_adresses_assu.ligne_05, a1_adresses_assu.ligne_06, a1_adresses_assu.ligne_07, a1_adresses_assu.ligne_08, a1_adresses_assu.ligne_09, a1_adresses_assu.ligne_10, montant_a_payer.id, paiement.numero, paiement.numero_compte, paiement.numero_swift, paiement.numero_compte_postal, paiement.numero_iban, mut_dossier.statut, ((SubPlan 1)), ((SubPlan 2)), fam_prod.fam_id, prod.pro_id, contrat.contrat_id, a1_part_employeur.nom_ou_raison_sociale, a1_part_affi.sexe, ((SubPlan 3)), a1_part_affi.etat_civil, ((SubPlan 4)), partie_dossier.dte_deb_partie
  • Sort Method: quicksort Memory: 21687kB
  • Buffers: shared hit=2353727 read=569228
3. 141.892 28,630.338 ↓ 39,079.0 39,079 1

Nested Loop (cost=545,651.66..818,459.79 rows=1 width=2,419) (actual time=5,381.272..28,630.338 rows=39,079 loops=1)

  • Output: soc.soc_id, dossier.dossier_id, replace(((((btrim((a1_part_affi.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_affi.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_affi.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text), a1_part_affi.dte_naissance, replace(((((btrim((a1_part_assure.nom_ou_raison_sociale)::text) || ' '::text) || btrim((COALESCE(a1_part_assure.prenom, ' '::character varying))::text)) || ' '::text) || btrim((COALESCE(a1_part_assure.nom_complementaire, ' '::character varying))::text)), ' '::text, ' '::text), a1_part_assure.dte_naissance, a1_part_dossier_assure.role, partie_dossier.type_partie, type_couv.desc_courte, couv.desc_courte, a1_adresses_assu.ligne_01, a1_adresses_assu.ligne_02, a1_adresses_assu.ligne_03, a1_adresses_assu.ligne_04, a1_adresses_assu.ligne_05, a1_adresses_assu.ligne_06, a1_adresses_assu.ligne_07, a1_adresses_assu.ligne_08, a1_adresses_assu.ligne_09, a1_adresses_assu.ligne_10, montant_a_payer.id, paiement.numero, paiement.numero_compte, paiement.numero_swift, paiement.numero_compte_postal, paiement.numero_iban, mut_dossier.statut, (SubPlan 1), (SubPlan 2), fam_prod.fam_id, prod.pro_id, contrat.contrat_id, a1_part_employeur.nom_ou_raison_sociale, a1_part_affi.sexe, (SubPlan 3), a1_part_affi.etat_civil, (SubPlan 4), partie_dossier.dte_deb_partie, dossier.numero_dossier, pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, soc.desc_courte, fam_prod.desc_courte, prod.desc_courte, contrat.numero_contrat
  • Buffers: shared hit=2353718 read=569228
4. 37.303 27,550.550 ↓ 1,503.0 39,079 1

Nested Loop (cost=545,651.24..818,323.95 rows=26 width=262) (actual time=5,372.339..27,550.550 rows=39,079 loops=1)

  • Output: montant_a_payer.id, a1_part_employeur.nom_ou_raison_sociale, a1_part_dossier_assure.role, pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, couv.desc_courte, type_couv.desc_courte, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, paiement.numero, paiement.numero_compte, paiement.numero_swift, paiement.numero_compte_postal, paiement.numero_iban, a1_part_assure.nom_ou_raison_sociale, a1_part_assure.prenom, a1_part_assure.nom_complementaire, a1_part_assure.dte_naissance, a1_part_assure.numero_contact
  • Inner Unique: true
  • Buffers: shared hit=1571900 read=569044
5. 24.555 27,435.089 ↓ 1,503.0 39,079 1

Hash Left Join (cost=545,650.82..818,267.72 rows=26 width=240) (actual time=5,372.307..27,435.089 rows=39,079 loops=1)

  • Output: montant_a_payer.id, a1_part_employeur.nom_ou_raison_sociale, a1_part_dossier_assure.role, a1_part_dossier_assure.part_dossier_part_id, pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, couv.desc_courte, type_couv.desc_courte, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, paiement.numero, paiement.numero_compte, paiement.numero_swift, paiement.numero_compte_postal, paiement.numero_iban
  • Hash Cond: (montant_a_payer.adresse_paiement_id = paiement.numero)
  • Join Filter: ((montant_a_payer.adresse_paiement_generation_id = paiement.generation) OR ((montant_a_payer.adresse_paiement_generation_id IS NULL) AND ((paiement.statut)::text = ANY ('{ACTIF,CONTROLER,RADIE}'::text[]))))
  • Rows Removed by Join Filter: 400
  • Buffers: shared hit=1415618 read=569010
6. 17.859 27,305.603 ↓ 1,503.0 39,079 1

Nested Loop (cost=539,868.37..812,484.76 rows=26 width=196) (actual time=5,266.660..27,305.603 rows=39,079 loops=1)

  • Output: montant_a_payer.id, montant_a_payer.adresse_paiement_id, montant_a_payer.adresse_paiement_generation_id, a1_part_employeur.nom_ou_raison_sociale, a1_part_dossier_assure.role, a1_part_dossier_assure.part_dossier_part_id, pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, couv.desc_courte, type_couv.desc_courte, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut
  • Buffers: shared hit=1415500 read=565824
7. 2,920.137 26,801.964 ↓ 454.0 454 1

Nested Loop (cost=539,867.94..812,402.54 rows=1 width=188) (actual time=5,263.780..26,801.964 rows=454 loops=1)

  • Output: a1_part_employeur.nom_ou_raison_sociale, a1_part_dossier_assure.role, a1_part_dossier_assure.part_dossier_part_id, pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, couv.desc_courte, type_couv.desc_courte, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, objet_payable.id
  • Join Filter: (dossier.dossier_id = objet_payable.metier_id)
  • Rows Removed by Join Filter: 44632886
  • Buffers: shared hit=1404450 read=564443
8. 2.085 8,557.387 ↓ 460.0 460 1

Nested Loop (cost=539,867.94..806,699.55 rows=1 width=188) (actual time=5,263.571..8,557.387 rows=460 loops=1)

  • Output: a1_part_employeur.nom_ou_raison_sociale, a1_part_dossier_assure.role, a1_part_dossier_assure.part_dossier_part_id, pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, couv.desc_courte, type_couv.desc_courte, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id
  • Inner Unique: true
  • Buffers: shared hit=156470 read=564443
9. 1.876 8,550.702 ↓ 460.0 460 1

Nested Loop (cost=539,867.52..806,697.38 rows=1 width=183) (actual time=5,263.167..8,550.702 rows=460 loops=1)

  • Output: a1_part_dossier_assure.role, a1_part_dossier_assure.part_dossier_part_id, pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, couv.desc_courte, type_couv.desc_courte, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id, a1_part_contrat_employeur.part_id
  • Buffers: shared hit=154631 read=564442
10. 1.887 8,540.086 ↓ 460.0 460 1

Nested Loop (cost=539,867.10..806,695.13 rows=1 width=183) (actual time=5,262.547..8,540.086 rows=460 loops=1)

  • Output: a1_part_dossier_assure.role, a1_part_dossier_assure.part_dossier_part_id, pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, couv.desc_courte, type_couv.desc_courte, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id
  • Inner Unique: true
  • Buffers: shared hit=152792 read=564441
11. 3.432 8,514.279 ↓ 460.0 460 1

Nested Loop (cost=539,866.67..806,692.95 rows=1 width=178) (actual time=5,261.420..8,514.279 rows=460 loops=1)

  • Output: pa_gen_prest.prest_due, pa_gen_prest.prest_tot, pa_gen_prest.idx, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, couv.desc_courte, type_couv.desc_courte, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id, pa_gen.assure_part_dossier_id
  • Buffers: shared hit=150987 read=564404
12. 133.010 8,345.707 ↓ 460.0 460 1

Nested Loop (cost=539,866.10..806,690.60 rows=1 width=164) (actual time=5,257.605..8,345.707 rows=460 loops=1)

  • Output: couv.desc_courte, type_couv.desc_courte, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id, pa_gen.pa_gen_id, pa_gen.assure_part_dossier_id
  • Join Filter: (vcouv.vco_id = pa_gen.vco_id)
  • Rows Removed by Join Filter: 1868520
  • Buffers: shared hit=148853 read=564234
13. 1.197 6,989.557 ↓ 460.0 460 1

Nested Loop (cost=539,828.95..806,433.95 rows=1 width=125) (actual time=5,246.697..6,989.557 rows=460 loops=1)

  • Output: a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id, pa_gen.vco_id, pa_gen.pa_gen_id, pa_gen.assure_part_dossier_id
  • Buffers: shared hit=100147 read=564162
14. 1.044 6,908.800 ↓ 221.0 221 1

Nested Loop (cost=539,828.38..806,075.86 rows=1 width=117) (actual time=5,242.180..6,908.800 rows=221 loops=1)

  • Output: a1_part_affi.nom_ou_raison_sociale, a1_part_affi.prenom, a1_part_affi.nom_complementaire, a1_part_affi.dte_naissance, a1_part_affi.sexe, a1_part_affi.etat_civil, plan_partie.plan_partie_id, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id
  • Inner Unique: true
  • Buffers: shared hit=99154 read=564018
15. 1.140 6,853.390 ↓ 221.0 221 1

Nested Loop (cost=539,827.96..806,073.70 rows=1 width=93) (actual time=5,239.343..6,853.390 rows=221 loops=1)

  • Output: plan_partie.plan_partie_id, partie_dossier.type_partie, partie_dossier.dte_deb_partie, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id, a1_part_dossier_affi.part_dossier_part_id
  • Buffers: shared hit=98368 read=563920
16. 91.048 6,798.326 ↓ 221.0 221 1

Hash Join (cost=539,827.53..806,060.01 rows=1 width=97) (actual time=5,234.849..6,798.326 rows=221 loops=1)

  • Output: plan_partie.plan_partie_id, partie_dossier.type_partie, partie_dossier.dte_deb_partie, partie_dossier.dossier_gen_id, dossier_gen.dossier_gen_id, soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id
  • Hash Cond: (dossier_gen.mut_dossier_id = mut_dossier.mut_dossier_id)
  • Buffers: shared hit=97556 read=563840
17. 0.000 6,223.702 ↓ 1.0 690,228 1

Gather (cost=538,918.29..802,584.77 rows=684,267 width=25) (actual time=4,582.530..6,223.702 rows=690,228 loops=1)

  • Output: plan_partie.plan_partie_id, partie_dossier.type_partie, partie_dossier.dte_deb_partie, partie_dossier.dossier_gen_id, dossier_gen.mut_dossier_id, dossier_gen.dossier_gen_id
  • Workers Planned: 4
  • Workers Launched: 4
  • Buffers: shared hit=65310 read=562889
18. 498.464 6,291.395 ↑ 1.2 138,046 5

Parallel Hash Join (cost=537,918.29..733,158.07 rows=171,067 width=25) (actual time=4,568.243..6,291.395 rows=138,046 loops=5)

  • Output: plan_partie.plan_partie_id, partie_dossier.type_partie, partie_dossier.dte_deb_partie, partie_dossier.dossier_gen_id, dossier_gen.mut_dossier_id, dossier_gen.dossier_gen_id
  • Hash Cond: (dossier_gen.dossier_gen_id = partie_dossier.dossier_gen_id)
  • Buffers: shared hit=65310 read=562889
  • Worker 0: actual time=4563.661..6354.947 rows=153342 loops=1
  • Buffers: shared hit=13834 read=111708
  • Worker 1: actual time=4566.521..6376.075 rows=157595 loops=1
  • Buffers: shared hit=14475 read=111878
  • Worker 2: actual time=4566.527..6321.952 rows=148700 loops=1
  • Buffers: shared hit=13420 read=113866
  • Worker 3: actual time=4565.863..6364.475 rows=154609 loops=1
  • Buffers: shared hit=14190 read=114145
19. 1,227.763 1,227.763 ↑ 1.3 910,510 5

Parallel Seq Scan on iliade.dossier_gen (cost=0.00..190,541.44 rows=1,138,844 width=8) (actual time=0.321..1,227.763 rows=910,510 loops=5)

  • Output: dossier_gen.dossier_gen_id, dossier_gen.mut_dossier_id, dossier_gen.somme_tx_validite_inva, dossier_gen.vers_anticipe_effectue, dossier_gen.dossier_id, dossier_gen.no_gen_dossier, dossier_gen.confidentiel, dossier_gen.code_voir_dossier, dossier_gen.impots_source, dossier_gen.avoir_50_ans, dossier_gen.retour_avoir_min_lpp, dossier_gen.int_retour_avoir_min_lpp, dossier_gen.retour_avoir_evlp, dossier_gen.int_retour_avoir_evlp, dossier_gen.restitution_avoir_min_lpp, dossier_gen.int_restitution_avoir_min_lpp, dossier_gen.restitution_avoir_evlp, dossier_gen.int_restitution_avoir_evlp, dossier_gen.beneficiaires_deces, dossier_gen.donnees_medicales_introduites, dossier_gen.refus_medical, dossier_gen.non_reponse_etat_sante, dossier_gen.suivi_medical, dossier_gen.dte_suivi_medical, dossier_gen.surprimes, dossier_gen.reserves, dossier_gen.inva, dossier_gen.tot_rev_paye, dossier_gen.dte_calc_avoir, dossier_gen.dte_precedent_calc_avoir, dossier_gen.dte_derniere_idx, dossier_gen.dte_prochaine_annualisation, dossier_gen.dte_prochain_bouclement, dossier_gen.dte_prochain_recalcul, dossier_gen.prise_cpt_causes_reduc, dossier_gen.dte_retraite, dossier_gen.trtmt_partie_active_retraite, dossier_gen.dte_deces_reel, dossier_gen.dte_demission, dossier_gen.freq_paie_rentes, dossier_gen.capital_inva, dossier_gen.tx_inva_externe, dossier_gen.cause_fin_inva, dossier_gen.vers_anticipe_en_cours, dossier_gen.dte_demande_vers_anticipe, dossier_gen.dte_der_vers_anticipe, dossier_gen.raison_vers_anticipe, dossier_gen.remb_tot_der_vers_anticipe, dossier_gen.remb_tot_ensbl_vers_anticipes, dossier_gen.div_en_cours, dossier_gen.inscription_registre_foncier, dossier_gen.mise_en_gage, dossier_gen.jamais_affilie, dossier_gen.dte_premiere_affiliation, dossier_gen.dte_demande_avance_avs, dossier_gen.avance_avs, dossier_gen.dte_fin_avance_avs, dossier_gen.mnt_avance_avs, dossier_gen.ajournement, dossier_gen.dte_fin_ajournement, dossier_gen.maintien_fina_ajournement, dossier_gen.ajournement_annee_en_annee, dossier_gen.dte_prochain_ajournement, dossier_gen.age_premier_ajournement, dossier_gen.calc_av_terme, dossier_gen.conge, dossier_gen.demande_affiliation_recue, dossier_gen.suri, dossier_gen.dte_der_ctrl_suri, dossier_gen.regles_avert_outrepassees, dossier_gen.adresse_paie_connue, dossier_gen.somme_risquee_reass_deces, dossier_gen.somme_risquee_reass_inva, dossier_gen.annonce_reass_deces, dossier_gen.annonce_reass_inva, dossier_gen.duree_cip_illimitee, dossier_gen.dte_entree_actuarielle, dossier_gen.dte_entree_av_conversion, dossier_gen.dte_deb_conge, dossier_gen.dte_deb_conge_effectif, dossier_gen.dte_retour_conge, dossier_gen.dte_retour_conge_effectif, dossier_gen.conge_administratif, dossier_gen.duree_conges_non_rachetes, dossier_gen.mnt_rachat_excd, dossier_gen.dte_rachat_excd, dossier_gen.dte_echeance_rachat_excd, dossier_gen.dte_fin_fine_entree, dossier_gen.sal_inferieur_min_lpp, dossier_gen.calc_prest_sortie_gar, dossier_gen.dte_demande_retraite_capital, dossier_gen.dte_ren_retraite_capital, dossier_gen.dte_ren_avance_avs, dossier_gen.type_compens, dossier_gen.dte_retraite_compensee, dossier_gen.capital_compens_retraite, dossier_gen.capital_compens_suppltemp, dossier_gen.paie_autr_beneficiaires_deces, dossier_gen.suppltemp_avs, dossier_gen.majo_suppltemp_avs, dossier_gen.dte_fin_suppltemp_avs, dossier_gen.dte_fin_majo_suppltemp_avs, dossier_gen.dte_calc_situation_ass, dossier_gen.cause_refus_medical, dossier_gen.majo_tx_pension, dossier_gen.no_gen_dossier_situation_ass, dossier_gen.numero_dossier_etat, dossier_gen.usr_log_i, dossier_gen.dte_log_i, dossier_gen.usr_log_u, dossier_gen.dte_log_u, dossier_gen.cause_changement_employeur, dossier_gen.age_terme_vise, dossier_gen.code_urev_urcip, dossier_gen.pas_pu_se_prononcer, dossier_gen.prest_sortie_en_especes, dossier_gen.gest_reservee, dossier_gen.reass_deces, dossier_gen.reass_inva, dossier_gen.inva_proportion_reassuree, dossier_gen.annonce_reass_deces_facultatif, dossier_gen.annonce_reass_inva_facultatif, dossier_gen.annonce_reass_deces_sinistre, dossier_gen.annonce_reass_inva_sinistre, dossier_gen.prct_avance_avs, dossier_gen.remb_avance_avs_prime_unique, dossier_gen.paie_remb_avance_avs_effectue, dossier_gen.frais_gest_demission, dossier_gen.audit, dossier_gen.suivi_demande_affiliation, dossier_gen.dte_suivi_demande_affiliation, dossier_gen.stipulation_beneficiaire, dossier_gen.mois_demission_paye, dossier_gen.pleine_capacite_travail, dossier_gen.beneficiaire_rte_ai, dossier_gen.dte_deb_inva_reconnue_ai, dossier_gen.envoi_doc_affiliation, dossier_gen.adresse_paie, dossier_gen.dte_calc_deroulement, dossier_gen.dte_fina_plus_maintenu, dossier_gen.donnees_retraite_annoncees, dossier_gen.mnt_rachat_deg_pos, dossier_gen.suivi_retraite, dossier_gen.dte_prochain_suivi_retraite, dossier_gen.quest_retraite_employeur_recu, dossier_gen.migration_hermes, dossier_gen.motif_paiement, dossier_gen.avoir_50_ans_lpp, dossier_gen.dossier_cible_id
  • Buffers: shared hit=65130 read=114023
  • Worker 0: actual time=0.019..1263.593 rows=951517 loops=1
  • Buffers: shared hit=13790 read=23630
  • Worker 1: actual time=0.029..1272.231 rows=1007799 loops=1
  • Buffers: shared hit=14431 read=24620
  • Worker 2: actual time=0.020..1238.719 rows=936451 loops=1
  • Buffers: shared hit=13376 read=23221
  • Worker 3: actual time=0.829..1273.747 rows=966710 loops=1
  • Buffers: shared hit=14146 read=23750
20. 81.050 4,565.168 ↑ 1.2 138,046 5

Parallel Hash (cost=535,779.95..535,779.95 rows=171,067 width=17) (actual time=4,565.168..4,565.168 rows=138,046 loops=5)

  • Output: plan_partie.plan_partie_id, partie_dossier.type_partie, partie_dossier.dte_deb_partie, partie_dossier.dossier_gen_id
  • Buckets: 1048576 Batches: 1 Memory Usage: 46080kB
  • Buffers: shared hit=4 read=448866
  • Worker 0: actual time=4563.342..4563.342 rows=135496 loops=1
  • Buffers: shared read=88078
  • Worker 1: actual time=4566.227..4566.227 rows=136525 loops=1
  • Buffers: shared read=87258
  • Worker 2: actual time=4566.201..4566.201 rows=139820 loops=1
  • Buffers: shared read=90645
  • Worker 3: actual time=4564.581..4564.581 rows=139554 loops=1
  • Buffers: shared read=90395
21. 450.600 4,484.118 ↑ 1.2 138,046 5

Parallel Hash Join (cost=104,728.03..535,779.95 rows=171,067 width=17) (actual time=1,213.681..4,484.118 rows=138,046 loops=5)

  • Output: plan_partie.plan_partie_id, partie_dossier.type_partie, partie_dossier.dte_deb_partie, partie_dossier.dossier_gen_id
  • Inner Unique: true
  • Hash Cond: (plan_partie.partie_dossier_id = partie_dossier.partie_dossier_id)
  • Buffers: shared hit=4 read=448866
  • Worker 0: actual time=1211.557..4481.953 rows=135496 loops=1
  • Buffers: shared read=88078
  • Worker 1: actual time=1216.520..4481.809 rows=136525 loops=1
  • Buffers: shared read=87258
  • Worker 2: actual time=1213.725..4484.378 rows=139820 loops=1
  • Buffers: shared read=90645
  • Worker 3: actual time=1212.835..4481.091 rows=139554 loops=1
  • Buffers: shared read=90395
22. 2,823.922 2,823.922 ↑ 1.3 875,391 5

Parallel Seq Scan on iliade.plan_partie (cost=0.00..428,169.68 rows=1,097,997 width=8) (actual time=2.528..2,823.922 rows=875,391 loops=5)

  • Output: plan_partie.plan_partie_id, plan_partie.partie_dossier_id, plan_partie.plan_employeur_affilie_id, plan_partie.plan_partie_orig_id, plan_partie.dossier_id, plan_partie.no_gen_dossier, plan_partie.plan_base_id, plan_partie.nom_plan, plan_partie.type_plan, plan_partie.type_prev_lpp, plan_partie.etat, plan_partie.deduc_1, plan_partie.deduc_2, plan_partie.mnt_capital_retraite, plan_partie.prct_capital_retraite, plan_partie.mnt_rte_retraite, plan_partie.prct_rte_retraite, plan_partie.corrections_manuelles, plan_partie.dte_effet, plan_partie.recalcul_prest_av_terme, plan_partie.figer_recalcul_prest_av_terme, plan_partie.propres_coti, plan_partie.int_propres_coti, plan_partie.propres_coti_prov, plan_partie.propres_coti_majorees, plan_partie.rachats, plan_partie.int_rachats, plan_partie.avoir_transfere, plan_partie.freq_paie_coti, plan_partie.surp_paie_frac_inclus, plan_partie.valorisable, plan_partie.dte_entree_theorique, plan_partie.dte_entree_av_va, plan_partie.dte_prevue_deb_inva, plan_partie.deduc_gar, plan_partie.deduc_gar_precedent, plan_partie.sal_cotisant_garanti, plan_partie.sal_cotisant_garanti_precedent, plan_partie.propres_coti_ord, plan_partie.propres_coti_maintien, plan_partie.part_suppltemp_rachats, plan_partie.rachats_sans_int, plan_partie.prest_sortie_gar_base, plan_partie.prop_coti_ord_prestsortgar, plan_partie.prop_coti_maint_prestsortgar, plan_partie.prop_coti_maj_prestsortgar, plan_partie.rachats_prestsortgar, plan_partie.vers_anticipes_prestsortgar, plan_partie.prct_capital_lpp_retraite, plan_partie.prest_payees, plan_partie.usr_log_i, plan_partie.dte_log_i, plan_partie.usr_log_u, plan_partie.dte_log_u, plan_partie.nom_comm, plan_partie.freq_paie_coti_fige, plan_partie.rachats_prevus, plan_partie.part_suppltemp_rachats_prevus, plan_partie.rachats_prevus_prestsortgar, plan_partie.corrections_manuelles_primes, plan_partie.corrections_manuelles_prest, plan_partie.remb_va_prevus, plan_partie.part_suppltemp_remb_va_prevus, plan_partie.remb_va_prevus_prestsortgar, plan_partie.mnt_max_deb_ajournement, plan_partie.remb_va_a_recevoir, plan_partie.audit, plan_partie.max_rachetable_31_12, plan_partie.sal_min_1, plan_partie.sal_min_2, plan_partie.sal_max_1, plan_partie.sal_max_2, plan_partie.duree_gar_sal_retraite, plan_partie.duree_gar_sal_risque, plan_partie.duree_gar_sal_sortie, plan_partie.capital_retraite, plan_partie.correction_ps_rappel, plan_partie.plan_calcul_avant_terme, plan_partie.deduc_3, plan_partie.deduc_4, plan_partie.sal_min_3, plan_partie.sal_min_4, plan_partie.sal_max_3, plan_partie.sal_max_4, plan_partie.prct_cpt_pref_retraite, plan_partie.prct_cpt_exc_lp, plan_partie.pref_retraite, plan_partie.int_pref_retraite, plan_partie.excedents_lp, plan_partie.int_excedents_lp, plan_partie.propres_cotisations_ordinaires_part_epargne, plan_partie.propres_cotisations_ordinaires_interets_part_epargne, plan_partie.propres_cotisations_ordinaires_provisoires_part_epargne, plan_partie.propres_cotisations_maintien_part_epargne, plan_partie.propres_cotisations_maintien_interets_part_epargne, plan_partie.propres_cotisations_maintien_provisoires_part_epargne, plan_partie.max_rachetable_31_12_sans_cpr
  • Filter: (((plan_partie.etat)::text = 'VALI'::text) AND ((plan_partie.type_plan)::text = 'ENV'::text))
  • Rows Removed by Filter: 1536950
  • Buffers: shared read=382980
  • Worker 0: actual time=1.957..2822.551 rows=873354 loops=1
  • Buffers: shared read=76318
  • Worker 1: actual time=4.742..2827.018 rows=860628 loops=1
  • Buffers: shared read=75368
  • Worker 2: actual time=2.017..2823.971 rows=881826 loops=1
  • Buffers: shared read=77170
  • Worker 3: actual time=1.978..2820.261 rows=881046 loops=1
  • Buffers: shared read=77205
23. 110.838 1,209.596 ↑ 1.3 153,406 5

Parallel Hash (cost=102,299.16..102,299.16 rows=194,310 width=17) (actual time=1,209.595..1,209.596 rows=153,406 loops=5)

  • Output: partie_dossier.type_partie, partie_dossier.dte_deb_partie, partie_dossier.dossier_gen_id, partie_dossier.partie_dossier_id
  • Buckets: 1048576 Batches: 1 Memory Usage: 50272kB
  • Buffers: shared hit=4 read=65886
  • Worker 0: actual time=1209.497..1209.498 rows=148230 loops=1
  • Buffers: shared read=11760
  • Worker 1: actual time=1211.718..1211.718 rows=141289 loops=1
  • Buffers: shared read=11890
  • Worker 2: actual time=1211.596..1211.597 rows=163857 loops=1
  • Buffers: shared read=13475
  • Worker 3: actual time=1210.759..1210.760 rows=164220 loops=1
  • Buffers: shared read=13190
24. 947.002 1,098.758 ↑ 1.3 153,406 5

Parallel Bitmap Heap Scan on iliade.partie_dossier (cost=9,435.56..102,299.16 rows=194,310 width=17) (actual time=182.306..1,098.758 rows=153,406 loops=5)

  • Output: partie_dossier.type_partie, partie_dossier.dte_deb_partie, partie_dossier.dossier_gen_id, partie_dossier.partie_dossier_id
  • Recheck Cond: ((partie_dossier.type_partie)::text = ANY ('{PEDE,PEIN,PERE}'::text[]))
  • Filter: ((partie_dossier.etat)::text = 'VALI'::text)
  • Rows Removed by Filter: 10488
  • Heap Blocks: exact=12418
  • Buffers: shared hit=4 read=65886
  • Worker 0: actual time=173.925..1099.456 rows=148230 loops=1
  • Buffers: shared read=11760
  • Worker 1: actual time=180.579..1103.542 rows=141289 loops=1
  • Buffers: shared read=11890
  • Worker 2: actual time=191.560..1081.839 rows=163857 loops=1
  • Buffers: shared read=13475
  • Worker 3: actual time=191.556..1096.783 rows=164220 loops=1
  • Buffers: shared read=13190
25. 151.756 151.756 ↓ 1.0 819,473 1

Bitmap Index Scan on idx_partie_dossier_type_partie_dossier_id (cost=0.00..9,241.25 rows=809,008 width=0) (actual time=151.756..151.756 rows=819,473 loops=1)

  • Index Cond: ((partie_dossier.type_partie)::text = ANY ('{PEDE,PEIN,PERE}'::text[]))
  • Buffers: shared hit=4 read=3153
26. 0.325 483.576 ↓ 217.0 217 1

Hash (cost=909.22..909.22 rows=1 width=80) (actual time=483.576..483.576 rows=217 loops=1)

  • Output: soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id, mut_dossier.mut_dossier_id
  • Buckets: 1024 Batches: 1 Memory Usage: 36kB
  • Buffers: shared hit=32246 read=951
27. 0.945 483.251 ↓ 217.0 217 1

Nested Loop (cost=3.42..909.22 rows=1 width=80) (actual time=138.320..483.251 rows=217 loops=1)

  • Output: soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, mut_dossier.statut, mut_dossier.dossier_id, mut_dossier.mut_dossier_id
  • Buffers: shared hit=32246 read=951
28. 0.670 24.702 ↓ 137.7 826 1

Nested Loop (cost=2.99..297.00 rows=6 width=67) (actual time=15.891..24.702 rows=826 loops=1)

  • Output: soc.soc_id, soc.desc_courte, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte
  • Inner Unique: true
  • Join Filter: (soc.soc_id = fam_prod.soc_id)
  • Rows Removed by Join Filter: 4130
  • Buffers: shared hit=504 read=32
29. 0.797 23.206 ↓ 137.7 826 1

Hash Join (cost=2.99..295.36 rows=6 width=62) (actual time=15.841..23.206 rows=826 loops=1)

  • Output: contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier, fam_prod.fam_id, fam_prod.desc_courte, fam_prod.soc_id
  • Inner Unique: true
  • Hash Cond: (prod.fam_id = fam_prod.fam_id)
  • Buffers: shared hit=503 read=32
30. 0.527 22.349 ↓ 18.0 826 1

Nested Loop (cost=1.27..293.51 rows=46 width=49) (actual time=15.746..22.349 rows=826 loops=1)

  • Output: contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, prod.fam_id, contrat_gen.contrat_gen_id, dossier.dossier_id, dossier.numero_dossier
  • Join Filter: (contrat.contrat_id = dossier.contrat_id)
  • Buffers: shared hit=502 read=32
31. 0.004 15.089 ↑ 1.0 1 1

Nested Loop (cost=0.85..211.09 rows=1 width=45) (actual time=15.055..15.089 rows=1 loops=1)

  • Output: mut_contrat.contrat_id, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, prod.fam_id, contrat_gen.contrat_gen_id
  • Buffers: shared hit=320 read=22
32. 0.004 15.042 ↑ 1.0 1 1

Nested Loop (cost=0.56..208.91 rows=1 width=45) (actual time=15.011..15.042 rows=1 loops=1)

  • Output: mut_contrat.contrat_id, mut_contrat.mut_contrat_id, contrat.contrat_id, contrat.numero_contrat, prod.pro_id, prod.desc_courte, prod.fam_id
  • Inner Unique: true
  • Buffers: shared hit=317 read=22
33. 0.017 14.972 ↑ 1.0 1 1

Nested Loop (cost=0.42..206.52 rows=1 width=20) (actual time=14.941..14.972 rows=1 loops=1)

  • Output: mut_contrat.contrat_id, mut_contrat.mut_contrat_id, contrat.contrat_id, contrat.numero_contrat, contrat.pro_id
  • Buffers: shared hit=315 read=22
34. 2.106 2.106 ↑ 1.0 1 1

Seq Scan on iliade.contrat (cost=0.00..163.61 rows=1 width=12) (actual time=2.077..2.106 rows=1 loops=1)

  • Output: contrat.contrat_id, contrat.employeur_part_id, contrat.mut_dossier_autorisee_id, contrat.pro_id, contrat.numero_contrat, contrat.dte_effet, contrat.dte_effet_pe, contrat.blocage_dossiers, contrat.blocage_fact, contrat.raison_blocage_fact, contrat.visa_blocage_fact, contrat.dte_operation_blocage_fact, contrat.dte_derniere_fact, contrat.responsable_gest, contrat.responsable_gest_medicale, contrat.ancien_numero_contrat, contrat.reass, contrat.usr_log_i, contrat.dte_log_i, contrat.usr_log_u, contrat.dte_log_u, contrat.dte_entree, contrat.quotite_apport_initial, contrat.comp_cmt_pari, contrat.calc_dte_affiliation, contrat.objet_facturable_allocemp_cree, contrat.dte_derniere_fact_prest, contrat.reass_complete, contrat.audit, contrat.blocage_extranet, contrat.secteur_gestion
  • Filter: (contrat.numero_contrat = 31002)
  • Rows Removed by Filter: 5488
  • Buffers: shared hit=95
35. 12.506 12.849 ↑ 1.0 1 1

Index Scan using idx_mut_dossier_no_gen_contrat_contrat_id on iliade.mut_contrat (cost=0.42..42.90 rows=1 width=8) (actual time=12.848..12.849 rows=1 loops=1)

  • Output: mut_contrat.mut_contrat_id, mut_contrat.per_gest_id, mut_contrat.mut_id, mut_contrat.contrat_id, mut_contrat.donnees_mut_contrat_id, mut_contrat.no_gen_contrat, mut_contrat.dte_mut, mut_contrat.description, mut_contrat.etat, mut_contrat.statut, mut_contrat.no_mut, mut_contrat.no_mut_precedente, mut_contrat.no_mut_extournee, mut_contrat.repercussion_auto_dossiers, mut_contrat.visa_cree_par, mut_contrat.dte_creation, mut_contrat.visa_modifie_par, mut_contrat.dte_modification, mut_contrat.visa_ctrl_par, mut_contrat.dte_ctrl, mut_contrat.usr_log_i, mut_contrat.dte_log_i, mut_contrat.usr_log_u, mut_contrat.dte_log_u, mut_contrat.audit, mut_contrat.dte_escompte, mut_contrat.nouveau_cas, mut_contrat.pas_de_cas, mut_contrat.cas_id, mut_contrat.no_mut_bck, mut_contrat.no_mut_precedente_bck, mut_contrat.no_mut_extournee_bck
  • Index Cond: (mut_contrat.contrat_id = contrat.contrat_id)
  • Filter: (mut_contrat.no_gen_contrat = (SubPlan 9))
  • Rows Removed by Filter: 48
  • Buffers: shared hit=220 read=22
36.          

SubPlan (for Index Scan)

37. 0.049 0.343 ↑ 1.0 1 49

Result (cost=1.66..1.67 rows=1 width=4) (actual time=0.007..0.007 rows=1 loops=49)

  • Output: $8
  • Buffers: shared hit=196
38.          

Initplan (for Result)

39. 0.000 0.294 ↑ 1.0 1 49

Limit (cost=0.42..1.66 rows=1 width=4) (actual time=0.006..0.006 rows=1 loops=49)

  • Output: a_5.no_gen_contrat
  • Buffers: shared hit=196
40. 0.294 0.294 ↑ 14.0 1 49

Index Scan Backward using idx_mut_dossier_no_gen_contrat_contrat_id on iliade.mut_contrat a_5 (cost=0.42..17.85 rows=14 width=4) (actual time=0.005..0.006 rows=1 loops=49)

  • Output: a_5.no_gen_contrat
  • Index Cond: ((mut_contrat.contrat_id = a_5.contrat_id) AND (a_5.no_gen_contrat IS NOT NULL))
  • Filter: ((a_5.etat)::text = 'VALI'::text)
  • Buffers: shared hit=196
41. 0.066 0.066 ↑ 1.0 1 1

Index Scan using p_pro on produit.prod (cost=0.14..2.36 rows=1 width=29) (actual time=0.066..0.066 rows=1 loops=1)

  • Output: prod.pro_id, prod.fam_id, prod.dte_deb_app, prod.dte_fin_app, prod.dn_soc_id, prod.desc_courte, prod.usr_log_i, prod.dte_log_i, prod.usr_log_u, prod.dte_log_u, prod.default_nbr_bvr, prod.ged_definition1, prod.ged_definition2, prod.dernier_num_police_utilise, prod.type_prod, prod.ged_type_caisse
  • Index Cond: (prod.pro_id = contrat.pro_id)
  • Buffers: shared hit=2
42. 0.043 0.043 ↑ 1.0 1 1

Index Scan using mu_c_in_c_g_fk on iliade.contrat_gen (cost=0.29..2.16 rows=1 width=8) (actual time=0.041..0.043 rows=1 loops=1)

  • Output: contrat_gen.contrat_gen_id, contrat_gen.contrat_pilote_fonds_gar_id, contrat_gen.mut_contrat_id, contrat_gen.nouvelle_ip_part_id, contrat_gen.contrat_pilote_regrp_gest_id, contrat_gen.secteur_act_predominant_id, contrat_gen.contrat_id, contrat_gen.no_gen_contrat, contrat_gen.type_rattr, contrat_gen.gest_reservee, contrat_gen.code_voir_dossier, contrat_gen.confidentiel, contrat_gen.effectif_pour_rab, contrat_gen.nombre_affilies_reel, contrat_gen.appliquer_tx_validite, contrat_gen.appliquer_tx_act, contrat_gen.bonif_escomptee, contrat_gen.fonds_gar, contrat_gen.pilote_regrpmnt_gest, contrat_gen.age_terme_vise, contrat_gen.regrpmnt_contrat_fonds_gar, contrat_gen.statut_cmt_pari, contrat_gen.dte_prochaine_maj_effectif, contrat_gen.numero_avenant, contrat_gen.dte_entree_vigueur_avenant, contrat_gen.type_avenant, contrat_gen.suivi_contentieux, contrat_gen.contrat_resilie_cours_annee, contrat_gen.correspondance_employeur_seul, contrat_gen.envoi_liste_annuelle_salaires, contrat_gen.envoi_extrait_rapport_annuel, contrat_gen.envoi_situation_prev, contrat_gen.envoi_courrier_va_logement, contrat_gen.dte_ctrl_cmt_pari, contrat_gen.nombre_repr_employeur_requis, contrat_gen.nombre_repr_empl_requis, contrat_gen.grand_contrat, contrat_gen.tx_coti_laa, contrat_gen.usr_log_i, contrat_gen.dte_log_i, contrat_gen.usr_log_u, contrat_gen.dte_log_u, contrat_gen.idx_particuliere, contrat_gen.fact_rattr, contrat_gen.audit, contrat_gen.envoi_bordereau_fact, contrat_gen.dte_echeance, contrat_gen.choix_plan_complementaire, contrat_gen.declaration_fiscale, contrat_gen.soumis_cct, contrat_gen.groupement_cct, contrat_gen.particularites_contrat, contrat_gen.impression_documents_facturation, contrat_gen.impot_source
  • Index Cond: (contrat_gen.mut_contrat_id = mut_contrat.mut_contrat_id)
  • Buffers: shared hit=3
43. 6.733 6.733 ↓ 7.5 826 1

Index Scan using c_in_d_fk on iliade.dossier (cost=0.42..81.05 rows=110 width=12) (actual time=0.685..6.733 rows=826 loops=1)

  • Output: dossier.dossier_id, dossier.contrat_id, dossier.dossier_parent_id, dossier.pro_id, dossier.numero_dossier, dossier.dte_affiliation, dossier.mnt_epa_tot, dossier.mnt_epa_min_lpp, dossier.dte_blocage_fact, dossier.raison_blocage_fact, dossier.visa_blocage_fact, dossier.dte_operation_blocage_fact, dossier.envoi_quest_mise_pension, dossier.objet_facturable_cree, dossier.deposant_epa, dossier.usr_log_i, dossier.dte_log_i, dossier.usr_log_u, dossier.dte_log_u, dossier.audit, dossier.blocage_extranet, dossier.responsable_gest, dossier.responsable_gest_medicale, dossier.id_mut_blocage_fact, dossier.raison_blocage_mutations, dossier.visa_blocage_mutations, dossier.blocage_mutations, dossier.dte_blocage_mutations, dossier.business_warning, dossier.sexe_affilie, dossier.dte_naissance_affilie
  • Index Cond: (dossier.contrat_id = mut_contrat.contrat_id)
  • Buffers: shared hit=182 read=10
44. 0.009 0.060 ↑ 1.0 5 1

Hash (cost=1.65..1.65 rows=5 width=17) (actual time=0.060..0.060 rows=5 loops=1)

  • Output: fam_prod.fam_id, fam_prod.desc_courte, fam_prod.soc_id
  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
  • Buffers: shared hit=1
45. 0.051 0.051 ↑ 1.0 5 1

Seq Scan on produit.fam_prod (cost=0.00..1.65 rows=5 width=17) (actual time=0.030..0.051 rows=5 loops=1)

  • Output: fam_prod.fam_id, fam_prod.desc_courte, fam_prod.soc_id
  • Filter: (fam_prod.fam_id = ANY ('{23,24,9,43,26}'::integer[]))
  • Rows Removed by Filter: 35
  • Buffers: shared hit=1
46. 0.801 0.826 ↑ 1.2 6 826

Materialize (cost=0.00..1.10 rows=7 width=9) (actual time=0.000..0.001 rows=6 loops=826)

  • Output: soc.soc_id, soc.desc_courte
  • Buffers: shared hit=1
47. 0.025 0.025 ↑ 1.2 6 1

Seq Scan on produit.soc (cost=0.00..1.07 rows=7 width=9) (actual time=0.021..0.025 rows=6 loops=1)

  • Output: soc.soc_id, soc.desc_courte
  • Buffers: shared hit=1
48. 432.117 457.604 ↓ 0.0 0 826

Index Scan using idx_mut_dossier_dossier_id_no_gen_dossier on iliade.mut_dossier (cost=0.43..102.03 rows=1 width=13) (actual time=0.554..0.554 rows=0 loops=826)

  • Output: mut_dossier.mut_dossier_id, mut_dossier.donnees_mut_dossier_id, mut_dossier.per_gest_id, mut_dossier.dossier_id, mut_dossier.mut_id, mut_dossier.no_gen_dossier, mut_dossier.dte_mut, mut_dossier.description, mut_dossier.desc_treeview, mut_dossier.etat, mut_dossier.statut, mut_dossier.statut_precedent, mut_dossier.no_mut, mut_dossier.no_mut_precedente, mut_dossier.no_mut_extournee, mut_dossier.maj_cpt_epa, mut_dossier.dte_prochaine_fact_escompte, mut_dossier.visa_cree_par, mut_dossier.dte_creation, mut_dossier.visa_modifie_par, mut_dossier.dte_modification, mut_dossier.visa_ctrl_par, mut_dossier.dte_ctrl, mut_dossier.usr_log_i, mut_dossier.dte_log_i, mut_dossier.usr_log_u, mut_dossier.dte_log_u, mut_dossier.numero_regrpmnt_mut, mut_dossier.dte_escompte, mut_dossier.audit, mut_dossier.orig_mut, mut_dossier.annonce_extranet_id, mut_dossier.no_offre, mut_dossier.bande_etat_process_id, mut_dossier.nouveau_cas, mut_dossier.pas_de_cas, mut_dossier.cas_id, mut_dossier.no_mut_bck, mut_dossier.no_mut_precedente_bck, mut_dossier.no_mut_extournee_bck
  • Index Cond: (mut_dossier.dossier_id = dossier.dossier_id)
  • Filter: (((mut_dossier.statut)::text = ANY ('{PENS,MIXT}'::text[])) AND (mut_dossier.no_gen_dossier = (SubPlan 6)))
  • Rows Removed by Filter: 20
  • Buffers: shared hit=31742 read=919
49.          

SubPlan (for Index Scan)

50. 0.000 25.487 ↑ 1.0 1 3,641

Result (cost=1.84..1.85 rows=1 width=4) (actual time=0.007..0.007 rows=1 loops=3,641)

  • Output: $5
  • Buffers: shared hit=14550 read=45
51.          

Initplan (for Result)

52. 3.641 25.487 ↑ 1.0 1 3,641

Limit (cost=0.43..1.84 rows=1 width=4) (actual time=0.007..0.007 rows=1 loops=3,641)

  • Output: a_4.no_gen_dossier
  • Buffers: shared hit=14550 read=45
53. 21.846 21.846 ↑ 30.0 1 3,641

Index Scan Backward using idx_mut_dossier_dossier_id_no_gen_dossier on iliade.mut_dossier a_4 (cost=0.43..42.54 rows=30 width=4) (actual time=0.006..0.006 rows=1 loops=3,641)

  • Output: a_4.no_gen_dossier
  • Index Cond: ((mut_dossier.dossier_id = a_4.dossier_id) AND (a_4.no_gen_dossier IS NOT NULL))
  • Filter: ((a_4.etat)::text = 'VALI'::text)
  • Buffers: shared hit=14550 read=45
54. 53.924 53.924 ↑ 5.0 1 221

Index Scan using d_g_in_pt_d_fk on iliade.part_dossier a1_part_dossier_affi (cost=0.43..13.63 rows=5 width=8) (actual time=0.242..0.244 rows=1 loops=221)

  • Output: a1_part_dossier_affi.part_dossier_id, a1_part_dossier_affi.dossier_gen_id, a1_part_dossier_affi.part_dossier_part_id, a1_part_dossier_affi.dossier_id, a1_part_dossier_affi.no_gen_dossier, a1_part_dossier_affi.role, a1_part_dossier_affi.usr_log_i, a1_part_dossier_affi.dte_log_i, a1_part_dossier_affi.usr_log_u, a1_part_dossier_affi.dte_log_u, a1_part_dossier_affi.audit
  • Index Cond: (a1_part_dossier_affi.dossier_gen_id = dossier_gen.dossier_gen_id)
  • Filter: ((a1_part_dossier_affi.role)::text = 'AFFI'::text)
  • Rows Removed by Filter: 1
  • Buffers: shared hit=812 read=80
55. 54.366 54.366 ↑ 1.0 1 221

Index Scan using p_part on iliade.part a1_part_affi (cost=0.42..2.16 rows=1 width=32) (actual time=0.246..0.246 rows=1 loops=221)

  • Output: a1_part_affi.part_id, a1_part_affi.type_part, a1_part_affi.nom_ou_raison_sociale, a1_part_affi.nom_complementaire, a1_part_affi.nom_alliance, a1_part_affi.prenom, a1_part_affi.dte_naissance, a1_part_affi.dte_deces, a1_part_affi.sexe, a1_part_affi.etat_civil, a1_part_affi.no_avs, a1_part_affi.langue_correspondance, a1_part_affi.usr_log_i, a1_part_affi.dte_log_i, a1_part_affi.usr_log_u, a1_part_affi.dte_log_u, a1_part_affi.audit, a1_part_affi.visa, a1_part_affi.numero_contact
  • Index Cond: (a1_part_affi.part_id = a1_part_dossier_affi.part_dossier_part_id)
  • Buffers: shared hit=786 read=98
56. 79.560 79.560 ↑ 37.5 2 221

Index Scan using p_pi_in_pag_fk on iliade.pa_gen (cost=0.57..357.34 rows=75 width=16) (actual time=0.329..0.360 rows=2 loops=221)

  • Output: pa_gen.pa_gen_id, pa_gen.assure_part_dossier_id, pa_gen.vco_id, pa_gen.plan_partie_id, pa_gen.pa_gen_orig_id, pa_gen.pa_gen_base_prest_id, pa_gen.pa_gen_base_coti_id, pa_gen.pa_gen_base_plan_base_prest_id, pa_gen.pa_gen_base_plan_base_coti_id, pa_gen.partie_dossier_id, pa_gen.dossier_id, pa_gen.no_gen_dossier, pa_gen.type_couv, pa_gen.etat, pa_gen.dte_effet, pa_gen.dte_echeance, pa_gen.dte_effet_pe, pa_gen.dte_effet_idx, pa_gen.dte_base_calc, pa_gen.dte_fin_differe, pa_gen.dte_deb_inca_gain, pa_gen.age_deb_inca_gain, pa_gen.delai_attente, pa_gen.capital_rte, pa_gen.doublement_rte_enfant, pa_gen.freq_paie_rte, pa_gen.sal, pa_gen.classe_risque, pa_gen.tx_prest_base, pa_gen.usr_log_i, pa_gen.dte_log_i, pa_gen.usr_log_u, pa_gen.dte_log_u, pa_gen.dte_derniere_idx_liee_avs, pa_gen.numero_ub_refact_base, pa_gen.numero_ub_refact_idx, pa_gen.audit, pa_gen.type_fina_avance_avs, pa_gen.prct_avance_avs, pa_gen.type_numerando, pa_gen.vco_precedente_id, pa_gen.delai_lib, pa_gen.categorie_empl_secteur_act_id
  • Index Cond: (pa_gen.plan_partie_id = plan_partie.plan_partie_id)
  • Filter: (((pa_gen.etat)::text = 'VAL'::text) AND ((pa_gen.type_couv)::text = ANY ('{RCCO,RCEI,RCOR,RCRE,RCVF,RCVV,RELE,RENR,RCON}'::text[])))
  • Rows Removed by Filter: 3
  • Buffers: shared hit=993 read=144
57. 416.394 1,223.140 ↑ 1.0 4,063 460

Hash Join (cost=37.15..205.86 rows=4,063 width=47) (actual time=0.010..2.659 rows=4,063 loops=460)

  • Output: vcouv.vco_id, couv.desc_courte, type_couv.desc_courte
  • Inner Unique: true
  • Hash Cond: ((couv.type_nat_type_couv)::text = (type_couv.type_nat_type_couv)::text)
  • Buffers: shared hit=48706 read=72
58. 582.391 805.920 ↑ 1.0 4,063 460

Hash Join (cost=34.71..192.06 rows=4,063 width=32) (actual time=0.007..1.752 rows=4,063 loops=460)

  • Output: vcouv.vco_id, couv.desc_courte, couv.type_nat_type_couv
  • Inner Unique: true
  • Hash Cond: (vcouv.cou_id = couv.cou_id)
  • Buffers: shared hit=48706 read=71
59. 221.720 221.720 ↑ 1.0 4,063 460

Seq Scan on produit.vcouv (cost=0.00..146.63 rows=4,063 width=8) (actual time=0.002..0.482 rows=4,063 loops=460)

  • Output: vcouv.vco_id, vcouv.cou_id, vcouv.vco_no_vari, vcouv.pec_id, vcouv.tde1x_nom_table, vcouv.tde1y_nom_table, vcouv.tde2x_nom_table, vcouv.tde2y_nom_table, vcouv.tin1x_nom_table, vcouv.tin1y_nom_table, vcouv.tin_p1x_nom_table, vcouv.tin_p1y_nom_table, vcouv.tma1x_nom_table, vcouv.tma1y_nom_table, vcouv.tca_d1x_nom_table, vcouv.tca_d1y_nom_table, vcouv.tca_i1x_nom_table, vcouv.tca_i1y_nom_table, vcouv.tcc_id, vcouv.dte_deb, vcouv.dte_fin, vcouv.tx_interet_tec, vcouv.alpha1, vcouv.alpha2, vcouv.alpha3, vcouv.beta, vcouv.gamma1, vcouv.gamma2, vcouv.sigma, vcouv.cste1, vcouv.cste2, vcouv.cste_pri_pure, vcouv.penalite_rachat, vcouv.maj_prest, vcouv.use_table_maj, vcouv.duree_red_paie_pri, vcouv.fo_vap, vcouv.fo_vas, vcouv.fo_alpha, vcouv.fo_age_a1_n_aff, vcouv.fo_age_a2_n_aff, vcouv.fo_age_couple_n_aff, vcouv.fo_age_a1_tran, vcouv.fo_age_a2_tran, vcouv.fo_age_couple_tran, vcouv.fo_age_a1_val, vcouv.fo_age_a2_val, vcouv.fo_age_couple_val, vcouv.fo_rachat, vcouv.fo_pri, vcouv.fo_duree_restit, vcouv.fo_interpol, vcouv.fo_deces, vcouv.fo_invalidite, vcouv.fo_echeance, vcouv.fo_prest_subord, vcouv.fo_reserve, vcouv.fo_som_risq_deces_int, vcouv.fo_som_risq_invalid_int, vcouv.fo_som_risq_deces_reass, vcouv.fo_som_risq_invalidite_reass, vcouv.fo_pe1, vcouv.fo_pe2, vcouv.fo_ajournement, vcouv.fo_fin_paiement, vcouv.fo_pri_pure, vcouv.usr_log_i, vcouv.dte_log_i, vcouv.usr_log_u, vcouv.dte_log_u, vcouv.fo_bonus_calcul, vcouv.fo_report_prime, vcouv.fo_report_prest, vcouv.fo_zillmer, vcouv.fo_alpha_zillmer, vcouv.cta_id, vcouv.fo_prestation_minimale, vcouv.fo_prestation_pe, vcouv.duree_garantie_differe, vcouv.age_terme_indexation, vcouv.type_calcul_indexation, vcouv.fo_age_terme_indexation, vcouv.fo_somme_risquee, vcouv.fo_va, vcouv.fo_rente_en_capital, vcouv.fo_prest_compretravan, vcouv.fo_capital_compretravan, vcouv.prest_a_facturer, vcouv.tarif_classe_risque, vcouv.type_var_cou, vcouv.vco_standard_id, vcouv.fo_val_residuelle, vcouv.fo_rachat_fiscal, vcouv.fo_capital_fin_differe, vcouv.fo_valeur_fonds_placement, vcouv.alpha4
  • Buffers: shared hit=48694 read=66
60. 0.225 1.809 ↑ 1.0 787 1

Hash (cost=24.87..24.87 rows=787 width=32) (actual time=1.809..1.809 rows=787 loops=1)

  • Output: couv.desc_courte, couv.cou_id, couv.type_nat_type_couv
  • Buckets: 1024 Batches: 1 Memory Usage: 60kB
  • Buffers: shared hit=12 read=5
61. 1.584 1.584 ↑ 1.0 787 1

Seq Scan on produit.couv (cost=0.00..24.87 rows=787 width=32) (actual time=0.011..1.584 rows=787 loops=1)

  • Output: couv.desc_courte, couv.cou_id, couv.type_nat_type_couv
  • Buffers: shared hit=12 read=5
62. 0.043 0.826 ↑ 1.0 64 1

Hash (cost=1.64..1.64 rows=64 width=23) (actual time=0.826..0.826 rows=64 loops=1)

  • Output: type_couv.desc_courte, type_couv.type_nat_type_couv
  • Buckets: 1024 Batches: 1 Memory Usage: 12kB
  • Buffers: shared read=1
63. 0.783 0.783 ↑ 1.0 64 1

Seq Scan on produit.type_couv (cost=0.00..1.64 rows=64 width=23) (actual time=0.775..0.783 rows=64 loops=1)

  • Output: type_couv.desc_courte, type_couv.type_nat_type_couv
  • Buffers: shared read=1
64. 165.140 165.140 ↑ 1.0 1 460

Index Scan using idx4fk_f_pag_in_pagprest on iliade.pa_gen_prest (cost=0.57..2.34 rows=1 width=22) (actual time=0.357..0.359 rows=1 loops=460)

  • Output: pa_gen_prest.pa_gen_prest_id, pa_gen_prest.pa_gen_id, pa_gen_prest.dossier_id, pa_gen_prest.no_gen_dossier, pa_gen_prest.corrections_manuelles, pa_gen_prest.prest_reglementaire, pa_gen_prest.prest_base, pa_gen_prest.supplement_lpp, pa_gen_prest.prest_tot, pa_gen_prest.avoir_31_12, pa_gen_prest.prest_projetee_avec_int, pa_gen_prest.prest_projetee_sans_int, pa_gen_prest.idx, pa_gen_prest.participation_excedents, pa_gen_prest.reduc_base, pa_gen_prest.reduc_supplement_lpp, pa_gen_prest.reduc_idx, pa_gen_prest.reduc_participation_excedents, pa_gen_prest.supplement_propres_coti, pa_gen_prest.prest_due, pa_gen_prest.prest_reversee_par_reass, pa_gen_prest.allocation_menage, pa_gen_prest.supplement_droits_acquis, pa_gen_prest.compens_retraite_avancee, pa_gen_prest.idx_employeur_fine_capi, pa_gen_prest.idx_employeur_fine_perio, pa_gen_prest.supplement_prest_sortie_gar, pa_gen_prest.reduc_allocation_menage, pa_gen_prest.reduc_idx_employeur_fine_capi, pa_gen_prest.reduc_idx_employeur_fine_perio, pa_gen_prest.reduc_supplement_droits_acquis, pa_gen_prest.usr_log_i, pa_gen_prest.dte_log_i, pa_gen_prest.usr_log_u, pa_gen_prest.dte_log_u, pa_gen_prest.audit, pa_gen_prest.complement_fine_employeur, pa_gen_prest.reduc_compl_fine_employeur, pa_gen_prest.reduc_compens_retraite_avancee, pa_gen_prest.prest_gar, pa_gen_prest.supplement_garanti, pa_gen_prest.reduc_supplement_garanti, pa_gen_prest.reduc_divorce, pa_gen_prest.compl_exc_libre_passage
  • Index Cond: (pa_gen_prest.pa_gen_id = pa_gen.pa_gen_id)
  • Buffers: shared hit=2134 read=170
65. 23.920 23.920 ↑ 1.0 1 460

Index Scan using p_part_dossier on iliade.part_dossier a1_part_dossier_assure (cost=0.43..2.18 rows=1 width=13) (actual time=0.052..0.052 rows=1 loops=460)

  • Output: a1_part_dossier_assure.part_dossier_id, a1_part_dossier_assure.dossier_gen_id, a1_part_dossier_assure.part_dossier_part_id, a1_part_dossier_assure.dossier_id, a1_part_dossier_assure.no_gen_dossier, a1_part_dossier_assure.role, a1_part_dossier_assure.usr_log_i, a1_part_dossier_assure.dte_log_i, a1_part_dossier_assure.usr_log_u, a1_part_dossier_assure.dte_log_u, a1_part_dossier_assure.audit
  • Index Cond: (a1_part_dossier_assure.part_dossier_id = pa_gen.assure_part_dossier_id)
  • Buffers: shared hit=1805 read=37
66. 8.740 8.740 ↑ 1.0 1 460

Index Scan using c_g_in_pt_c_fk on iliade.part_contrat a1_part_contrat_employeur (cost=0.42..2.25 rows=1 width=8) (actual time=0.012..0.019 rows=1 loops=460)

  • Output: a1_part_contrat_employeur.part_contrat_id, a1_part_contrat_employeur.contrat_gen_id, a1_part_contrat_employeur.part_id, a1_part_contrat_employeur.contrat_id, a1_part_contrat_employeur.no_gen_contrat, a1_part_contrat_employeur.role, a1_part_contrat_employeur.usr_log_i, a1_part_contrat_employeur.dte_log_i, a1_part_contrat_employeur.usr_log_u, a1_part_contrat_employeur.dte_log_u, a1_part_contrat_employeur.audit, a1_part_contrat_employeur.adresse_facturation_id, a1_part_contrat_employeur.region, a1_part_contrat_employeur.type_aprt_aff, a1_part_contrat_employeur.type_intmd_ext, a1_part_contrat_employeur.type_intmd_intn
  • Index Cond: (a1_part_contrat_employeur.contrat_gen_id = contrat_gen.contrat_gen_id)
  • Filter: ((a1_part_contrat_employeur.role)::text = 'EMPL'::text)
  • Rows Removed by Filter: 5
  • Buffers: shared hit=1839 read=1
67. 4.600 4.600 ↑ 1.0 1 460

Index Scan using p_part on iliade.part a1_part_employeur (cost=0.42..2.17 rows=1 width=13) (actual time=0.010..0.010 rows=1 loops=460)

  • Output: a1_part_employeur.part_id, a1_part_employeur.type_part, a1_part_employeur.nom_ou_raison_sociale, a1_part_employeur.nom_complementaire, a1_part_employeur.nom_alliance, a1_part_employeur.prenom, a1_part_employeur.dte_naissance, a1_part_employeur.dte_deces, a1_part_employeur.sexe, a1_part_employeur.etat_civil, a1_part_employeur.no_avs, a1_part_employeur.langue_correspondance, a1_part_employeur.usr_log_i, a1_part_employeur.dte_log_i, a1_part_employeur.usr_log_u, a1_part_employeur.dte_log_u, a1_part_employeur.audit, a1_part_employeur.visa, a1_part_employeur.numero_contact
  • Index Cond: (a1_part_employeur.part_id = a1_part_contrat_employeur.part_id)
  • Buffers: shared hit=1839 read=1
68. 15,324.440 15,324.440 ↓ 1.5 97,029 460

Seq Scan on hermes.objet_payable (cost=0.00..4,892.35 rows=64,851 width=8) (actual time=0.004..33.314 rows=97,029 loops=460)

  • Output: objet_payable.id, objet_payable.interface_objet_payable_id, objet_payable.numero_metier, objet_payable.metier_id, objet_payable.contrat_id, objet_payable.societe_id, objet_payable.famille_id, objet_payable.produit_id, objet_payable.application, objet_payable.type_objet_payable, objet_payable.confidentiel, objet_payable.personnel_rp, objet_payable.etat, objet_payable.date_blocage, objet_payable.date_dernier_bouclement, objet_payable.usr_log_i, objet_payable.dte_log_i, objet_payable.usr_log_u, objet_payable.dte_log_u, objet_payable.audit, objet_payable.version, objet_payable.numero_contrat, objet_payable.date_migration, objet_payable.numero_contact
  • Filter: (((objet_payable.application)::text = 'PLR2'::text) AND ((objet_payable.type_objet_payable)::text = 'DOSS'::text))
  • Rows Removed by Filter: 48261
  • Buffers: shared hit=1247980
69. 485.780 485.780 ↑ 1.1 86 454

Index Scan using idx4fk_f_objpay_in_mntap on hermes.montant_a_payer (cost=0.43..81.24 rows=98 width=16) (actual time=0.146..1.070 rows=86 loops=454)

  • Output: montant_a_payer.id, montant_a_payer.prestation_a_payer_id, montant_a_payer.informations_paiement_interne_id, montant_a_payer.interface_montant_a_payer_id, montant_a_payer.facture_id, montant_a_payer.groupe_factures_id, montant_a_payer.objet_payable_id, montant_a_payer.periode_gestion_id, montant_a_payer.paiement_id, montant_a_payer.beneficiaire_id, montant_a_payer.adresse_paiement_id, montant_a_payer.adresse_paiement_generation_id, montant_a_payer.devise, montant_a_payer.nature, montant_a_payer.type_paiement_particulier, montant_a_payer.montant, montant_a_payer.date_echeance_paiement, montant_a_payer.date_prevue_paiement, montant_a_payer.date_effective_paiement, montant_a_payer.communication_1, montant_a_payer.communication_2, montant_a_payer.communication_3, montant_a_payer.communication_4, montant_a_payer.mode_paiement_interne, montant_a_payer.ligne_codage_bvr, montant_a_payer.numero_reference_bvr, montant_a_payer.numero_adherent_bvr, montant_a_payer.reference_facture, montant_a_payer.secteur, montant_a_payer.deja_paye_hors_paiement, montant_a_payer.deja_comptabilise_hors_paiement, montant_a_payer.etat, montant_a_payer.type_extourne, montant_a_payer.type_calcul_effectue, montant_a_payer.montant_frais_retour, montant_a_payer.visa_mise_a_valider, montant_a_payer.date_mise_a_valider, montant_a_payer.visa_validation, montant_a_payer.date_validation, montant_a_payer.usr_log_i, montant_a_payer.dte_log_i, montant_a_payer.usr_log_u, montant_a_payer.dte_log_u, montant_a_payer.audit, montant_a_payer.version, montant_a_payer.montant_interets, montant_a_payer.nature_interets, montant_a_payer.periode_gestion_bouclement_id, montant_a_payer.nature_bouclement, montant_a_payer.numero_encaissement
  • Index Cond: (montant_a_payer.objet_payable_id = objet_payable.id)
  • Buffers: shared hit=11050 read=1381
70. 38.630 104.931 ↑ 1.0 110,153 1

Hash (cost=4,405.53..4,405.53 rows=110,153 width=62) (actual time=104.931..104.931 rows=110,153 loops=1)

  • Output: paiement.numero, paiement.numero_compte, paiement.numero_swift, paiement.numero_compte_postal, paiement.numero_iban, paiement.generation, paiement.statut
  • Buckets: 131072 Batches: 1 Memory Usage: 9670kB
  • Buffers: shared hit=118 read=3186
71. 66.301 66.301 ↑ 1.0 110,153 1

Seq Scan on partner.paiement (cost=0.00..4,405.53 rows=110,153 width=62) (actual time=0.826..66.301 rows=110,153 loops=1)

  • Output: paiement.numero, paiement.numero_compte, paiement.numero_swift, paiement.numero_compte_postal, paiement.numero_iban, paiement.generation, paiement.statut
  • Buffers: shared hit=118 read=3186
72. 78.158 78.158 ↑ 1.0 1 39,079

Index Scan using p_part on iliade.part a1_part_assure (cost=0.42..2.16 rows=1 width=30) (actual time=0.002..0.002 rows=1 loops=39,079)

  • Output: a1_part_assure.part_id, a1_part_assure.type_part, a1_part_assure.nom_ou_raison_sociale, a1_part_assure.nom_complementaire, a1_part_assure.nom_alliance, a1_part_assure.prenom, a1_part_assure.dte_naissance, a1_part_assure.dte_deces, a1_part_assure.sexe, a1_part_assure.etat_civil, a1_part_assure.no_avs, a1_part_assure.langue_correspondance, a1_part_assure.usr_log_i, a1_part_assure.dte_log_i, a1_part_assure.usr_log_u, a1_part_assure.dte_log_u, a1_part_assure.audit, a1_part_assure.visa, a1_part_assure.numero_contact
  • Index Cond: (a1_part_assure.part_id = a1_part_dossier_assure.part_dossier_part_id)
  • Buffers: shared hit=156282 read=34
73. 193.879 273.553 ↑ 1.0 1 39,079

Index Scan using adresse_formatee_numero_contact_idx on partner.adresse_formatee a1_adresses_assu (cost=0.42..4.83 rows=1 width=73) (actual time=0.007..0.007 rows=1 loops=39,079)

  • Output: a1_adresses_assu.id, a1_adresses_assu.type_adresse, a1_adresses_assu.adresse_inconnue, a1_adresses_assu.code_canton_etat, a1_adresses_assu.code_iso2_pays, a1_adresses_assu.code_postal, a1_adresses_assu.indice_numero_rue, a1_adresses_assu.langue, a1_adresses_assu.ligne_01, a1_adresses_assu.ligne_02, a1_adresses_assu.ligne_03, a1_adresses_assu.ligne_04, a1_adresses_assu.ligne_05, a1_adresses_assu.ligne_06, a1_adresses_assu.ligne_07, a1_adresses_assu.ligne_08, a1_adresses_assu.ligne_09, a1_adresses_assu.ligne_10, a1_adresses_assu.nom_commune, a1_adresses_assu.nom_district, a1_adresses_assu.nom_localite, a1_adresses_assu.npa_loc_formatee, a1_adresses_assu.numero_rue, a1_adresses_assu.rue, a1_adresses_assu.rue_formatee, a1_adresses_assu.sexe_complement_destinataire, a1_adresses_assu.pas_bella_vita, a1_adresses_assu.pas_correspondance, a1_adresses_assu.version, a1_adresses_assu.usr_log_i, a1_adresses_assu.dte_log_i, a1_adresses_assu.usr_log_u, a1_adresses_assu.dte_log_u, a1_adresses_assu.numero_contact
  • Index Cond: (a1_adresses_assu.numero_contact = a1_part_assure.numero_contact)
  • Filter: (CASE WHEN ((a1_adresses_assu.type_adresse)::text = 'BASE'::text) THEN 0 WHEN ((a1_adresses_assu.type_adresse)::text = 'VIE_COLLECTIVE'::text) THEN 1 ELSE NULL::integer END = (SubPlan 7))
  • Rows Removed by Filter: 0
  • Buffers: shared hit=317170 read=174
74.          

SubPlan (for Index Scan)

75. 0.000 79.674 ↑ 1.0 1 39,837

Aggregate (cost=2.65..2.66 rows=1 width=4) (actual time=0.002..0.002 rows=1 loops=39,837)

  • Output: max(CASE WHEN ((b.type_adresse)::text = 'BASE'::text) THEN 0 WHEN ((b.type_adresse)::text = 'VIE_COLLECTIVE'::text) THEN 1 ELSE NULL::integer END)
  • Buffers: shared hit=160441 read=3
76. 79.674 79.674 ↑ 1.0 1 39,837

Index Scan using adresse_formatee_numero_contact_idx on partner.adresse_formatee b (cost=0.42..2.64 rows=1 width=5) (actual time=0.001..0.002 rows=1 loops=39,837)

  • Output: b.id, b.type_adresse, b.adresse_inconnue, b.code_canton_etat, b.code_iso2_pays, b.code_postal, b.indice_numero_rue, b.langue, b.ligne_01, b.ligne_02, b.ligne_03, b.ligne_04, b.ligne_05, b.ligne_06, b.ligne_07, b.ligne_08, b.ligne_09, b.ligne_10, b.nom_commune, b.nom_district, b.nom_localite, b.npa_loc_formatee, b.numero_rue, b.rue, b.rue_formatee, b.sexe_complement_destinataire, b.pas_bella_vita, b.pas_correspondance, b.version, b.usr_log_i, b.dte_log_i, b.usr_log_u, b.dte_log_u, b.numero_contact
  • Index Cond: (a1_adresses_assu.numero_contact = b.numero_contact)
  • Buffers: shared hit=160441 read=3
77.          

SubPlan (for Nested Loop)

78. 195.395 195.395 ↑ 1.0 1 39,079

Index Scan using idx_code_texte_code_cle_code_type on produit.code_texte a (cost=0.28..2.50 rows=1 width=15) (actual time=0.005..0.005 rows=1 loops=39,079)

  • Output: a.texte
  • Index Cond: (((mut_dossier.statut)::text = (a.code_cle)::text) AND ((a.code_type)::text = 'TypeStatutDossier'::text))
  • Filter: ((a.codet_langue)::text = 'FR'::text)
  • Buffers: shared hit=117234 read=3
79. 156.316 156.316 ↑ 1.0 1 39,079

Index Scan using idx_code_texte_code_cle_code_type on produit.code_texte a_1 (cost=0.28..2.50 rows=1 width=15) (actual time=0.004..0.004 rows=1 loops=39,079)

  • Output: a_1.texte
  • Index Cond: (((a_1.code_cle)::text = (partie_dossier.type_partie)::text) AND ((a_1.code_type)::text = 'TypePartieDossier'::text))
  • Filter: ((a_1.codet_langue)::text = 'FR'::text)
  • Buffers: shared hit=117236 read=1
80. 156.316 156.316 ↑ 1.0 1 39,079

Index Scan using idx_code_texte_code_cle_code_type on produit.code_texte a_2 (cost=0.28..2.50 rows=1 width=15) (actual time=0.004..0.004 rows=1 loops=39,079)

  • Output: a_2.texte
  • Index Cond: (((a1_part_affi.sexe)::text = (a_2.code_cle)::text) AND ((a_2.code_type)::text = 'TypeSexe'::text))
  • Filter: ((a_2.codet_langue)::text = 'FR'::text)
  • Buffers: shared hit=117234 read=3
81. 156.316 156.316 ↑ 1.0 1 39,079

Index Scan using idx_code_texte_code_cle_code_type on produit.code_texte a_3 (cost=0.28..2.50 rows=1 width=15) (actual time=0.003..0.004 rows=1 loops=39,079)

  • Output: a_3.texte
  • Index Cond: (((a_3.code_cle)::text = (a1_part_affi.etat_civil)::text) AND ((a_3.code_type)::text = 'TypeEtatCivil'::text))
  • Filter: ((a_3.codet_langue)::text = 'FR'::text)
  • Buffers: shared hit=112944 read=3
Planning time : 334.494 ms
Execution time : 29,940.677 ms