eclipse-xtext / eclipse-xtext/xtext

BuildExecutors: ThreadPool not shared

Open
#2,373 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

confirmed enhancement
Dominant language
Java
Stars
831
Forks
330
Avg merge
3d 7h
Merged PRs (30d)
12

Description

When having multiple DSLs which use the ParallelBuilderParticipant a thread pool (with up to 4 threads) is created for every language.

As Xtext compiles the languages sequentially it seems to be ensured that only the threads of one thread pool are working at the same time. Anyway, in my opinion a shared thread pool is a better solution.

Btw. I just stumbled upon this comment in BuildExecutors:

TODO this should be shared accross all languages

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

Start by locating BuildExecutors and the ParallelBuilderParticipant references, then inspect how a thread pool is created for each language during sequential Xtext compilation. Reproduce a build with multiple DSLs and verify that the executors use one shared pool rather than one per language.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.