Support #10751

[SCP ID :##5312##] : M2U - multiple call to DB

Added by Zahir Abd Latif over 4 years ago. Updated over 4 years ago.

Status:Closed - End of life cycleStart date:April 25, 2020
Priority:NormalDue date:
Assignee:Zahir Abd Latif% Done:

100%

Category:-Spent time:-
Target version:-

Description

Hi,
Kindly attend below request:

Please explain why you have to make multiple call to DB with query bellow,
Is it possible to make the process more efficient, to minimize round trip to DB.

select
this_.OID as OID10_0_,
this_.CURRENCY_CODE as CURRENCY2_10_0_,
this_.CURRENCY_CODE_ISO as CURRENCY3_10_0_,
this_.BASE_UNIT as BASE4_10_0_,
this_.IMAGE_URL as IMAGE5_10_0_,
this_.IMAGEFILE as IMAGEFILE10_0_,
this_.DISPLAY_ORDER as DISPLAY7_10_0_,
this_.MT_103_RECV_BIC as MT8_10_0_,
this_.STATUS as STATUS10_0_,
this_.DELETED as DELETED10_0_,
this_.CREATION_DATE as CREATION11_10_0_,
this_.LAST_MOD_DATE as LAST12_10_0_,
this_.CURRENCY_DESC as CURRENCY13_10_0_,
this_.MK_PENDING as MK14_10_0_,
this_.CONTENT_CATEGORY_ID as CONTENT15_10_0_
from
dbo.IB_CURRENCY_CODE this_
order by
this_.CURRENCY_CODE asc

select
ibcontentc0_.OID as OID3_1_,
ibcontentc0_.MK_PENDING as MK2_3_1_,
ibcontentc0_.PARENT_ID as PARENT3_3_1_,
ibcontentc0_.CREATION_DATE as CREATION4_3_1_,
ibcontentc0_.LAST_MOD_DATE as LAST5_3_1_,
ibcontentc0_.CATEGORY_TYPE as CATEGORY6_3_1_,
ibcontentc0_.CONTENT_TYPE_ID as CONTENT7_3_1_,
ibcontentt1_.OID as OID5_0_,
ibcontentt1_.CONTENT_TYPE_CODE as CONTENT2_5_0_,
ibcontentt1_.CONTENT_PATH as CONTENT3_5_0_,
ibcontentt1_.CONTENT_TABLE_NAME as CONTENT4_5_0_,
ibcontentt1_.CREATION_DATE as CREATION5_5_0_
from
dbo.IB_CONTENT_CATEGORY ibcontentc0_
left outer join
dbo.IB_CONTENT_TYPE ibcontentt1_
on ibcontentc0_.CONTENT_TYPE_ID=ibcontentt1_.OID
where
ibcontentc0_.OID=?

select
contentcat0_.CONTENT_CATEGORY_ID as CONTENT4_1_,
contentcat0_.OID as OID1_,
contentcat0_.OID as OID4_0_,
contentcat0_.CATEGORY_NAME as CATEGORY2_4_0_,
contentcat0_.LOCALE as LOCALE4_0_,
contentcat0_.CONTENT_CATEGORY_ID as CONTENT4_4_0_
from
dbo.IB_CONTENT_CATEGORY_ML contentcat0_
where
contentcat0_.CONTENT_CATEGORY_ID=?

History

#1 Updated by Zahir Abd Latif over 4 years ago

  • Status changed from New - Begin Life Cycle to Pending Customer Feedback
  • Assignee changed from Rayvandy Gabbytian to Zahir Abd Latif
  • % Done changed from 0 to 100

Gabby, Apr 24, 2020 09:14 PM:-

Reported Issue:
Please explain why you have to make multiple call to DB with query bellow,
Is it possible to make the process more efficient, to minimize round trip to DB.

Root cause:
Inside IBLoginWelcomeServices.java (when loading M2U login page), there is looping of Customer's link account from database.
This link account will be stored into session for account portfolio display in dashboard and transactions.

When looping customer link account, IB will call IB_CURRENCY_CODE and its dependencies (IB_CONTENT_CATEGORY).

Solution:
- Convert currencyCodeMap data type to static in global variable,
- Use singleton pattern to get currency code from DB if it is null,
- Use setter method to update the variable upon customer login. (Incase currency code is updated vis MSS)

Patch:
/IBM/SHARE FOLDER/2020/SCPID XXXX - IBLoginWelcome Performance Issue

Impact Analysis:
M2U:
- Login
- Dashboard and Account Details
- Transaction History & M2U History
- Customer Service: Link & Unlink Account,
- All transactions (Including ETB, TD Placement)
- All Bill Payment

RESTful: N/A. There is no link account checking.

#2 Updated by Zahir Abd Latif over 4 years ago

  • Status changed from Pending Customer Feedback to Closed - End of life cycle

Issue closed in SCP.

Also available in: Atom PDF