Closed Bug 1615365 Opened 4 months ago Closed 2 months ago

Redirecting to correct url on changing the status or framework filter

Categories

(Tree Management :: Perfherder, defect, P3)

defect

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: suyash546, Assigned: kumar.ishita)

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0

Steps to reproduce:

Go to Perherder Tab and choose a filter which has many alert pages.
Then, change the filter to something which has less alert pages.

Steps to reproduce here: https://mozilla.zoom.us/rec/play/vpB-JLyvrDg3GIWW5ASDAP4oW9XoKvms2iAcrKcOxUm0AHdXZ1OjM7BBNup7ew04f9MGdT_3bg1bIK8X?continueMode=true
Thanks to alexandrui

Actual results:

It gave me invalid page.
The url has not been updated to page 1

Expected results:

It should have gone to page 1

Component: Treeherder: Log Parsing & Classification → Perfherder

This seems interesting , Could I be assigned to this issue?

Flags: needinfo?(ksereduck)
Assignee: nobody → kumar.ishita
Flags: needinfo?(ksereduck)

Getting Started :
Hi Kimberly, just wanted to confirm this is the repository I'm supposed to be working on for this issue:
https://github.com/mozilla/treeherder
and this is the documentation to follow :
https://treeherder.readthedocs.io/installation.html#ui-development

It would be great if you could confirm the same so that i can go ahead and get acquainted with the codebase :)

Flags: needinfo?(ksereduck)

(In reply to kumar.ishita from comment #3)

Getting Started :
Hi Kimberly, just wanted to confirm this is the repository I'm supposed to be working on for this issue:
https://github.com/mozilla/treeherder
and this is the documentation to follow :
https://treeherder.readthedocs.io/installation.html#ui-development

It would be great if you could confirm the same so that i can go ahead and get acquainted with the codebase :)

That is correct 🙂 Perfherder is a part of Treeherder. The default view is Treeherder, to get to Perfherder click “Treeherder” in the top left corner, and then Perfherder in the drop down menu.

All Perfherder components are found in treeherder/ui/perfherder

Flags: needinfo?(ksereduck)

Hi Kimberly, Hope you had a great weekend.
I have the following concerns:

  1. I have followed all the commands mentioned in https://treeherder.readthedocs.io/installation.html for starling a local treehearder instance. I was able to login via GitHub ,however I'm getting the following response when trying to login to the system. SCREENSHOT LINK TO ERROR https://imgur.com/a/5W1hcR1
  2. Moreover, I believe since I'm not a validated user, I'm unable to see the Pagination's or the pages any of the filters. SCREENSHOT LINK TO ERROR https://imgur.com/NVCLlI7

In order to solve these errors I have tried the following:

  1. Tried to login with another email id, however it gives me the same error.
  2. Used yarn install and yarn start just so I could figure out if it was a frontend issue. However since the backend wasn't up, each page on Perfheader's api call would return Page=false. Does this mean the issue is only in the backend and there exists no other front end connectivity issue?
    Looking forward to your reply!
Flags: needinfo?(ksereduck)

Kyle, does she need to be given login access to make these changes?

Flags: needinfo?(ksereduck) → needinfo?(klahnakoski)

Hi ishita, change the dropdown option from "untriaggered" to "all" in the top left.
There's no problem with a validated user

(In reply to suyash546 from comment #7)

Hi ishita, change the dropdown option from "untriaggered" to "all" in the top left.
There's no problem with a validated user

Thank you!

Flags: needinfo?(klahnakoski)

Hi Suyash,
Thank You for your reply. Unable to see the results with your suggestion.
SCREENSHOT LINK TO ERROR : https://imgur.com/g58gE2E

Can you send the screenshot of your terminal.
I am getting the alerts even without login:(

Here you go. https://imgur.com/ZQOmNdF
Let me know if you want it in text format too!(In reply to suyash546 from comment #10)

Can you send the screenshot of your terminal.
I am getting the alerts even without login:(

(In reply to kumar.ishita from comment #9)

Hi Suyash,
Thank You for your reply. Unable to see the results with your suggestion.
SCREENSHOT LINK TO ERROR : https://imgur.com/g58gE2E

Sorry, I spaced, this is a local instance, not the live website. No, you should not need to be logged in to see any data on a local instance of treeherder. When running yarn start:stage it will fetch data to display. What command are you using to start the project?

Flags: needinfo?(kumar.ishita)

Running the backend server won't give you the initializing data.
That is the task to be done this summer
Run only yarn start

Prefer not to use docker-compose up if it's only a frontend issue

(In reply to Kimberly Sereduck :kimberlythegeek from comment #12)

(In reply to kumar.ishita from comment #9)

Hi Suyash,
Thank You for your reply. Unable to see the results with your suggestion.
SCREENSHOT LINK TO ERROR : https://imgur.com/g58gE2E

Sorry, I spaced, this is a local instance, not the live website. No, you should not need to be logged in to see any data on a local instance of treeherder. When running yarn start:stage it will fetch data to display. What command are you using to start the project?

(In reply to suyash546 from comment #14)

Prefer not to use docker-compose up if it's only a frontend issue

Gotcha! Using yarn start does load up all the instances for me as I mentioned. Every page in there, with different filters show's a
Failed to load resource: the server responded with a status of 404 (Not Found) with the api call. LINK: https://imgur.com/rWjqJG0
http://localhost:5000/api/performance/alertsummary/?framework=2&page=false&hide_related_and_invalid=true

I'm going to try to figure out why the page=false error occurs.
Any ideas as to where this would be breaking?

Flags: needinfo?(kumar.ishita)

I will add :camd to confirm/correct my following sentences:

It looks like this bug requires a full system running on your local machine. The backend (docker-compose up --build) will be required. I would assume there is default user you use to login. You will not have any data in the local backend, so if you see any alerts I suspect the frontend is not pointing to your local backend.

Flags: needinfo?(cdawson)

(In reply to Kyle Lahnakoski [:ekyle] from comment #16)

I will add :camd to confirm/correct my following sentences:

It looks like this bug requires a full system running on your local machine. The backend (docker-compose up --build) will be required. I would assume there is default user you use to login. You will not have any data in the local backend, so if you see any alerts I suspect the frontend is not pointing to your local backend.

Hi Kyle!
I apologize for the delayed response, I was wrapping up midterms this week. After docker-compose up --build, I can see the development environment and no alerts alerts are shown since I don't have any data within the local server. How do i populate date in my local back-end to be able to see alerts?

Flags: needinfo?(klahnakoski)

(In reply to kumar.ishita from comment #17)

How do i populate date in my local back-end to be able to see alerts?

I have not done that before. My little understanding is to get Pulse ingestion working so there is some data locally, and then markup some performance manually. You should be able to run the test suite locally; maybe there is a residual performance alert test you can use.

You will probably make tests for your work anyway, so look at the alert tests to see if you can make a test that fills the database enough for you to do your work.

Flags: needinfo?(klahnakoski)

Although ekyle gave you some hints. Feel free to ask any questions in our matrix channel for any doubts :)

Hi guys, Thank You for your reply.
I have a few questions regarding this.
As suggested I tried following the steps, with this link: https://treeherder.readthedocs.io/pulseload.html
I created my account with pulse guardian, and also created a RabbitMQ account with username and password. After adding them to my PULSE URL and running export PULSE_URL=<pulse url> , I get the following error while execution
docker-compose run -e PULSE_URL backend ./manage.py pulse_listener_pushes:

raise ImproperlyConfigured(error_msg)
django.core.exceptions.ImproperlyConfigured: Set the PULSE_URL environment variable

Flags: needinfo?(suyash546)
Flags: needinfo?(klahnakoski)

Helping you in the simplest possible way
https://github.com/mozilla/treeherder/blob/master/treeherder/etl/management/commands/pulse_listener_pushes.py#L26
Replace env("PULSE_URL") with your pulse URL for now
Please ask any further doubts on https://chat.mozilla.org/#/room/#treeherder:mozilla.org
You may get quicker and better responses

Flags: needinfo?(suyash546)

(In reply to suyash546 from comment #21)

Helping you in the simplest possible way
https://github.com/mozilla/treeherder/blob/master/treeherder/etl/management/commands/pulse_listener_pushes.py#L26
Replace env("PULSE_URL") with your pulse URL for now
Please ask any further doubts on https://chat.mozilla.org/#/room/#treeherder:mozilla.org
You may get quicker and better responses

Will do, thank you!

(In reply to Kimberly Sereduck :kimberlythegeek from comment #12)

(In reply to kumar.ishita from comment #9)

Hi Suyash,
Thank You for your reply. Unable to see the results with your suggestion.
SCREENSHOT LINK TO ERROR : https://imgur.com/g58gE2E

Sorry, I spaced, this is a local instance, not the live website. No, you should not need to be logged in to see any data on a local instance of treeherder. When running yarn start:stage it will fetch data to display. What command are you using to start the project?

(In reply to Kyle Lahnakoski [:ekyle] from comment #18)

(In reply to kumar.ishita from comment #17)

How do i populate date in my local back-end to be able to see alerts?

I have not done that before. My little understanding is to get Pulse ingestion working so there is some data locally, and then markup some performance manually. You should be able to run the test suite locally; maybe there is a residual performance alert test you can use.

You will probably make tests for your work anyway, so look at the alert tests to see if you can make a test that fills the database enough for you to do your work.

Hi!
It seems like my approach was wrong when I started out and I couldn't clearly map out the exact issue. Suyash was able to clarify my doubts and I was then able to solve this bug. The issue was in the AlertsView.jsx page where the param "page" was not being updated to 1 after a filter or status change. I have modified that and created a pull request!
Please let me know if anything else is needed on my end. Thank You!

(In reply to Kyle Lahnakoski [:ekyle] from comment #16)

I will add :camd to confirm/correct my following sentences:

It looks like this bug requires a full system running on your local machine. The backend (docker-compose up --build) will be required. I would assume there is default user you use to login. You will not have any data in the local backend, so if you see any alerts I suspect the frontend is not pointing to your local backend.

Yeesh, I am extremely late to answer this. So sorry. yarn start is all you need here, as you already found out.

Flags: needinfo?(cdawson)
Flags: needinfo?(klahnakoski)
Priority: -- → P3
Status: UNCONFIRMED → RESOLVED
Closed: 2 months ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.