Skip to content
Snippets Groups Projects
  1. Mar 05, 2024
  2. Feb 12, 2024
    • Sam Word's avatar
      Replaced project export pruning with service · 3f1612d2
      Sam Word authored
      Created a new service to handle pruning old ProjectExportService and
      its associations efficiently. Specifically, upload files need and
      be handled and pruned as well. Before, only associated records were
      deleted via an ON DELETE CASCADE clause on their postgres tables.
      Verified
      3f1612d2
  3. Dec 06, 2022
    • Carla Drago's avatar
      Add worker to prune old export jobs · 5e2c78ec
      Carla Drago authored and Alex Ives's avatar Alex Ives committed
      This change adds a worker to prune ProjectExportJob
      records that are older than 7 days. This will
      ensure the project_export_jobs DB table remains
      a reasonable size. It currently contains millions
      of rows.
      
      Changelog: performance
      5e2c78ec
  4. Jun 30, 2022
    • Rodrigo Tomonari's avatar
      Add project export relations models to Import/Export · f6eff4b8
      Rodrigo Tomonari authored and Pavel Shutsin's avatar Pavel Shutsin committed
      In order to parallelize the project export in Import/Export, two new
      are being added to Import/Export to track and store the partial
      export files.
      
      The table `project_export_relations` will hold the status of the
      relation exportation. And the table `project_export_relation_uploads`
      will store the location of the exported file.
      
      Changelog: added
      f6eff4b8
  5. Jun 23, 2020
  6. Mar 12, 2020
    • Aishwarya Subramanian's avatar
      Fix logic used to determine project export status · a309861a
      Aishwarya Subramanian authored and Stan Hu's avatar Stan Hu committed
      Currently, lock files are used to determine the state of a
      project export. However, the lock files are not stored in a shared
      volume, causing the export states to be reported incorrectly.
      
      In order to fix this, we now store the export states in database
      as a more reliable mechanism. The table used is project_export_jobs.
      It stores the project_id, job_id and the current state.
      
      In addition to existing states, also added are two new states
      queued and regeneration_in_progress states. They are used to indicate
      a job that's waiting to be started and the case when a project export
      operation has been requested to be re-generated.
      
      Failed jobs are re-tried 3 times, after which the state is updated
      to failed.
      
      To account for jobs that get stuck, a cron job runs every hour
      to set the stuck jobs to failed state.
      
      Closes #32203
      a309861a
Loading