@@ -124,7 +124,7 @@ impl SessionManager {
124
124
let user_api = UserApiProvider :: instance ( ) ;
125
125
let session_settings = Settings :: try_create ( & config, user_api, tenant) . await ?;
126
126
let session_ctx = SessionContext :: try_create ( config. clone ( ) , session_settings) ?;
127
- let session = Session :: try_create ( id, typ, session_ctx, mysql_conn_id) ?;
127
+ let session = Session :: try_create ( id, typ. clone ( ) , session_ctx, mysql_conn_id) ?;
128
128
129
129
let mut sessions = self . active_sessions . write ( ) ;
130
130
if sessions. len ( ) < self . max_sessions {
@@ -134,7 +134,12 @@ impl SessionManager {
134
134
& config. query . cluster_id ,
135
135
) ;
136
136
137
- sessions. insert ( session. get_id ( ) , session. clone ( ) ) ;
137
+ match typ {
138
+ SessionType :: FlightRPC => { }
139
+ _ => {
140
+ sessions. insert ( session. get_id ( ) , session. clone ( ) ) ;
141
+ }
142
+ }
138
143
139
144
Ok ( session)
140
145
} else {
@@ -144,47 +149,6 @@ impl SessionManager {
144
149
}
145
150
}
146
151
147
- pub async fn create_rpc_session (
148
- self : & Arc < Self > ,
149
- id : String ,
150
- aborted : bool ,
151
- ) -> Result < Arc < Session > > {
152
- // TODO: maybe deadlock?
153
- let config = self . get_conf ( ) ;
154
- {
155
- let sessions = self . active_sessions . read ( ) ;
156
- let v = sessions. get ( & id) ;
157
- if v. is_some ( ) {
158
- return Ok ( v. unwrap ( ) . clone ( ) ) ;
159
- }
160
- }
161
-
162
- let tenant = config. query . tenant_id . clone ( ) ;
163
- let user_api = UserApiProvider :: instance ( ) ;
164
- let session_settings = Settings :: try_create ( & config, user_api, tenant) . await ?;
165
- let session_ctx = SessionContext :: try_create ( config. clone ( ) , session_settings) ?;
166
- let session = Session :: try_create ( id. clone ( ) , SessionType :: FlightRPC , session_ctx, None ) ?;
167
-
168
- let mut sessions = self . active_sessions . write ( ) ;
169
- let v = sessions. get ( & id) ;
170
- if v. is_none ( ) {
171
- if aborted {
172
- return Err ( ErrorCode :: AbortedSession ( "Aborting server." ) ) ;
173
- }
174
-
175
- label_counter (
176
- super :: metrics:: METRIC_SESSION_CONNECT_NUMBERS ,
177
- & config. query . tenant_id ,
178
- & config. query . cluster_id ,
179
- ) ;
180
-
181
- sessions. insert ( id, session. clone ( ) ) ;
182
- Ok ( session)
183
- } else {
184
- Ok ( v. unwrap ( ) . clone ( ) )
185
- }
186
- }
187
-
188
152
#[ allow( clippy:: ptr_arg) ]
189
153
pub async fn get_session_by_id ( self : & Arc < Self > , id : & str ) -> Option < Arc < Session > > {
190
154
let sessions = self . active_sessions . read ( ) ;
0 commit comments