---
# System prepended metadata

title: Tickets and tasks related to the performance of the application

---

# Tickets and tasks related to the performance of the application

Epic Ticket: https://lftechnology.atlassian.net/browse/UNTAP-1344

1. ###  Duplicate Fetch task API request
   **Ticket**: https://lftechnology.atlassian.net/browse/UNTAP-1113

   Fetch task API request is made based on the planning period date. Currently
   fetch task API request is made twice that is the first request is made with
   default planning period date(i.e current date) and another request is
   made once we get the actual planning period from API. This result in
   showing different task lists and multiple loading states
   
   **Solution**: Only make the fetch task API request once we got actual
   planning period date information from fetch planning period API
   request. 
  

2. ### Updating loading state before async operation completed
   ![](https://i.imgur.com/M9PUvYV.png)
   
   From the above code snippets, we can see that we are setting taskLoading to
   false even though the async operation is not completed.
   Similar issue with `fetchPlans()`
   
   **Solution**: Update the loading state only after async operation is
   completed
   ![](https://i.imgur.com/8r50SfH.png)

  
3. ### Showing previously loaded user information initial
    **Ticket:** https://lftechnology.atlassian.net/browse/UNTAP-1598
    
    All the routes(`/plans, /goals, /assignments, /personal-info,
    /academic-info, /assessment`) have the same issue of showing the previous user
    information on initial load and changed to actual data after API is
    completed.
    
    The issue happens because we are showing the previously loaded user
    information from `Redux store`.
    
    **Solution**: We have the `fetchStudentLoading` flag which keeps track of
    API request state. So we need to only show user information after API 
    is completed so that it won't show old data from `Redux store`.
        
    
    However conditional showing text might result in a change in layout
    height. So in order to have a consistent UI layout even on loading state, 
    we can make `skeleton loader UI` something like this
    ![](https://i.imgur.com/wwYQnGd.png)
    
    Reference: https://www.npmjs.com/package/react-loading-skeleton
    
    
    
4. User chat was not always loaded, as expected.
   Ticket: https://lftechnology.atlassian.net/browse/UNTAP-1589

    ![](https://i.imgur.com/9lu4eBt.png)
    Currently, this is how the selected Student chat showed on the right-side panel. 
    The issue with this approach is that we getting a student from redux 
    store so if the redux store already contains student data from previous
    student API request then initially it will show the chat of previous
    student from the redux store and once the new student API is completed it
    switch chat to a current student.
    
    
    
    