Direct answer
The global region handles server-wide state such as game rules, time, weather, the world border and console commands. It does not own ordinary chunk and entity data. An expensive global task can still affect that task queue, but that does not mean all Folia regions share one main thread.
How to check it
- Identify whether the slow work is a console command, global plugin timer, world-wide operation or ordinary gameplay in one location.
- Reproduce the operation on a test server with the same plugin versions; record its duration and any thread-ownership exception in logs.
- Use profiling and per-region observations where supported by your Folia build. Do not interpret one region’s TPS/MSPT as a measurement of every region.
What to change
Move location-specific block/chunk work onto the RegionScheduler and entity work onto the EntityScheduler. Put only truly global state handling onto the global scheduler.
Never move a world modification to an asynchronous Java thread merely to make it “faster”; async tasks are for work that does not touch unsafe server state.
Folia has independent region tick counters and a separate global-region clock. Exact profiling commands and exposed metrics depend on the build; avoid treating a global statistic as proof of which region is overloaded.
Software and version notes
These are Folia architectural and API concepts; test against the exact Folia and Paper API build you deploy. Do not apply generic Paper single-thread assumptions.
Verify the result
Repeat the same command and observe whether the time spent on global work drops without generating cross-region access errors or breaking world state.