26 Commits

Author SHA1 Message Date
Spottedleaf
80ab57dcbe Rebuild patches 2025-04-03 15:38:29 -07:00
Spottedleaf
7452818d16 Add new tick region scheduler
The old region scheduler had a few problems:
1. Inability to process intermediate tasks (chunk/packets) leading
   to higher than Paper/Vanilla latencies for task processing
2. Thread swapping: scheduled tasks had no thread preference, which
   lead to them swapping threads which may not be cache efficient

The new scheduler solves both of these issues. The new scheduler
can process intermediate tasks, and combined with the new packet
scheduler this allows packets to be processed at low latency
provided that the scheduler threads are idle or waiting.

The new scheduler will only move a scheduled tick/task to another
scheduling thread provided that its scheduled start is missed by
a specified time (for now, 2ms). This should ensure that thread
swapping only occurs to meet scheduling deadlines.
2025-04-03 15:37:31 -07:00
Spottedleaf
2986741444 Update Paper 2025-04-03 15:34:54 -07:00
Spottedleaf
bc157c78bc Update Paper 2025-03-20 12:56:40 -07:00
Spottedleaf
d3969cdc41 Update Paper 2025-03-09 12:50:14 -07:00
Spottedleaf
d4cf71c327 Update Paper 2025-03-08 06:39:17 -08:00
Spottedleaf
4b4c10cfc0 Update Paper 2025-02-27 22:48:16 -08:00
Spottedleaf
32c2b33dcc Update Paper 2025-02-16 12:23:20 -08:00
Spottedleaf
d17fb532f1 Move file patches to feature patches
This is to assist in updating upstream, as the current file patch
system is brittle and fails to handle conflicts well.
2025-02-16 12:17:53 -08:00
Spottedleaf
710d77e354 Update Paper 2025-02-16 12:00:31 -08:00
Spottedleaf
5b5e45a560 Update Paper 2025-02-13 16:28:47 -08:00
Spottedleaf
8b9ddf1859 Update Paper 2025-02-10 12:24:57 -08:00
Spottedleaf
5558184374 Update Paper 2025-02-02 11:25:26 -08:00
Spottedleaf
873afea939 Update Paper 2025-01-28 18:22:53 -08:00
Spottedleaf
b05f1ef01d Remove MSPT command
Users should use the improved /tps command instead, as the
mspt command is not implemented correctly in Folia.
2025-01-28 17:07:07 -08:00
Spottedleaf
f8132c51c3 Properly implement force loaded chunk API
We need to verify that the methods are only being invoked
on the global region.

Additionally, do not use CraftWorld#getChunk for retrieving
the Chunk object as it would trip a thread check. Rather,
we construct the CraftChunk manually as it is simply
a world+coordinates wrapper. The call never needed to block
until the chunk was loaded either.
2025-01-28 17:02:50 -08:00
Spottedleaf
87f8bd3e00 Implement Bukkit#getTps
Note that this requires the caller to be on a ticking region
or the global region, otherwise it will throw
UnsupportedOperationException.

Now the function returns the TPS for the current region.
2025-01-28 16:50:39 -08:00
Euphyllia Bierque
1f0b85d4e4 Add API to retrieve TPS from a specified location
Resolves https://github.com/PaperMC/Folia/pull/310
2025-01-28 16:49:08 -08:00
Spottedleaf
81b9f70be9 Update Paper 2025-01-28 14:03:45 -08:00
Spottedleaf
41eab7ad00 Update Paper 2025-01-25 11:37:24 -08:00
Spottedleaf
4e7607dce4 Update Paper 2025-01-22 12:11:28 -08:00
Spottedleaf
306dc07ce6 Update Paper 2025-01-16 14:31:34 -08:00
Spottedleaf
5198c2f583 Update Paper 2025-01-14 11:22:26 -08:00
Spottedleaf
7dbde1de00 Rebuild patches 2025-01-11 06:46:58 -08:00
Spottedleaf
504f90840b Split paper feature patches into file patches 2025-01-11 06:42:06 -08:00
Spottedleaf
838465ab24 Begin hard fork 2025-01-11 05:26:16 -08:00