Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-Minion for openSUSE:Factory 
checked in at 2023-12-09 22:54:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Minion (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Minion.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Minion"

Sat Dec  9 22:54:04 2023 rev:74 rq:1132233 version:10.280.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Minion/perl-Minion.changes  2023-11-16 
20:31:39.527220985 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Minion.new.25432/perl-Minion.changes       
2023-12-09 22:57:46.197561754 +0100
@@ -1,0 +2,12 @@
+Wed Nov 29 03:07:48 UTC 2023 - Tina Müller <[email protected]>
+
+- updated to 10.28
+   see /usr/share/doc/packages/perl-Minion/Changes
+
+  10.28  2023-11-217
+    - Improved repair and history performance in most cases.
+
+  10.27  2023-11-20
+    - Improved repair performance in cases where there are a lot of finished 
jobs with dependencies.
+
+-------------------------------------------------------------------

Old:
----
  Minion-10.26.tar.gz

New:
----
  Minion-10.28.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-Minion.spec ++++++
--- /var/tmp/diff_new_pack.6zEffJ/_old  2023-12-09 22:57:46.665578929 +0100
+++ /var/tmp/diff_new_pack.6zEffJ/_new  2023-12-09 22:57:46.665578929 +0100
@@ -18,9 +18,9 @@
 
 %define cpan_name Minion
 Name:           perl-Minion
-Version:        10.260.0
+Version:        10.280.0
 Release:        0
-%define cpan_version 10.26
+%define cpan_version 10.28
 License:        Artistic-2.0
 Summary:        Job queue
 URL:            https://metacpan.org/release/%{cpan_name}
@@ -33,7 +33,7 @@
 BuildRequires:  perl(YAML::XS) >= 0.67
 Requires:       perl(Mojolicious) >= 9.0
 Requires:       perl(YAML::XS) >= 0.67
-Provides:       perl(Minion) = 10.260.0
+Provides:       perl(Minion) = %{version}
 Provides:       perl(Minion::Backend)
 Provides:       perl(Minion::Backend::Pg)
 Provides:       perl(Minion::Command::minion)

++++++ Minion-10.26.tar.gz -> Minion-10.28.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Minion-10.26/Changes new/Minion-10.28/Changes
--- old/Minion-10.26/Changes    2023-11-10 15:50:50.000000000 +0100
+++ new/Minion-10.28/Changes    2023-11-27 19:41:07.000000000 +0100
@@ -1,4 +1,10 @@
 
+10.28  2023-11-217
+  - Improved repair and history performance in most cases.
+
+10.27  2023-11-20
+  - Improved repair performance in cases where there are a lot of finished 
jobs with dependencies.
+
 10.26  2023-11-10
   - Added type information to worker status.
   - Improved workers by calling srand() after starting a new job process.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Minion-10.26/META.json new/Minion-10.28/META.json
--- old/Minion-10.26/META.json  2023-11-10 15:53:06.000000000 +0100
+++ new/Minion-10.28/META.json  2023-11-28 12:05:02.000000000 +0100
@@ -58,6 +58,6 @@
          "web" : "https://web.libera.chat/#mojo";
       }
    },
-   "version" : "10.26",
+   "version" : "10.28",
    "x_serialization_backend" : "JSON::PP version 4.07"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Minion-10.26/META.yml new/Minion-10.28/META.yml
--- old/Minion-10.26/META.yml   2023-11-10 15:53:06.000000000 +0100
+++ new/Minion-10.28/META.yml   2023-11-28 12:05:02.000000000 +0100
@@ -30,5 +30,5 @@
   homepage: https://mojolicious.org
   license: http://www.opensource.org/licenses/artistic-license-2.0
   repository: https://github.com/mojolicious/minion.git
-version: '10.26'
+version: '10.28'
 x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Minion-10.26/lib/Minion/Backend/Pg.pm 
new/Minion-10.28/lib/Minion/Backend/Pg.pm
--- old/Minion-10.26/lib/Minion/Backend/Pg.pm   2022-07-21 01:39:53.000000000 
+0200
+++ new/Minion-10.28/lib/Minion/Backend/Pg.pm   2023-11-27 17:49:09.000000000 
+0100
@@ -178,16 +178,12 @@
   my $minion = $self->minion;
   $db->query("DELETE FROM minion_workers WHERE notified < NOW() - INTERVAL '1 
second' * ?", $minion->missing_after);
 
-  # Old jobs with no unresolved dependencies and expired jobs
-  $db->query(
-    "DELETE FROM minion_jobs WHERE id IN (
-       SELECT j.id FROM minion_jobs AS j LEFT JOIN minion_jobs AS children
-         ON children.state != 'finished' AND ARRAY_LENGTH(children.parents, 1) 
> 0 AND j.id = ANY(children.parents)
-       WHERE j.state = 'finished' AND j.finished <= NOW() - INTERVAL '1 
second' * ? AND children.id IS NULL
-       UNION ALL
-       SELECT id FROM minion_jobs WHERE state = 'inactive' AND expires <= NOW()
-    )", $minion->remove_after
-  );
+  # Old jobs
+  $db->query("DELETE FROM minion_jobs WHERE state = 'finished' AND finished <= 
NOW() - INTERVAL '1 second' * ?",
+    $minion->remove_after);
+
+  # Expired jobs
+  $db->query("DELETE FROM minion_jobs WHERE state = 'inactive' AND expires <= 
NOW()");
 
   # Jobs with missing worker (can be retried)
   $db->query(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Minion-10.26/lib/Minion/Backend/resources/migrations/pg.sql 
new/Minion-10.28/lib/Minion/Backend/resources/migrations/pg.sql
--- old/Minion-10.26/lib/Minion/Backend/resources/migrations/pg.sql     
2022-02-23 18:51:44.000000000 +0100
+++ new/Minion-10.28/lib/Minion/Backend/resources/migrations/pg.sql     
2023-11-27 19:37:00.000000000 +0100
@@ -92,3 +92,6 @@
 
 -- 23 up
 ALTER TABLE minion_jobs ADD COLUMN lax BOOL NOT NULL DEFAULT FALSE;
+
+-- 24 up
+CREATE INDEX ON minion_jobs (finished, state);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Minion-10.26/lib/Minion.pm 
new/Minion-10.28/lib/Minion.pm
--- old/Minion-10.26/lib/Minion.pm      2023-02-04 01:47:41.000000000 +0100
+++ new/Minion-10.28/lib/Minion.pm      2023-11-20 15:55:38.000000000 +0100
@@ -21,7 +21,7 @@
 has [qw(remove_after stuck_after)] => 172800;
 has tasks                          => sub { {} };
 
-our $VERSION = '10.26';
+our $VERSION = '10.28';
 
 sub add_task {
   my ($self, $name, $task) = @_;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Minion-10.26/t/pg.t new/Minion-10.28/t/pg.t
--- old/Minion-10.26/t/pg.t     2022-07-21 01:39:54.000000000 +0200
+++ new/Minion-10.28/t/pg.t     2023-11-27 19:37:28.000000000 +0100
@@ -29,9 +29,9 @@
 };
 
 subtest 'Migrate up and down' => sub {
-  is $minion->backend->pg->migrations->active,             23, 'active version 
is 23';
+  is $minion->backend->pg->migrations->active,             24, 'active version 
is 24';
   is $minion->backend->pg->migrations->migrate(0)->active, 0,  'active version 
is 0';
-  is $minion->backend->pg->migrations->migrate->active,    23, 'active version 
is 23';
+  is $minion->backend->pg->migrations->migrate->active,    24, 'active version 
is 24';
 };
 
 subtest 'Register and unregister' => sub {
@@ -1116,9 +1116,9 @@
   is_deeply $job->info->{children}, [],          'right children';
   is_deeply $job->info->{parents},  [$id, $id2], 'right parents';
   is $minion->stats->{finished_jobs},         2, 'two finished jobs';
-  is $minion->repair->stats->{finished_jobs}, 2, 'two finished jobs';
+  is $minion->repair->stats->{finished_jobs}, 0, 'no finished jobs';
   ok $job->finish, 'job finished';
-  is $minion->stats->{finished_jobs},                               3, 'three 
finished jobs';
+  is $minion->stats->{finished_jobs},                               1, 'one 
finished job';
   is $minion->repair->remove_after(172800)->stats->{finished_jobs}, 0, 'no 
finished jobs';
   $id = $minion->enqueue(test => [] => {parents => [-1]});
   ok $job = $worker->dequeue(0), 'job dequeued';

Reply via email to