mirror of
				https://github.com/open-webui/mcpo
				synced 2025-06-26 18:26:58 +00:00 
			
		
		
		
	Merge pull request #162 from 021gink/graceful-uvicorn-shutdown
Gracefully shutdown uvicorn.Server on task cancellation in run()
This commit is contained in:
		
						commit
						663f7312bb
					
				| @ -2,6 +2,7 @@ import json | |||||||
| import os | import os | ||||||
| import logging | import logging | ||||||
| import socket | import socket | ||||||
|  | import asyncio | ||||||
| from contextlib import AsyncExitStack, asynccontextmanager | from contextlib import AsyncExitStack, asynccontextmanager | ||||||
| from typing import Optional | from typing import Optional | ||||||
| 
 | 
 | ||||||
| @ -341,4 +342,9 @@ async def run( | |||||||
|     ) |     ) | ||||||
|     server = uvicorn.Server(config) |     server = uvicorn.Server(config) | ||||||
| 
 | 
 | ||||||
|     await server.serve() |     try: | ||||||
|  |         await server.serve() | ||||||
|  |     except asyncio.CancelledError: | ||||||
|  |         server.should_exit = True | ||||||
|  |         await server.shutdown() | ||||||
|  |         raise  | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user