nodejs/node · error · MBErr
isolate map file not found at %s
Error message
isolate map file not found at %s
What it means
ReadIsolateMap() iterates the -i isolate map files (default infra/mb/gn_isolate_map.pyl). For each, if self.Exists(f) is false, it raises MBErr('isolate map file not found at %s'). This is the missing-file guard for isolate map inputs, checked before any parsing.
Source
Thrown at deps/v8/tools/mb/mb.py:579
try:
contents = ast.literal_eval(self.ReadFile(self.args.config_file))
except SyntaxError as e:
raise MBErr('Failed to parse config file "%s": %s' %
(self.args.config_file, e)) from e
self.configs = contents['configs']
self.luci_tryservers = contents.get('luci_tryservers', {})
self.builder_groups = contents['builder_groups']
self.mixins = contents['mixins']
def ReadIsolateMap(self):
if not self.args.isolate_map_files:
self.args.isolate_map_files = [self.default_isolate_map]
for f in self.args.isolate_map_files:
if not self.Exists(f):
raise MBErr('isolate map file not found at %s' % f)
isolate_maps = {}
for isolate_map in self.args.isolate_map_files:
try:
isolate_map = ast.literal_eval(self.ReadFile(isolate_map))
duplicates = set(isolate_map).intersection(isolate_maps)
if duplicates:
raise MBErr(
'Duplicate targets in isolate map files: %s.' %
', '.join(duplicates))
isolate_maps.update(isolate_map)
except SyntaxError as e:
raise MBErr('Failed to parse isolate map file "%s": %s' %
(isolate_map, e)) from e
return isolate_maps
def ConfigFromArgs(self):
if self.args.config:
if self.args.builder_group or self.args.builder:View on GitHub (pinned to 1b2de5e052)
Solutions
- Check each -i path exists: `ls <path>`; correct typos or supply the right absolute path.
- Run mb.py from the source root so the default infra/mb/gn_isolate_map.pyl resolves.
- Restore the file via `gclient sync` if it's absent from the checkout.
Example fix
// before mb.py gen -i infra/mb/gn_isolatemap.pyl ... // after mb.py gen -i infra/mb/gn_isolate_map.pyl ...
Defensive patterns
Strategy: validation
Validate before calling
import os
for f in isolate_map_files:
if not os.path.isfile(f):
sys.exit(f'isolate map file not found at {f}') Type guard
null
Try / catch
null
Prevention
- Verify each -i path with ls before running mb.
- Run from the source root so the default gn_isolate_map.pyl resolves.
- Keep isolate maps under version control and synced via gclient.
When it happens
Trigger: Running an mb.py subcommand that needs isolate info (gen with isolates, analyze) when an -i path (or the default gn_isolate_map.pyl) does not exist on disk. Exists() returns false and MBErr fires.
Common situations: Passing -i with a typo'd path; the default gn_isolate_map.pyl missing from a shallow/partial checkout; running from the wrong cwd so the relative default doesn't resolve.
Related errors
- config file not found at %s
- Duplicate targets in isolate map files: %s.
- Failed to parse isolate map file "%s": %s
- unrecognized platform string "%s"
- mb config file %s has problems:
AI-assisted analysis of nodejs/node@1b2de5e052 (2026-08-13).
Data as JSON: /api/errors/8dcfb03e6e4ad937.
Report an issue: GitHub.