Anonymous | Login
Project:
RSS
  
News | My View | View Issues | Roadmap | Summary

View Issue DetailsJump to Notes ] Issue History ] Print ]
ID
0049963
TypeCategorySeverityReproducibilityDate SubmittedLast Update
defect[Openbravo ERP] A. Platformminoralways2022-08-05 11:392022-10-18 11:32
ReportergorkaionView Statuspublic 
Assigned ToTriage Platform Base 
PrioritynormalResolutionfixedFixed in VersionPR23Q1
StatusclosedFix in branchFixed in SCM revision
ProjectionnoneETAnoneTarget Version
OSAnyDatabaseAnyJava version
OS VersionDatabase versionAnt version
Product VersionSCM revision 
Review Assigned To
Web browser
ModulesCore
Regression level
Regression date
Regression introduced in release
Regression introduced by commit
Triggers an Emergency PackNo
Summary

0049963: When a ImportEntry is not assigned to a runnable it should not be included in hte entryCount

DescriptionThe ImportEntryProcessor.assignEntryToThread method might not assign the entry to a thread if there is a runnable of the previous search cycle still running.

When this happen the ImportEntryManager is still counting it in the entryCount counter that manages the wait time between cycles. This can generate extra wait time between cycles.
Steps To ReproduceCreate a big volume of slow import entries to force the system to execute a new search cycle when the previous runnables are still executing.

Notice that the import entries are not assigned to any threads but the calculated wait time to next search is considering all of them.
Proposed SolutionChange ImportEntryProcessor's handleImportEntry and assignEntryToThread methods to return a boolean.

assignEntryToThread return false when the ImportEntry is not assigned to a thread.

handleImportEntry returns false when the canHandleImportEntry or assignEntryToThread return false.

Change ImportEntryManager to update counter when the assignEntryToThread returns true.

TagsNo tags attached.
Attached Files

- Relationships Relation Graph ] Dependency Graph ]
depends on defect 0050413 closedalostale API change: ImportEntryProcessor handleImportEntry and assignEntryToThread return boolean 
related to defect 0048427 closedalostale high load of low priority import entries can cause higher priority entries not to be processed 

-  Notes
(0140080)
hgbot (developer)
2022-08-12 08:02

Merge Request created: https://gitlab.com/openbravo/product/openbravo/-/merge_requests/680 [^]
(0142218)
hgbot (developer)
2022-10-18 11:31

Repository: https://gitlab.com/openbravo/ci/mobile-api [^]
Changeset: 8691be10bbe9f0d9071a5e449138d3ad2250bad9
Author: Asier Lostalé <asier.lostale@openbravo.com>
Date: 05-10-2022 07:47:24
URL: https://gitlab.com/openbravo/ci/mobile-api/-/commit/8691be10bbe9f0d9071a5e449138d3ad2250bad9 [^]

related to ISSUE-49963: changes in ImportEntryProcessor extensions

The handleImportEntry and assignEntryToThread methods in
ImportEntryProcessor have been changed from returning void to returning
boolean.

This commit acknowledges changes in:

org.openbravo.mobile.core.importprocess:
  DeliverDocumentImportEntryProcessor
  OrgVariablesImportEntryProcessor
  TerminalLogImportEntryProcessor

org.openbravo.retail.posterminal:
  ExternalOrderImportEntryProcessor

org.openbravo.retail.posterminal.importprocess:
  CancelLayawayImportEntryProcessor
  CashManagementImportEntryProcessor
  CashUpImportEntryProcessor
  CountSafeBoxImportEntryProcessor
  CustomerAddrImportEntryProcessor
  CustomerImportEntryProcessor
  OrderImportEntryProcessor
  QuotationsRejectEntryProcessor
  VoidLayawayEntryProcessor

---
M java/reference/java.japi.gz
---
(0142222)
hgbot (developer)
2022-10-18 11:32

Merge request merged: https://gitlab.com/openbravo/product/openbravo/-/merge_requests/680 [^]
(0142223)
hgbot (developer)
2022-10-18 11:32

Directly closing issue as related merge request is already approved.

Repository: https://gitlab.com/openbravo/product/openbravo [^]
Changeset: 8f47bde4d53c68c64600a67ca558b3cc6699feed
Author: Asier Lostalé <asier.lostale@openbravo.com>
Date: 18-10-2022 08:39:13
URL: https://gitlab.com/openbravo/product/openbravo/-/commit/8f47bde4d53c68c64600a67ca558b3cc6699feed [^]

fixes BUG-49963: IEs not assigned to runnables are counted for idle time

After scheduling a batch of entries to be processed, the main IE threds
remains idle a time based on the count of scheduled entries.

In some cases, the entries obtained to be scheduled cannot finally be
set to a processing thread (ie. it was already full). These entries were
still counted unnecesarily increasing the idle waiting time.

Now we only count the entries that were actually scheduled.

---
M src/org/openbravo/service/importprocess/ImportEntryManager.java
M src/org/openbravo/service/importprocess/ImportEntryProcessor.java
---

- Issue History
Date Modified Username Field Change
2022-08-05 11:39 gorkaion New Issue
2022-08-05 11:39 gorkaion Assigned To => Triage Platform Base
2022-08-05 11:39 gorkaion Modules => Core
2022-08-05 11:39 gorkaion Triggers an Emergency Pack => No
2022-08-12 07:57 alostale Status new => acknowledged
2022-08-12 08:02 hgbot Note Added: 0140080
2022-08-12 10:36 alostale Relationship added related to 0048427
2022-08-19 14:49 ivancaceres Issue Monitored: ivancaceres
2022-10-05 07:57 alostale Relationship added depends on 0050413
2022-10-18 11:31 hgbot Note Added: 0142218
2022-10-18 11:32 hgbot Note Added: 0142222
2022-10-18 11:32 hgbot Resolution open => fixed
2022-10-18 11:32 hgbot Status acknowledged => closed
2022-10-18 11:32 hgbot Fixed in Version => PR23Q1
2022-10-18 11:32 hgbot Note Added: 0142223


Copyright © 2000 - 2009 MantisBT Group
Powered by Mantis Bugtracker