发布

  • Revision 6: Refactor lock mechanism and address andrescrz review feedback

    frostbyte_neo 发布于 2026-06-11 10:44:42 +00:00

    Lock mechanism refactored to semaphore+MapCache approach:

    • RPermitExpirableSemaphoreReactive for atomic capacity-limited locking
    • RMapCacheReactive for tracking permit holders with auto-expiry TTL
    • addSlotPermits for adjusting capacity on annotatorsPerItem changes

    Review feedback from andrescrz:

    • Rename lock_timeout_minutes to lock_timeout_seconds (UInt32, default 300)
    • Move @NonNull from interfaces to implementations
    • Add entity_type filter to feedback_scores queries for index pruning
    • Remove FINAL from authored_feedback_scores and comments queries
    • Full test assertions using recursive comparison
    • Move inner records to top-level classes (LockResponse, LocksResponse, ItemLockInfo)
    • Lombok @RequiredArgsConstructor in AnnotationQueueItemLockServiceImpl
    • CollectionUtils.isEmpty for null-safe feedbackDefinitionNames in DAO
    • Flatten nested flatMap in tryLockItem
    • Remove Jakarta validation test, parameterize update tests
    下载附件