@@ -11,18 +11,21 @@ use pgwire::api::query::{ExtendedQueryHandler, SimpleQueryHandler};
1111use pgwire:: api:: results:: { DescribePortalResponse , DescribeStatementResponse , Response } ;
1212use pgwire:: api:: stmt:: QueryParser ;
1313use pgwire:: api:: stmt:: StoredStatement ;
14- use pgwire:: api:: { ClientInfo , PgWireHandlerFactory , Type } ;
14+ use pgwire:: api:: { ClientInfo , NoopErrorHandler , PgWireServerHandlers , Type } ;
1515use pgwire:: error:: { PgWireError , PgWireResult } ;
1616
1717use crate :: datatypes:: { self , into_pg_type} ;
1818
1919pub struct HandlerFactory ( pub Arc < DfSessionService > ) ;
2020
21- impl PgWireHandlerFactory for HandlerFactory {
22- type StartupHandler = NoopStartupHandler ;
21+ impl NoopStartupHandler for DfSessionService { }
22+
23+ impl PgWireServerHandlers for HandlerFactory {
24+ type StartupHandler = DfSessionService ;
2325 type SimpleQueryHandler = DfSessionService ;
2426 type ExtendedQueryHandler = DfSessionService ;
2527 type CopyHandler = NoopCopyHandler ;
28+ type ErrorHandler = NoopErrorHandler ;
2629
2730 fn simple_query_handler ( & self ) -> Arc < Self :: SimpleQueryHandler > {
2831 self . 0 . clone ( )
@@ -33,12 +36,16 @@ impl PgWireHandlerFactory for HandlerFactory {
3336 }
3437
3538 fn startup_handler ( & self ) -> Arc < Self :: StartupHandler > {
36- Arc :: new ( NoopStartupHandler )
39+ self . 0 . clone ( )
3740 }
3841
3942 fn copy_handler ( & self ) -> Arc < Self :: CopyHandler > {
4043 Arc :: new ( NoopCopyHandler )
4144 }
45+
46+ fn error_handler ( & self ) -> Arc < Self :: ErrorHandler > {
47+ Arc :: new ( NoopErrorHandler )
48+ }
4249}
4350
4451pub struct DfSessionService {
0 commit comments