@@ -363,7 +363,8 @@ def __init__(self, host, port,
363
363
ssl_ca_file = DEFAULT_SSL_CA_FILE ,
364
364
ssl_ciphers = DEFAULT_SSL_CIPHERS ,
365
365
packer_factory = default_packer_factory ,
366
- unpacker_factory = default_unpacker_factory ):
366
+ unpacker_factory = default_unpacker_factory ,
367
+ fetch_schema = True ):
367
368
"""
368
369
:param host: Server hostname or IP address. Use ``None`` for
369
370
Unix sockets.
@@ -533,8 +534,10 @@ def __init__(self, host, port,
533
534
self .socket_timeout = socket_timeout
534
535
self .reconnect_delay = reconnect_delay
535
536
self .reconnect_max_attempts = reconnect_max_attempts
536
- self .schema = Schema (self )
537
- self .schema_version = 1
537
+ self .fetch_schema = fetch_schema
538
+ if self .fetch_schema :
539
+ self .schema = Schema (self )
540
+ self .schema_version = 1
538
541
self ._socket = None
539
542
self .connected = False
540
543
self .error = True
@@ -745,7 +748,8 @@ def connect(self):
745
748
if self .transport == SSL_TRANSPORT :
746
749
self .wrap_socket_ssl ()
747
750
self .handshake ()
748
- self .load_schema ()
751
+ if self .fetch_schema :
752
+ self .load_schema ()
749
753
self ._check_features ()
750
754
except SslError as e :
751
755
raise e
@@ -841,7 +845,8 @@ def _send_request_wo_reconnect(self, request, on_push=None, on_push_ctx=None):
841
845
response = request .response_class (self , self ._read_response ())
842
846
break
843
847
except SchemaReloadException as e :
844
- self .update_schema (e .schema_version )
848
+ if self .fetch_schema :
849
+ self .update_schema (e .schema_version )
845
850
continue
846
851
847
852
while response ._code == IPROTO_CHUNK :
0 commit comments