Openbravo Issue Tracking System - Retail Modules
View Issue Details
0033160Retail ModulesWeb POSpublic2016-06-06 14:432018-03-26 12:27
shuehner 
Sandrahuguet 
normalminorhave not tried
closedfixed 
5
 
RR18Q2 
marvintm
No
0033160: OrderLoader: Not required obpos_app_cashup read at end of processPayments
        final OBPOSAppCashup cashup = OBDal.getInstance().get(OBPOSAppCashup.class, cashupId);
        for (FIN_FinaccTransaction transaction : transactions) {
          transaction.setObposAppCashup(cashup);
        }

should use .getProxy instead to avoid read of obpos_app_cashup.
240972 [Import Entry - 1] INFO org.openbravo.base.PoolInterceptor - executeQuery --- SQL:
select obpos_app_0_.Obpos_App_Cashup_ID as Obpos1_468_0_, obpos_app_0_.AD_Client_ID as AD2_468_0_, obpos_app_0_.AD_Org_ID as AD3_468_0_, obpos_app_0_.Isactive as Isactive468_0_, obpos_app_0_.Created as Created468_0_, obpos_app_0_.Createdby as Createdby468_0_, obpos_app_0_.Updated as Updated468_0_, obpos_app_0_.Updatedby as Updatedby468_0_, obpos_app_0_.Obpos_Applications_ID as Obpos9_468_0_, obpos_app_0_.Cashupdate as Cashupdate468_0_, obpos_app_0_.AD_User_ID as AD11_468_0_, obpos_app_0_.Cashupreport as Cashupr12_468_0_, obpos_app_0_.Netsales as Netsales468_0_, obpos_app_0_.Grosssales as Grosssales468_0_, obpos_app_0_.Netreturns as Netreturns468_0_, obpos_app_0_.Grossreturns as Grossre16_468_0_, obpos_app_0_.Totalretailtransactions as Totalre17_468_0_, obpos_app_0_.Isbeingprocessed as Isbeing18_468_0_, obpos_app_0_.Isprocessed as Isproce19_468_0_, obpos_app_0_.Isprocessedbo as Isproce20_468_0_, obpos_app_0_.Obpos_Parent_Cashup_ID as Obpos21_468_0_, obpos_app_0_.Jsoncashup as Jsoncashup468_0_ from OBPOS_App_Cashup obpos_app_0_ where obpos_app_0_.Obpos_App_Cashup_ID=?
  t:2
     $1: A15AE3A7FC745C0B1C39135680F9B869
java.lang.Exception
    at org.openbravo.base.PoolInterceptor$PSInvokationHandler.invoke(PoolInterceptor.java:99)
    at com.sun.proxy.$Proxy23.executeQuery(Unknown Source)
    at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:208)
    at org.hibernate.loader.Loader.getResultSet(Loader.java:1953)
    at org.hibernate.loader.Loader.doQuery(Loader.java:802)
    at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:274)
    at org.hibernate.loader.Loader.loadEntity(Loader.java:2037)
    at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:86)
    at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:76)
    at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:69)
    at org.hibernate.loader.entity.BatchingEntityLoader.load(BatchingEntityLoader.java:113)
    at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3293)
    at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:496)
    at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:477)
    at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:227)
    at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:285)
    at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:152)
    at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:1090)
    at org.hibernate.impl.SessionImpl.get(SessionImpl.java:1005)
    at org.openbravo.dal.core.SessionHandler.find(SessionHandler.java:228)
    at org.openbravo.dal.core.SessionHandler.find(SessionHandler.java:211)
    at org.openbravo.dal.service.OBDal.get(OBDal.java:298)
    at org.openbravo.retail.posterminal.OrderLoader.processPayments(OrderLoader.java:2102)
Performance
Issue History
2016-06-06 14:43shuehnerNew Issue
2016-06-06 14:43shuehnerAssigned To => Retail
2016-06-06 14:43shuehnerTriggers an Emergency Pack => No
2016-06-06 14:43shuehnerTag Attached: Performance
2016-06-09 15:47hgbotCheckin
2016-06-09 15:47hgbotNote Added: 0087126
2016-06-09 15:47hgbotStatusnew => resolved
2016-06-09 15:47hgbotResolutionopen => fixed
2016-06-09 15:47hgbotFixed in SCM revision => http://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/d6e32f0f0366a383cf056034432c216588b98903 [^]
2016-06-09 15:52shuehnerNote Added: 0087133
2016-06-09 15:53shuehnerNote Edited: 0087133bug_revision_view_page.php?bugnote_id=0087133#r12347
2016-06-09 15:53shuehnerNote Added: 0087134
2016-06-09 15:53shuehnerStatusresolved => new
2016-06-09 15:53shuehnerResolutionfixed => open
2016-06-09 15:55shuehnerNote Added: 0087135
2018-03-21 09:29hgbotCheckin
2018-03-21 09:29hgbotNote Added: 0103381
2018-03-21 09:29hgbotStatusnew => resolved
2018-03-21 09:29hgbotResolutionopen => fixed
2018-03-21 09:29hgbotFixed in SCM revisionhttp://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/d6e32f0f0366a383cf056034432c216588b98903 [^] => http://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/fb023d7cf6ea75d4d7a4cb57370153f123f612a1 [^]
2018-03-21 09:30SandrahuguetAssigned ToRetail => Sandrahuguet
2018-03-21 09:35SandrahuguetReview Assigned To => marvintm
2018-03-26 12:27marvintmStatusresolved => closed
2018-03-26 12:27marvintmFixed in Version => RR18Q2

Notes
(0087126)
hgbot   
2016-06-09 15:47   
Repository: erp/pmods/org.openbravo.retail.posterminal
Changeset: d6e32f0f0366a383cf056034432c216588b98903
Author: Stefan Hühner <stefan.huehner <at> openbravo.com>
Date: Tue Jun 07 17:06:06 2016 +0200
URL: http://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/d6e32f0f0366a383cf056034432c216588b98903 [^]

Fixed 33160. Avoid read from obpos_app_cashup by using Proxy.

Avoid extra unneeded select from the database by using a Proxy object.

---
M src/org/openbravo/retail/posterminal/OrderLoader.java
---
(0087133)
shuehner   
2016-06-09 15:52   
(edited on: 2016-06-09 15:53)
https://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/220afce3f6f9 [^]

Changeset: 6499
User: Stefan Hühner <stefan.huehner@openbravo.com>
Date: Wed Jun 08 16:09:52 CEST 2016


    Backed out changeset 12a881ec4056
    In some flow value -1 is apparently sent from client-side.
    Original OBDal.getInstance().get( return 'null' in that case which is fine for
    the optional field in fin_finacc_transaction. However getProxy passes on '-1'
    which is invalid value and triggers an error.
    
    Temporary backout to validate that assumption and until all callers doing -1 hav
    been fixed.

(0087134)
shuehner   
2016-06-09 15:53   
Change had to be backed out as there is another bug in retail uses this parameter wrongly.
See description of backout for more details.
(0087135)
shuehner   
2016-06-09 15:55   
Example try-retail run showing the failure with this commits not backed out:
https://ci.openbravo.com//job/try-ret-test-pgsql-suite3/3294/ [^]

2016-06-08 13:20:24,584 [Import Entry - 4] ERROR org.openbravo.mobile.core.process.DataSynchronizationProcess - An error happened when processing a record:
org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [OBPOS_App_Cashup#-1]
    at org.hibernate.impl.SessionFactoryImpl$2.handleEntityNotFound(SessionFactoryImpl.java:435)
    at org.hibernate.proxy.AbstractLazyInitializer.checkTargetState(AbstractLazyInitializer.java:189)
    at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:178)
    at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:215)
    at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:190)
    at org.openbravo.retail.posterminal.OBPOSAppCashup_$$_javassist_328.getOrganization(OBPOSAppCashup_$$_javassist_328.java)
    at org.openbravo.dal.core.OBInterceptor.checkReferencedOrganizations(OBInterceptor.java:282)
    at org.openbravo.dal.core.OBInterceptor.onFlushDirty(OBInterceptor.java:184)
    at org.hibernate.event.def.DefaultFlushEntityEventListener.invokeInterceptor(DefaultFlushEntityEventListener.java:372)
    at org.hibernate.event.def.DefaultFlushEntityEventListener.handleInterception(DefaultFlushEntityEventListener.java:349)
    at org.hibernate.event.def.DefaultFlushEntityEventListener.scheduleUpdate(DefaultFlushEntityEventListener.java:287)
    at org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:155)
    at org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:219)
    at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:99)
    at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:50)
    at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
    at org.openbravo.dal.service.OBDal.flush(OBDal.java:205)
    at org.openbravo.retail.posterminal.OrderLoader.saveRecord(OrderLoader.java:464)
    at org.openbravo.mobile.core.process.DataSynchronizationProcess.saveRecord(DataSynchronizationProcess.java:198)
    at org.openbravo.mobile.core.process.DataSynchronizationProcess.exec(DataSynchronizationProcess.java:155)
    at org.openbravo.mobile.core.process.DataSynchronizationProcess.exec(DataSynchronizationProcess.java:87)


    Test Result (12 failures / +12)

    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testMinimalOrderASync
    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testWrongPayment
    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testWrongOrg
    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testWrongTax
    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testMultiLineOrder
    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testWrongProduct
    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testInternalError
    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testPromotionOrder
    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testCreatePayShipOrder
    org.openbravo.test.mobile.retail.pack.webservice.tests.orderloader.RetailOrderLoaderTest.testMultiOrder
(0103381)
hgbot   
2018-03-21 09:29   
Repository: erp/pmods/org.openbravo.retail.posterminal
Changeset: fb023d7cf6ea75d4d7a4cb57370153f123f612a1
Author: Sandra Huguet <sandra.huguet <at> openbravo.com>
Date: Mon Mar 19 16:40:58 2018 +0100
URL: http://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/fb023d7cf6ea75d4d7a4cb57370153f123f612a1 [^]

Fixed 33160. Avoid read from obpos_app_cashup by using Proxy.

Avoid extra unneeded select from the database by using a Proxy object.
Added isUUIDString validation, ExternalOrderLoader sent -1

---
M src/org/openbravo/retail/posterminal/OrderLoader.java
---