Anonymous | Login
News | My View | View Issues | Roadmap | Summary

View Issue DetailsJump to Notes ] Issue History ] Print ]
TypeCategorySeverityReproducibilityDate SubmittedLast Update
backport[Retail Modules] Web POSmajoralways2018-01-17 11:572018-01-24 14:31
ReportermarvintmView Statuspublic 
Assigned Tomarvintm 
PriorityurgentResolutionfixedFixed in VersionRR17Q4.1
StatusclosedFix in branchFixed in SCM revision60f7bbfe4c35
ProjectionnoneETAnoneTarget VersionRR17Q4.1
OSAnyDatabaseAnyJava version
OS VersionDatabase versionAnt version
Product VersionSCM revision 
Review Assigned Tomigueldejuana
Regression level
Regression date
Regression introduced in release
Regression introduced by commit
Triggers an Emergency PackNo

0037657: Logclient information can accumulate in the terminal, and be continously sent to the backend server

DescriptionThe logclient information is saved temporarily in a local database table, and is sent to the server every 30 seconds. If the server correctly receives it, then the terminal removes it, and otherwise tries to send it again the next time.

However, in some very specific cases, the server may erroneously conclude that the messages were not correctly saved, and then the terminal will send the messages again, and therefore the log messages will never be deleted from the terminal, and new messages will continuously accumulate until the terminal crashes.
Steps To Reproduce- Log in the WebPOS with terminal VBS-1 with Openbravo user
- Open the backoffice in another tab in the same browser.
- Change the organization in backoffice to "Central Mountain")
- Put a breakpoint in LogclientLoader class.
- Wait until the log is sent from the WebPOS and the breakpoint stops.
- Logout in the backoffice, and refresh the WebPOS.
- Remove the breakpoint.

With these steps, you ensure that you saved logclient messages in a wrong organization, and that the messages were not deleted from the WebPOS.

- Now, log in with vallblanca user in the WebPOS.
- The pending messages will be resent. However, this request will fail, and the messages will be kept in the terminal forever. There is no way to escape from this situation, other than deleting the cache.
Proposed SolutionThe LogClientLoader must be changed so that it is able to find records which were created even in unaccessible organizations.
TagsNo tags attached.
Attached Files

- Relationships Relation Graph ] Dependency Graph ]
blocks defect 0037655 closedmarvintm Logclient information can accumulate in the terminal, and be continously sent to the backend server 

-  Notes
hgbot (developer)
2018-01-22 14:01

Repository: retail/backports/3.0RR17Q4.1/
Changeset: 60f7bbfe4c3591fc86dd6083a2d59c5a7206bd27
Author: Antonio Moreno <antonio.moreno <at>>
Date: Mon Jan 22 14:00:44 2018 +0100
URL: [^]

Fixed issue 37657. Existing logclient records will now always be found
Now the query that checks if the logclient record exists will no longer filter by client/organization, and therefore will be able to find records which were mistakenly created in a non-accessible organization. This will prevent some records from becoming stuck in the terminal.

M src/org/openbravo/mobile/core/utils/
migueldejuana (developer)
2018-01-24 14:31

Tested and reviewed

- Issue History
Date Modified Username Field Change
2018-01-17 11:57 marvintm Type defect => backport
2018-01-17 11:57 marvintm Target Version => RR17Q4.1
2018-01-22 14:01 hgbot Checkin
2018-01-22 14:01 hgbot Note Added: 0101845
2018-01-22 14:01 hgbot Status scheduled => resolved
2018-01-22 14:01 hgbot Resolution open => fixed
2018-01-22 14:01 hgbot Fixed in SCM revision => [^]
2018-01-24 14:30 migueldejuana Review Assigned To => migueldejuana
2018-01-24 14:30 migueldejuana Status resolved => closed
2018-01-24 14:30 migueldejuana Fixed in Version => RR17Q4.1
2018-01-24 14:31 migueldejuana Note Added: 0101924

Copyright © 2000 - 2009 MantisBT Group
Powered by Mantis Bugtracker