tensorflow / tensorflow/tensorboard

Plugin does not appear to be active especially when reload is disabled

Open
#2,133 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

core:frontend
Dominant language
TypeScript
Stars
7.2k
Forks
1.7k
Avg merge
4d 22h
Merged PRs (30d)
1

Description

To repro:

bazel run tensorboard/plugins/profile:profile_demo
bazel run tensorboard -- --logdir /tmp/profile_demo
# In browser, launch http://localhost:6006/#profile

image

Cause: due to a change in profile plugin (probably related to the dummy event file), there now is a race condition where when launching the app, plugins_listing says the plugin is not active. However, because we launched into the profile plugin, the profile plugin frontend makes the request and is able to resolve. Unfortunately, because our plugin system can control whether data reloads(1), tf-tensorboard never refetches(2) the plugins-listing causing the race condition to never correct.

(1): https://github.com/tensorflow/tensorboard/blob/90a386d1da4d9f477cb60b679f07aa98045d8c7e/tensorboard/plugins/profile/tf_profile_dashboard/tf-profile-dashboard.html#L687
(2): https://github.com/tensorflow/tensorboard/blob/90a386d1da4d9f477cb60b679f07aa98045d8c7e/tensorboard/components/tf_tensorboard/tf-tensorboard.html#L869-L882

Possible solution: Make certain core endpoint reload (environment and plugins_listing) in all situation.

EDIT:
This bug impacts the projector plugin too. When first loading the app, the projector plugin, although should be active, appears to be inactive. Only after another reload, it appears to be active. This is a regression from the previous version.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the profile demo with the listed Bazel commands, then inspect tf_profile_dashboard/tf-profile-dashboard.html around line 687 and components/tf_tensorboard/tf-tensorboard.html around lines 869-882. Trace how reload-disabled plugins interact with the environment and plugins_listing requests. Done means profile and projector are shown as active on the initial load without requiring another reload.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.