-
Notifications
You must be signed in to change notification settings - Fork 14.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: adding Progress Bar to Benchmark script #15719
Conversation
1e89172
to
a455019
Compare
Codecov Report
@@ Coverage Diff @@
## master #15719 +/- ##
==========================================
- Coverage 76.91% 76.69% -0.23%
==========================================
Files 983 983
Lines 51609 51607 -2
Branches 6988 6988
==========================================
- Hits 39696 39580 -116
- Misses 11690 11804 +114
Partials 223 223
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
""" | ||
Add entities of a given model. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Keep this empty line.
superset/utils/mock_data.py
Outdated
@@ -69,6 +69,9 @@ | |||
|
|||
# pylint: disable=too-many-return-statements, too-many-branches | |||
def get_type_generator(sqltype: sqlalchemy.sql.sqltypes) -> Callable[[], Any]: | |||
if isinstance(sqltype, sqlalchemy.dialects.mysql.types.TINYINT): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These changes were merged already, right?
scripts/benchmark_migration.py
Outdated
start = time.time() | ||
bar.finish() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So, there's a few subtle bugs in your implementation. The critical one is that for every model you define entities
as an empty list. But you only add the entities to the session after you've processed all models (line 198). This means you'll only add the entities of the last model in the for model in models
loop.
I'd also only show the progress bar if you have something to add.
Something like this:
while min_entities <= limit:
downgrade(revision=down_revision)
print(f"Running with at least {min_entities} entities of each model")
for model in models:
missing = min_entities - model_rows[model]
if missing > 0:
entities: List[Model] = []
bar = ChargingBar(f"Adding {missing} entities to the {model.__name__} model", max=missing)
try:
for entity in add_sample_rows(session, model, missing)
entities.append(entity)
bar.next()
except Exception:
session.rollback()
raise
bar.finish()
model_rows[model] = min_entities
# add all created entities
session.add_all(entities)
session.commit()
if auto_cleanup:
new_models[model].extend(entities)
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
d63372e
to
4f97f6d
Compare
scripts/benchmark_migration.py
Outdated
@@ -177,18 +178,23 @@ def main( | |||
for model in models: | |||
missing = min_entities - model_rows[model] | |||
if missing > 0: | |||
entities: List[Model] = [] | |||
bar = ChargingBar("Processing", max=missing) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How does the print in 183 interact with the bar? I think it might be better to reverse the order of 182,183.
Can you post a screencast of the progress bar in action? :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just switched and pushed up, it does look a lot better. Putting a screencast in the main portion.
4f97f6d
to
20c9c01
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So cool!
* rough draft of benchmark script * revisions * revisions * rough draft of benchmark script * revisions * Update requirements/development.in Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * Update superset/utils/mock_data.py Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * more revisions Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
#15856) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> * feat: toggle the ReportModal Icon based on user permissions (#15780) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * first draft * added testing props * cleaned up rebase * changed name and type Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * feat: Begin incorporation of email report modal to Charts (#15793) * Add email report modal to Charts * Fix px themes * feat: fetch UI specific reports (#15785) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * first draft * created Api call * added click logic * made the fetch report into a action/reducer * abstracted report action * revision * added reportState to reducer * reports conditions * revisions * revisions Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * fix: Edit physical dataset from the Edit Dataset modal (#15770) * Remove unnecessary onChange * Remove confliciting onChange * Revert unnecessary change * Enhance and fix tests * feat: add show columns to Reports model (#15712) * added logic for creation_method * revisions * added index * Update superset/migrations/versions/3317e9248280_add_creation_method_to_reports_model.py * filters * search columns updated * fix: margin right on warning icon to 8px (#15715) * changed margin right on warning icon to 8px * fixed to grid units from pixels * feat: adding Progress Bar to Benchmark script (#15719) * rough draft of benchmark script * revisions * revisions * rough draft of benchmark script * revisions * Update requirements/development.in Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * Update superset/utils/mock_data.py Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * more revisions Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * fix: migration downgrade references wrong column (#15791) * fix(dashboard): Add resize handles to right and bottom of component (#15778) * fix(dashboard): Add resize handles to right and bottom of component * Fix test * chore: Add tags to the new viz gallery (#15734) * chore: add tags to gallery * fix UT * fix lint * redesign tags filter * chore: change to Highly-used and fix some css * fix UT Co-authored-by: stephenLYZ <750188453@qq.com> * chore: bump 0.17.70 (#15795) * docs: Adding Sunbird to users list (#15794) * chore: Improves the Select component UI/UX - iteration 4 (#15480) * Add z-index only on maximize (#15800) * chore: remove `retry` dependency in favor of `backoff` (#15788) * chore: remove retry dep in favor of backoff * Fix lint * fix: create fk model in benchmark script (#15804) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * Working on onSave functionality * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> * feat: toggle the ReportModal Icon based on user permissions (#15780) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * first draft * added testing props * cleaned up rebase * changed name and type Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * feat: fetch UI specific reports (#15785) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * first draft * created Api call * added click logic * made the fetch report into a action/reducer * abstracted report action * revision * added reportState to reducer * reports conditions * revisions * revisions Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * Dashboard onSave progress * More onSave/create progress * Dashboard POST working! * Dashboard POST relocated to redux * POST now also working in Charts * making linter happy * linter again Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> Co-authored-by: Geido <60598000+geido@users.noreply.github.com> Co-authored-by: stellalc7 <stellalc7@gmail.com> Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com> Co-authored-by: Yongjie Zhao <yongjie.zhao@gmail.com> Co-authored-by: stephenLYZ <750188453@qq.com> Co-authored-by: Kumar <kumarks1122@gmail.com> Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
#15856) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> * feat: toggle the ReportModal Icon based on user permissions (#15780) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * first draft * added testing props * cleaned up rebase * changed name and type Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * feat: Begin incorporation of email report modal to Charts (#15793) * Add email report modal to Charts * Fix px themes * feat: fetch UI specific reports (#15785) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * first draft * created Api call * added click logic * made the fetch report into a action/reducer * abstracted report action * revision * added reportState to reducer * reports conditions * revisions * revisions Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * fix: Edit physical dataset from the Edit Dataset modal (#15770) * Remove unnecessary onChange * Remove confliciting onChange * Revert unnecessary change * Enhance and fix tests * feat: add show columns to Reports model (#15712) * added logic for creation_method * revisions * added index * Update superset/migrations/versions/3317e9248280_add_creation_method_to_reports_model.py * filters * search columns updated * fix: margin right on warning icon to 8px (#15715) * changed margin right on warning icon to 8px * fixed to grid units from pixels * feat: adding Progress Bar to Benchmark script (#15719) * rough draft of benchmark script * revisions * revisions * rough draft of benchmark script * revisions * Update requirements/development.in Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * Update superset/utils/mock_data.py Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * more revisions Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * fix: migration downgrade references wrong column (#15791) * fix(dashboard): Add resize handles to right and bottom of component (#15778) * fix(dashboard): Add resize handles to right and bottom of component * Fix test * chore: Add tags to the new viz gallery (#15734) * chore: add tags to gallery * fix UT * fix lint * redesign tags filter * chore: change to Highly-used and fix some css * fix UT Co-authored-by: stephenLYZ <750188453@qq.com> * chore: bump 0.17.70 (#15795) * docs: Adding Sunbird to users list (#15794) * chore: Improves the Select component UI/UX - iteration 4 (#15480) * Add z-index only on maximize (#15800) * chore: remove `retry` dependency in favor of `backoff` (#15788) * chore: remove retry dep in favor of backoff * Fix lint * fix: create fk model in benchmark script (#15804) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * Working on onSave functionality * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> * feat: toggle the ReportModal Icon based on user permissions (#15780) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * first draft * added testing props * cleaned up rebase * changed name and type Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * feat: fetch UI specific reports (#15785) * style: Rough draft of email report modal (#15666) * clears errors when closing out of modal (#15623) * fix: avoid fetching favorite status for anonymous user (#15590) * avoid fetching favorite status for anonymous user * add test + fix types * fix lint errors * Building ReportModal component * Continued ReportModal creation * Visual details updated * CronError style * Very basic testing added Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * first draft * created Api call * added click logic * made the fetch report into a action/reducer * abstracted report action * revision * added reportState to reducer * reports conditions * revisions * revisions Co-authored-by: Lyndsi Kay Williams <55605634+lyndsiWilliams@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> * Dashboard onSave progress * More onSave/create progress * Dashboard POST working! * Dashboard POST relocated to redux * POST now also working in Charts * making linter happy * linter again Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com> Co-authored-by: aspedrosa <aspedrosa@ua.pt> Co-authored-by: Geido <60598000+geido@users.noreply.github.com> Co-authored-by: stellalc7 <stellalc7@gmail.com> Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com> Co-authored-by: Yongjie Zhao <yongjie.zhao@gmail.com> Co-authored-by: stephenLYZ <750188453@qq.com> Co-authored-by: Kumar <kumarks1122@gmail.com> Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
* rough draft of benchmark script * revisions * revisions * rough draft of benchmark script * revisions * Update requirements/development.in Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * Update superset/utils/mock_data.py Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * more revisions Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
* rough draft of benchmark script * revisions * revisions * rough draft of benchmark script * revisions * Update requirements/development.in Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * Update superset/utils/mock_data.py Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * more revisions Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
* rough draft of benchmark script * revisions * revisions * rough draft of benchmark script * revisions * Update requirements/development.in Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * Update superset/utils/mock_data.py Co-authored-by: Beto Dealmeida <roberto@dealmeida.net> * more revisions Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
SUMMARY
This adds a progress bar to the current benchmark script.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
Untitled.mov
TESTING INSTRUCTIONS
ADDITIONAL INFORMATION