orange-guo opened a new pull request, #614: URL: https://github.com/apache/guacamole-server/pull/614
This commit introduces a new thread-local storage implementation to replace pthread_key usage in guacamole-server, addressing scalability limitations where systems are typically limited to 1024 pthread keys per process. Key changes: - Add guacamole/thread-local.h: New thread-local storage API compatible with pthread_key - Add thread-local.c: Hash-table based implementation supporting configurable key limits - Update error.c: Replace pthread_key with direct __thread storage for optimal performance - Update rwlock.c: Migrate from pthread_key to guac_thread_local for process-sharing compatibility - Add comprehensive test suite: Basic, multithreaded, stress, and compatibility tests Benefits: - Removes hard 1024 connection limit imposed by pthread_key restrictions - Improves error handling performance with direct __thread access - Maintains full API compatibility with existing pthread_key usage - Supports unlimited keys (configurable, default 1024) via hash-table implementation - Preserves process-shared semantics for rwlock functionality -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@guacamole.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org