diff --git a/src/DatabaseConnection.php b/src/DatabaseConnection.php index ef6fd2b0c2fdf602c6223e5ff628d3e54b32faa4..fe3be9b8ca42cf676bb0baa6faaf2e6e5f65b598 100644 --- a/src/DatabaseConnection.php +++ b/src/DatabaseConnection.php @@ -10,7 +10,6 @@ use PDOStatement; use Psr\Log\LoggerInterface; use Swoole\Database\PDOProxy; use Swoole\Database\PDOStatementProxy; -use Swoole\Event; readonly class DatabaseConnection implements Connection { @@ -38,9 +37,7 @@ readonly class DatabaseConnection implements Connection public function __destruct() { - Event::defer(function (): void { - $this->databaseConnectionPoolRepository->putConnection($this->connectionPoolName, $this->pdo); - }); + $this->databaseConnectionPoolRepository->putConnection($this->connectionPoolName, $this->pdo); } public function beginTransaction(): void diff --git a/src/EventDispatcher.php b/src/EventDispatcher.php index f1f5082cf445a39646bdd591061ecf5a390e3282..42fe2006166fb747e60bc22d67a8c9432365ca9c 100644 --- a/src/EventDispatcher.php +++ b/src/EventDispatcher.php @@ -8,8 +8,8 @@ use Distantmagic\Resonance\Attribute\Singleton; use Distantmagic\SwooleFuture\SwooleFuture; use Distantmagic\SwooleFuture\SwooleFutureResult; use Psr\Log\LoggerInterface; -use Swoole\Event; +use function Distantmagic\Resonance\helpers\coroutineMustGo; use function Swoole\Coroutine\batch; #[Singleton(provides: EventDispatcherInterface::class)] @@ -31,7 +31,7 @@ readonly class EventDispatcher implements EventDispatcherInterface public function dispatch(object $event): void { - Event::defer(function () use ($event): void { + coroutineMustGo(function () use ($event): void { $this->doDispatch($event); }); } diff --git a/src/LlamaCppClient.php b/src/LlamaCppClient.php index d93cf679c5b62b259c450fc5202a803a75b6f3de..289fcc97781eec781c688eb3f20007ad985b9776 100644 --- a/src/LlamaCppClient.php +++ b/src/LlamaCppClient.php @@ -29,7 +29,7 @@ readonly class LlamaCppClient implements LlamaCppClientInterface public function generateCompletion( LlamaCppCompletionRequest $request, - int $timeout = 3600, + int $timeout = 10800, ): LlamaCppCompletionIterator { $serializedRequest = $this->jsonSerializer->serialize($request->toJsonSerializable($this->llmChatHistoryRenderer)); $responseChunks = $this->streamResponse($serializedRequest, '/completion', $timeout); @@ -80,7 +80,7 @@ readonly class LlamaCppClient implements LlamaCppClientInterface */ public function generateInfill( LlamaCppInfillRequest $request, - int $timeout = 3600, + int $timeout = 10800, ): Generator { $serializedRequest = $this->jsonSerializer->serialize($request); $responseChunks = $this->streamResponse($serializedRequest, '/infill', $timeout); diff --git a/src/Session.php b/src/Session.php index 889247e6b2133ce97511b4c62d8182d5ac800a80..b101100538dd17c8b368bd8ccdd7ad051607a48d 100644 --- a/src/Session.php +++ b/src/Session.php @@ -6,7 +6,6 @@ namespace Distantmagic\Resonance; use Ds\Map; use Redis; -use Swoole\Event; readonly class Session { @@ -37,12 +36,10 @@ readonly class Session public function __destruct() { - Event::defer(function (): void { - $this->redisConnectionPoolRepository->putConnection( - $this->sessionConfiguration->redisConnectionPool, - $this->redis, - ); - }); + $this->redisConnectionPoolRepository->putConnection( + $this->sessionConfiguration->redisConnectionPool, + $this->redis, + ); } public function persist(): void