Bugzilla – Attachment 74143 Details for
Bug 18725
process_message_queue.pl sends duplicate emails if message_queue is not writable
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 18725: (QA Follow-up) Use make_column_dirty instead of status change
Bug-18725-QA-Follow-up-Use-makecolumndirty-instead.patch (text/plain), 3.33 KB, created by
Marcel de Rooy
on 2018-04-13 07:50:18 UTC
(
hide
)
Description:
Bug 18725: (QA Follow-up) Use make_column_dirty instead of status change
Filename:
MIME Type:
Creator:
Marcel de Rooy
Created:
2018-04-13 07:50:18 UTC
Size:
3.33 KB
patch
obsolete
>From ffb447293f482dc1e589214c5f63d15e8ebee7b1 Mon Sep 17 00:00:00 2001 >From: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> >Date: Fri, 13 Apr 2018 09:38:50 +0200 >Subject: [PATCH] Bug 18725: (QA Follow-up) Use make_column_dirty instead of > status change >Content-Type: text/plain; charset=utf-8 > >Moving the status to the invalid 'processing' might well have unwanted >side-effects. (The status column will be set to empty string and we have >a problem if it is not processed.) > >This patch allows pass-through of DBIX's make_column_dirty in >Koha::Object (simple tests included) and uses it to force an update. >If the update does not return true, it still exits. > >Test plan: >[1] Read the changes. >[2] Run t/db_dependent/Koha/Object.t > >Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> >--- > C4/Letters.pm | 4 ++-- > Koha/Object.pm | 2 +- > t/db_dependent/Koha/Object.t | 13 +++++++++++-- > 3 files changed, 14 insertions(+), 5 deletions(-) > >diff --git a/C4/Letters.pm b/C4/Letters.pm >index 59b7a25..40cd364 100644 >--- a/C4/Letters.pm >+++ b/C4/Letters.pm >@@ -1065,9 +1065,9 @@ sub SendQueuedMessages { > my $unsent_messages = _get_unsent_messages( $which_unsent_messages ); > MESSAGE: foreach my $message ( @$unsent_messages ) { > my $message_object = Koha::Notice::Messages->find( $message->{message_id} ); >- $message_object->status('processing'); > # If this fails the database is unwritable and we won't manage to send a message that continues to be marked 'pending' >- return unless $message_object->store(); >+ $message_object->make_column_dirty('status'); >+ return unless $message_object->store; > > # warn Data::Dumper->Dump( [ $message ], [ 'message' ] ); > warn sprintf( 'sending %s message to patron: %s', >diff --git a/Koha/Object.pm b/Koha/Object.pm >index 00e0c24..1f54273 100644 >--- a/Koha/Object.pm >+++ b/Koha/Object.pm >@@ -390,7 +390,7 @@ sub AUTOLOAD { > } > } > >- my @known_methods = qw( is_changed id in_storage get_column discard_changes update related_resultset ); >+ my @known_methods = qw( is_changed id in_storage get_column discard_changes update related_resultset make_column_dirty ); > > Koha::Exceptions::Object::MethodNotCoveredByTests->throw( "The method $method is not covered by tests!" ) unless grep {/^$method$/} @known_methods; > >diff --git a/t/db_dependent/Koha/Object.t b/t/db_dependent/Koha/Object.t >index 125394c..a0c72e4 100755 >--- a/t/db_dependent/Koha/Object.t >+++ b/t/db_dependent/Koha/Object.t >@@ -43,8 +43,8 @@ BEGIN { > my $schema = Koha::Database->new->schema; > my $builder = t::lib::TestBuilder->new(); > >-subtest 'is_changed' => sub { >- plan tests => 6; >+subtest 'is_changed / make_column_dirty' => sub { >+ plan tests => 9; > > $schema->storage->txn_begin; > >@@ -70,6 +70,15 @@ subtest 'is_changed' => sub { > $object->store(); > is( $object->is_changed(), 0, "Object no longer marked as changed after being stored" ); > >+ # Test make_column_dirty >+ $object->make_column_dirty('firstname'); >+ is( $object->is_changed, 1, "Object is changed after make dirty" ); >+ $object->store; >+ is( $object->is_changed, 0, "Store clears dirty mark" ); >+ $object->make_column_dirty('firstname'); >+ $object->discard_changes; >+ is( $object->is_changed, 0, "Discard clears dirty mark too" ); >+ > $schema->storage->txn_rollback; > }; > >-- >2.1.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 18725
:
64803
|
65625
|
68602
|
68603
|
70805
|
70826
|
70853
|
70876
|
73277
|
73278
|
73749
|
73750
|
73751
| 74143 |
74247