Bug 33838 - Offline circulation interface error on return
Summary: Offline circulation interface error on return
Status: RESOLVED FIXED
Alias: None
Product: Koha
Classification: Unclassified
Component: Circulation (show other bugs)
Version: Main
Hardware: All All
: P5 - low normal (vote)
Assignee: Kyle M Hall
QA Contact: Katrin Fischer
URL:
Keywords:
Depends on:
Blocks: 17506
  Show dependency treegraph
 
Reported: 2023-05-25 15:57 UTC by Andrew Fuerste-Henry
Modified: 2023-12-28 20:47 UTC (History)
3 users (show)

See Also:
Change sponsored?: ---
Patch complexity: Trivial patch
Documentation contact:
Documentation submission:
Text to go in the release notes:
Version(s) released in:
23.05.00,22.11.07


Attachments
check in item 3999900000001 (99 bytes, text/plain)
2023-05-25 15:57 UTC, Andrew Fuerste-Henry
Details
Bug 33838: Don't reset the renewal count (803 bytes, patch)
2023-05-25 17:02 UTC, Kyle M Hall
Details | Diff | Splinter Review
Bug 33838: Don't reset the renewal count (1.41 KB, patch)
2023-05-25 17:17 UTC, Kyle M Hall
Details | Diff | Splinter Review
Bug 33838: Don't reset the renewal count (1.47 KB, patch)
2023-05-25 17:53 UTC, Andrew Fuerste-Henry
Details | Diff | Splinter Review
Bug 33838: Don't reset the renewal count (1.53 KB, patch)
2023-05-29 18:11 UTC, Katrin Fischer
Details | Diff | Splinter Review
Bug 33838: Don't reset the renewal count (1.86 KB, patch)
2023-05-30 11:27 UTC, Tomás Cohen Arazi
Details | Diff | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Fuerste-Henry 2023-05-25 15:57:41 UTC
Created attachment 151700 [details]
check in item 3999900000001

The offline circ tool is behaving oddly when processing a return. The attached KOC file is just a return of barcode 3999900000001. To see the error:

1 - check item 3999900000001 out to a patron
2 - upload the attached KOC file
3 - navigate the Pending Offline Circ actions, see your return is listed
4 - click the checkbox to select your return
5 - click Process once. Nothing appears to happen
6 - in a new tab, pull up the bib for item 3999900000001, see that it has been checked in
7 - back on your Offline Circ tab, click Process a second time
8 - Koha tells you the item is not checked out
Comment 1 Kyle M Hall 2023-05-25 16:36:11 UTC
==> /var/log/koha/kohadev/plack-error.log <==
The method Koha::Item->renewals_count is not covered by tests!

Trace begun at /kohadevbox/koha/Koha/Object.pm line 925
Koha::Object::AUTOLOAD('Koha::Item=HASH(0x55e8cd9673b8)', 0) called at /kohadevbox/koha/C4/Circulation.pm line 4082
C4::Circulation::ProcessOfflineReturn('HASH(0x55e8cd676940)') called at /kohadevbox/koha/C4/Circulation.pm line 4054
C4::Circulation::ProcessOfflineOperation('HASH(0x55e8cd676940)') called at /kohadevbox/koha/offline_circ/process.pl line 42
eval {...} at /kohadevbox/koha/offline_circ/process.pl line 2
CGI::Compile::ROOT::kohadevbox_koha_offline_circ_process_2epl::__ANON__('CGI::Compile=HASH(0x55e8cda1f970)', '', '/kohadevbox/koha/offline_circ/process.pl', '/kohadevbox/koha/offline_circ', 'ARRAY(0x55e8cd836188)') called at /usr/share/perl5/CGI/Compile.pm line 151
CGI::Compile::ROOT::kohadevbox_koha_offline_circ_process_2epl::process_2epl at /usr/share/perl5/CGI/Emulate/PSGI.pm line 30
CGI::Emulate::PSGI::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/App/WrapCGI.pm line 95
Plack::App::WrapCGI::call('Plack::App::WrapCGI=HASH(0x55e8cd79c308)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/App/CGIBin.pm line 50
Plack::App::CGIBin::serve_path('Plack::App::CGIBin=HASH(0x55e8c368b7f0)', 'HASH(0x55e8ce1266c8)', '/kohadevbox/koha/offline_circ/process.pl') called at /usr/share/perl5/Plack/App/File.pm line 34
Plack::App::File::call('Plack::App::CGIBin=HASH(0x55e8c368b7f0)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Middleware/LogWarn.pm line 22
Plack::Middleware::LogWarn::call('Plack::Middleware::LogWarn=HASH(0x55e8cd778bc0)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Middleware/Log4perl.pm line 30
Plack::Middleware::Log4perl::call('Plack::Middleware::Log4perl=HASH(0x55e8cd778ff8)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Middleware/HTTPExceptions.pm line 20
Plack::Middleware::HTTPExceptions::try {...}  at /usr/share/perl5/Try/Tiny.pm line 100
eval {...} at /usr/share/perl5/Try/Tiny.pm line 93
Try::Tiny::try('CODE(0x55e8cda1c718)', 'Try::Tiny::Catch=REF(0x55e8cda986f0)') called at /usr/share/perl5/Plack/Middleware/HTTPExceptions.pm line 23
Plack::Middleware::HTTPExceptions::call('Plack::Middleware::HTTPExceptions=HASH(0x55e8cd778d58)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Middleware/ErrorDocument.pm line 15
Plack::Middleware::ErrorDocument::call('Plack::Middleware::ErrorDocument=HASH(0x55e8cd768138)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/App/URLMap.pm line 71
Plack::App::URLMap::call('Plack::App::URLMap=HASH(0x55e8cc324538)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /kohadevbox/koha/Koha/Middleware/RealIP.pm line 64
Koha::Middleware::RealIP::call('Koha::Middleware::RealIP=HASH(0x55e8cd7678f8)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /kohadevbox/koha/Koha/Middleware/SetEnv.pm line 105
Koha::Middleware::SetEnv::call('Koha::Middleware::SetEnv=HASH(0x55e8cda15358)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Middleware/Static.pm line 18
Plack::Middleware::Static::call('Plack::Middleware::Static=HASH(0x55e8cd7681c8)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Middleware/ReverseProxy.pm line 68
Plack::Middleware::ReverseProxy::call('Plack::Middleware::ReverseProxy=HASH(0x55e8cd768270)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Middleware/Lint.pm line 24
Plack::Middleware::Lint::call('Plack::Middleware::Lint=HASH(0x55e8c368b5c8)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Middleware/StackTrace.pm line 38
Plack::Middleware::StackTrace::try {...}  at /usr/share/perl5/Try/Tiny.pm line 100
eval {...} at /usr/share/perl5/Try/Tiny.pm line 93
Try::Tiny::try('CODE(0x55e8cd836008)', 'Try::Tiny::Catch=REF(0x55e8cdc0ca70)') called at /usr/share/perl5/Plack/Middleware/StackTrace.pm line 42
Plack::Middleware::StackTrace::call('Plack::Middleware::StackTrace=HASH(0x55e8cc313ab8)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Middleware/AccessLog.pm line 27
Plack::Middleware::AccessLog::call('Plack::Middleware::AccessLog=HASH(0x55e8cc308eb0)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Util.pm line 145
eval {...} at /usr/share/perl5/Plack/Util.pm line 145
Plack::Util::run_app('CODE(0x55e8cc308d00)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Starman/Server.pm line 195
Starman::Server::dispatch_request('Starman::Server=HASH(0x55e8c30aaa38)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Starman/Server.pm line 298
Starman::Server::process_request('Starman::Server=HASH(0x55e8c30aaa38)', 'Net::Server::Proto::UNIX=GLOB(0x55e8cd97af18)') called at /usr/share/perl5/Net/Server.pm line 72
Net::Server::run_client_connection('Starman::Server=HASH(0x55e8c30aaa38)') called at /usr/share/perl5/Net/Server/PreFork.pm line 225
eval {...} at /usr/share/perl5/Net/Server/PreFork.pm line 225
Net::Server::PreFork::run_child('Starman::Server=HASH(0x55e8c30aaa38)') called at /usr/share/perl5/Net/Server/PreFork.pm line 183
Net::Server::PreFork::run_n_children('Starman::Server=HASH(0x55e8c30aaa38)', 2) called at /usr/share/perl5/Net/Server/PreFork.pm line 107
Net::Server::PreFork::loop('Starman::Server=HASH(0x55e8c30aaa38)') called at /usr/share/perl5/Net/Server.pm line 58
Net::Server::run('Starman::Server=HASH(0x55e8c30aaa38)', 'port', 'ARRAY(0x55e8c36357f8)', 'host', '*', 'proto', 'tcp', 'serialize', 'none', 'min_servers', 2, 'min_spare_servers', 1, 'max_spare_servers', 1, 'max_servers', 2, 'max_requests', 50, 'user', 'kohadev-koha', 'group', 'kohadev-koha', 'listen', 1024, 'check_for_waiting', 1, 'no_client_stdout', 1, 'setsid', 1, 'log_file', '/var/log/koha/kohadev/plack-error.log', 'background', 1, 'pid_file', '/var/run/koha/kohadev/plack.pid') called at /usr/share/perl5/Starman/Server.pm line 106
Starman::Server::run('Starman::Server=HASH(0x55e8c30aaa38)', 'CODE(0x55e8c30aa8e8)', 'HASH(0x55e8c30aa690)') called at /usr/share/perl5/Plack/Handler/Starman.pm line 25
Plack::Handler::Starman::run('Plack::Handler::Starman=HASH(0x55e8c30aa900)', 'CODE(0x55e8c30aa8e8)') called at /usr/share/perl5/Plack/Loader/Delayed.pm line 20
Plack::Loader::Delayed::run('Plack::Loader::Delayed=HASH(0x55e8c2df7d48)', 'Plack::Handler::Starman=HASH(0x55e8c30aa900)') called at /usr/share/perl5/Plack/Runner.pm line 279
Plack::Runner::run('Plack::Runner=HASH(0x55e8c2d94a68)') called at /usr/bin/starman line 38
 at /usr/share/perl5/Exception/Class/Base.pm line 88
	Exception::Class::Base::throw('Koha::Exceptions::Object::MethodNotCoveredByTests', 'error', 'The method Koha::Item->renewals_count is not covered by tests!', 'show_trace', 1) called at /kohadevbox/koha/Koha/Object.pm line 925
	Koha::Object::AUTOLOAD('Koha::Item=HASH(0x55e8cd9673b8)', 0) called at /kohadevbox/koha/C4/Circulation.pm line 4082
	C4::Circulation::ProcessOfflineReturn('HASH(0x55e8cd676940)') called at /kohadevbox/koha/C4/Circulation.pm line 4054
	C4::Circulation::ProcessOfflineOperation('HASH(0x55e8cd676940)') called at /kohadevbox/koha/offline_circ/process.pl line 42
	eval {...} at /kohadevbox/koha/offline_circ/process.pl line 2
	CGI::Compile::ROOT::kohadevbox_koha_offline_circ_process_2epl::__ANON__('CGI::Compile=HASH(0x55e8cda1f970)', '', '/kohadevbox/koha/offline_circ/process.pl', '/kohadevbox/koha/offline_circ', 'ARRAY(0x55e8cd836188)') called at /usr/share/perl5/CGI/Compile.pm line 151
	CGI::Compile::ROOT::kohadevbox_koha_offline_circ_process_2epl::process_2epl at /usr/share/perl5/CGI/Emulate/PSGI.pm line 30
	CGI::Emulate::PSGI::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/App/WrapCGI.pm line 95
	Plack::App::WrapCGI::call('Plack::App::WrapCGI=HASH(0x55e8cd79c308)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/App/CGIBin.pm line 50
	Plack::App::CGIBin::serve_path('Plack::App::CGIBin=HASH(0x55e8c368b7f0)', 'HASH(0x55e8ce1266c8)', '/kohadevbox/koha/offline_circ/process.pl') called at /usr/share/perl5/Plack/App/File.pm line 34
	Plack::App::File::call('Plack::App::CGIBin=HASH(0x55e8c368b7f0)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Middleware/LogWarn.pm line 22
	Plack::Middleware::LogWarn::call('Plack::Middleware::LogWarn=HASH(0x55e8cd778bc0)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Middleware/Log4perl.pm line 30
	Plack::Middleware::Log4perl::call('Plack::Middleware::Log4perl=HASH(0x55e8cd778ff8)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Middleware/HTTPExceptions.pm line 20
	Plack::Middleware::HTTPExceptions::try {...}  at /usr/share/perl5/Try/Tiny.pm line 100
	eval {...} at /usr/share/perl5/Try/Tiny.pm line 93
	Try::Tiny::try('CODE(0x55e8cda1c718)', 'Try::Tiny::Catch=REF(0x55e8cda986f0)') called at /usr/share/perl5/Plack/Middleware/HTTPExceptions.pm line 23
	Plack::Middleware::HTTPExceptions::call('Plack::Middleware::HTTPExceptions=HASH(0x55e8cd778d58)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Middleware/ErrorDocument.pm line 15
	Plack::Middleware::ErrorDocument::call('Plack::Middleware::ErrorDocument=HASH(0x55e8cd768138)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/App/URLMap.pm line 71
	Plack::App::URLMap::call('Plack::App::URLMap=HASH(0x55e8cc324538)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /kohadevbox/koha/Koha/Middleware/RealIP.pm line 64
	Koha::Middleware::RealIP::call('Koha::Middleware::RealIP=HASH(0x55e8cd7678f8)', 'HASH(0x55e8ce1266c8)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8ce1266c8)') called at /kohadevbox/koha/Koha/Middleware/SetEnv.pm line 105
	Koha::Middleware::SetEnv::call('Koha::Middleware::SetEnv=HASH(0x55e8cda15358)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Middleware/Static.pm line 18
	Plack::Middleware::Static::call('Plack::Middleware::Static=HASH(0x55e8cd7681c8)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Middleware/ReverseProxy.pm line 68
	Plack::Middleware::ReverseProxy::call('Plack::Middleware::ReverseProxy=HASH(0x55e8cd768270)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Middleware/Lint.pm line 24
	Plack::Middleware::Lint::call('Plack::Middleware::Lint=HASH(0x55e8c368b5c8)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Middleware::StackTrace::try {...}  at /usr/share/perl5/Try/Tiny.pm line 100
	eval {...} at /usr/share/perl5/Try/Tiny.pm line 93
	Plack::Middleware::StackTrace::call('Plack::Middleware::StackTrace=HASH(0x55e8cc313ab8)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Middleware/AccessLog.pm line 27
	Plack::Middleware::AccessLog::call('Plack::Middleware::AccessLog=HASH(0x55e8cc308eb0)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Component.pm line 50
	Plack::Component::__ANON__('HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Plack/Util.pm line 145
	eval {...} at /usr/share/perl5/Plack/Util.pm line 145
	Plack::Util::run_app('CODE(0x55e8cc308d00)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Starman/Server.pm line 195
	Starman::Server::dispatch_request('Starman::Server=HASH(0x55e8c30aaa38)', 'HASH(0x55e8cd9c49b0)') called at /usr/share/perl5/Starman/Server.pm line 298
	Starman::Server::process_request('Starman::Server=HASH(0x55e8c30aaa38)', 'Net::Server::Proto::UNIX=GLOB(0x55e8cd97af18)') called at /usr/share/perl5/Net/Server.pm line 72
	Net::Server::run_client_connection('Starman::Server=HASH(0x55e8c30aaa38)') called at /usr/share/perl5/Net/Server/PreFork.pm line 225
	eval {...} at /usr/share/perl5/Net/Server/PreFork.pm line 225
	Net::Server::PreFork::run_child('Starman::Server=HASH(0x55e8c30aaa38)') called at /usr/share/perl5/Net/Server/PreFork.pm line 183
	Net::Server::PreFork::run_n_children('Starman::Server=HASH(0x55e8c30aaa38)', 2) called at /usr/share/perl5/Net/Server/PreFork.pm line 107
	Net::Server::PreFork::loop('Starman::Server=HASH(0x55e8c30aaa38)') called at /usr/share/perl5/Net/Server.pm line 58
	Net::Server::run('Starman::Server=HASH(0x55e8c30aaa38)', 'port', 'ARRAY(0x55e8c36357f8)', 'host', '*', 'proto', 'tcp', 'serialize', 'none', 'min_servers', 2, 'min_spare_servers', 1, 'max_spare_servers', 1, 'max_servers', 2, 'max_requests', 50, 'user', 'kohadev-koha', 'group', 'kohadev-koha', 'listen', 1024, 'check_for_waiting', 1, 'no_client_stdout', 1, 'setsid', 1, 'log_file', '/var/log/koha/kohadev/plack-error.log', 'background', 1, 'pid_file', '/var/run/koha/kohadev/plack.pid') called at /usr/share/perl5/Starman/Server.pm line 106
	Starman::Server::run('Starman::Server=HASH(0x55e8c30aaa38)', 'CODE(0x55e8c30aa8e8)', 'HASH(0x55e8c30aa690)') called at /usr/share/perl5/Plack/Handler/Starman.pm line 25
	Plack::Handler::Starman::run('Plack::Handler::Starman=HASH(0x55e8c30aa900)', 'CODE(0x55e8c30aa8e8)') called at /usr/share/perl5/Plack/Loader/Delayed.pm line 20
	Plack::Loader::Delayed::run('Plack::Loader::Delayed=HASH(0x55e8c2df7d48)', 'Plack::Handler::Starman=HASH(0x55e8c30aa900)') called at /usr/share/perl5/Plack/Runner.pm line 279
	Plack::Runner::run('Plack::Runner=HASH(0x55e8c2d94a68)') called at /usr/bin/starman line 38
Comment 2 Kyle M Hall 2023-05-25 16:37:39 UTC
Looks like the RM just needs to update the Schema files in master to fix this!
Comment 3 Kyle M Hall 2023-05-25 16:40:38 UTC
(In reply to Kyle M Hall from comment #2)
> Looks like the RM just needs to update the Schema files in master to fix
> this!

I have have been mistaken about that.
Comment 4 Kyle M Hall 2023-05-25 17:02:18 UTC
Created attachment 151704 [details] [review]
Bug 33838: Don't reset the renewal count

I cannot find any justification for this line existing.
MarkIssueReturned does not do this.
Comment 5 Kyle M Hall 2023-05-25 17:10:07 UTC
Resetting item's renewal count was introduced in bug 5877 with no explanation.
Comment 6 Kyle M Hall 2023-05-25 17:17:05 UTC
Created attachment 151705 [details] [review]
Bug 33838: Don't reset the renewal count

I cannot find any justification for this line existing.
MarkIssueReturned does not do this.

Resetting item's renewal count was introduced in bug 5877 with no explanation.

Test Plan:
1) Check out item 3999900000001 to a patron
2) Upload the KOC file attached to this bug report
3) Navigate the Pending Offline Circ actions, see your return is listed
4) Click the checkbox to select your return
5) Click Process once. Nothing appears to happen
6) In a new tab, pull up the bib for item 3999900000001, see that it has been checked in
7) Back on your Offline Circ tab, click Process a second time
8) Koha tells you the item is not checked out
9) Apply this patch, restart all the things!
10) Repeat steps 1-4, everything should now work!
Comment 7 Andrew Fuerste-Henry 2023-05-25 17:53:04 UTC
Created attachment 151706 [details] [review]
Bug 33838: Don't reset the renewal count

I cannot find any justification for this line existing.
MarkIssueReturned does not do this.

Resetting item's renewal count was introduced in bug 5877 with no explanation.

Test Plan:
1) Check out item 3999900000001 to a patron
2) Upload the KOC file attached to this bug report
3) Navigate the Pending Offline Circ actions, see your return is listed
4) Click the checkbox to select your return
5) Click Process once. Nothing appears to happen
6) In a new tab, pull up the bib for item 3999900000001, see that it has been checked in
7) Back on your Offline Circ tab, click Process a second time
8) Koha tells you the item is not checked out
9) Apply this patch, restart all the things!
10) Repeat steps 1-4, everything should now work!

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Comment 8 Katrin Fischer 2023-05-29 18:11:50 UTC
Created attachment 151787 [details] [review]
Bug 33838: Don't reset the renewal count

I cannot find any justification for this line existing.
MarkIssueReturned does not do this.

Resetting item's renewal count was introduced in bug 5877 with no explanation.

Test Plan:
1) Check out item 3999900000001 to a patron
2) Upload the KOC file attached to this bug report
3) Navigate the Pending Offline Circ actions, see your return is listed
4) Click the checkbox to select your return
5) Click Process once. Nothing appears to happen
6) In a new tab, pull up the bib for item 3999900000001, see that it has been checked in
7) Back on your Offline Circ tab, click Process a second time
8) Koha tells you the item is not checked out
9) Apply this patch, restart all the things!
10) Repeat steps 1-4, everything should now work!

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Comment 9 Tomás Cohen Arazi 2023-05-30 11:27:30 UTC
Created attachment 151792 [details] [review]
Bug 33838: Don't reset the renewal count

I cannot find any justification for this line existing.
MarkIssueReturned does not do this.

Resetting item's renewal count was introduced in bug 5877 with no explanation.

Test Plan:
1) Check out item 3999900000001 to a patron
2) Upload the KOC file attached to this bug report
3) Navigate the Pending Offline Circ actions, see your return is listed
4) Click the checkbox to select your return
5) Click Process once. Nothing appears to happen
6) In a new tab, pull up the bib for item 3999900000001, see that it has been checked in
7) Back on your Offline Circ tab, click Process a second time
8) Koha tells you the item is not checked out
9) Apply this patch, restart all the things!
10) Repeat steps 1-4, everything should now work!

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Edit: this line was introduced by bug 30275, by mistake. The
renewals_count attribute belongs to the `issues` table, and I agree it
shouldn't be set to 0 at all as it will (with no reason) make us loose
the value!
Tests pass with and without this change, so this isn't even tested.
Comment 10 Tomás Cohen Arazi 2023-05-30 11:29:30 UTC
Pushed to master for 23.05.

Nice work everyone, thanks!
Comment 11 Matt Blenkinsop 2023-06-08 17:29:12 UTC
Nice work everyone!

Pushed to stable for 22.11.x