diff --git a/AUTHORS.md b/AUTHORS.md index a4264a0ad..a99170750 100644 --- a/AUTHORS.md +++ b/AUTHORS.md @@ -141,7 +141,7 @@ This version focused on making the server accessible to the broader community an * Transmog/plate data persistence fixes * Logout flow improvements preventing data loss * Config file handling improvements -* Alpelo object system backport +* Object ID allocation rework (per-session IDs, stage entry notification cleanup) * Security updates (golang dependencies) **Technical Details:** diff --git a/CHANGELOG.md b/CHANGELOG.md index 3981da685..6ab203d00 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- Alpelo object system backport functionality +- Rework object ID allocation: per-session IDs replace shared map, simplify stage entry notifications - Better config file handling and structure - Comprehensive production logging for save operations (warehouse, Koryo points, savedata, Hunter Navi, plate equipment) - Disconnect type tracking (graceful, connection_lost, error) with detailed logging diff --git a/server/channelserver/handlers_object_test.go b/server/channelserver/handlers_object_test.go index 52a9dbae9..e6858552f 100644 --- a/server/channelserver/handlers_object_test.go +++ b/server/channelserver/handlers_object_test.go @@ -306,8 +306,7 @@ func TestObjectHandlers_SequentialCreateObject(t *testing.T) { stage := NewStage("test_stage") // Create objects sequentially from multiple sessions - // Note: handleMsgSysCreateObject has a race condition in NextObjectID - // so we test sequential creation instead + // Test sequential object creation across multiple sessions for i := 0; i < 10; i++ { session := createMockSession(uint32(i), server) session.stage = stage