Skip to content

[k2] implement ignore_user_abort for HTTP server mode#1556

Open
apolyakov wants to merge 16 commits intomasterfrom
apolyakov/k2-ignore-user-abort
Open

[k2] implement ignore_user_abort for HTTP server mode#1556
apolyakov wants to merge 16 commits intomasterfrom
apolyakov/k2-ignore-user-abort

Conversation

@apolyakov
Copy link
Contributor

@apolyakov apolyakov commented Mar 18, 2026

Core Features

  1. New kphp::component::connection class: encapsulates stream, user abort handling, and ignore_user_abort level management
  2. PHP ignore_user_abort implementation: currently supports HTTP server mode only
  3. kphp::coro::event improvements: made it movable
  4. kphp::coro::when_any fix for void tasks: fixed void task handling to properly yield and return results

Supporting Changes

  • runtime-light/k2-platform/k2-api.h: Added errno codes (errno_ebusy, errno_eopnotsupp, errno_ealready, errno_einprogress)
  • runtime-light/streams/stream.h: Added status method to query stream status
  • ScriptAllocatorManaged: Moved to kphp::memory namespace
  • f$exit/f$die: Moved from separate header to system-functions.h, using new kphp::system::exit()
  • New kphp::forks::scoped_id_managed RAII helper for fork ID management

@apolyakov apolyakov added this to the next milestone Mar 18, 2026
@apolyakov apolyakov self-assigned this Mar 18, 2026
@apolyakov apolyakov added the k2 k2 related label Mar 18, 2026
@apolyakov apolyakov force-pushed the apolyakov/k2-ignore-user-abort branch 3 times, most recently from 653d8cf to 5db0d44 Compare March 20, 2026 17:53
@apolyakov apolyakov force-pushed the apolyakov/k2-ignore-user-abort branch from 5db0d44 to 62fef82 Compare March 20, 2026 17:53
@apolyakov apolyakov changed the title [k2] implement dummy ignore_user_abort [k2] implement ignore_user_abort for HTTP server mode Mar 20, 2026
@apolyakov apolyakov force-pushed the apolyakov/k2-ignore-user-abort branch from a26d6d5 to 92ff47b Compare March 21, 2026 14:29
@apolyakov apolyakov force-pushed the apolyakov/k2-ignore-user-abort branch from 01448c2 to ad0bfc2 Compare March 21, 2026 19:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

k2 k2 related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant