@@ -1380,6 +1380,9 @@ def __init__(self,
13801380 rebalance_period_sec : Optional [int ] = 7 ,
13811381 max_gws_in_grp : Optional [int ] = 16 ,
13821382 max_ns_to_change_lb_grp : Optional [int ] = 8 ,
1383+ abort_on_errors : Optional [bool ] = True ,
1384+ omap_file_ignore_unlock_errors : Optional [bool ] = False ,
1385+ omap_file_lock_on_read : Optional [bool ] = True ,
13831386 omap_file_lock_duration : Optional [int ] = 20 ,
13841387 omap_file_lock_retries : Optional [int ] = 30 ,
13851388 omap_file_lock_retry_sleep_interval : Optional [float ] = 1.0 ,
@@ -1400,7 +1403,7 @@ def __init__(self,
14001403 max_namespaces_with_netmask : Optional [int ] = 1000 ,
14011404 max_subsystems : Optional [int ] = 128 ,
14021405 max_hosts : Optional [int ] = 2048 ,
1403- max_namespaces : Optional [int ] = 1024 ,
1406+ max_namespaces : Optional [int ] = 2048 ,
14041407 max_namespaces_per_subsystem : Optional [int ] = 256 ,
14051408 max_hosts_per_subsystem : Optional [int ] = 128 ,
14061409 server_key : Optional [str ] = None ,
@@ -1428,6 +1431,7 @@ def __init__(self,
14281431 discovery_addr : Optional [str ] = None ,
14291432 discovery_addr_map : Optional [Dict [str , str ]] = None ,
14301433 discovery_port : Optional [int ] = None ,
1434+ abort_discovery_on_errors : Optional [bool ] = True ,
14311435 log_level : Optional [str ] = 'INFO' ,
14321436 log_files_enabled : Optional [bool ] = True ,
14331437 log_files_rotation_enabled : Optional [bool ] = True ,
@@ -1497,6 +1501,12 @@ def __init__(self,
14971501 self .verify_keys = verify_keys
14981502 #: ``verify_listener_ip`` enables verification of listener IP address
14991503 self .verify_listener_ip = verify_listener_ip
1504+ #: ``abort_on_errors`` abort gateway in case of errors
1505+ self .abort_on_errors = abort_on_errors
1506+ #: ``omap_file_ignore_unlock_errors`` ignore errors when unlocking the OMAP file
1507+ self .omap_file_ignore_unlock_errors = omap_file_ignore_unlock_errors
1508+ #: ``omap_file_lock_on_read`` lock omap when reading its content
1509+ self .omap_file_lock_on_read = omap_file_lock_on_read
15001510 #: ``omap_file_lock_duration`` number of seconds before automatically unlock OMAP file lock
15011511 self .omap_file_lock_duration = omap_file_lock_duration
15021512 #: ``omap_file_lock_retries`` number of retries to lock OMAP file before giving up
@@ -1587,6 +1597,8 @@ def __init__(self,
15871597 self .discovery_addr_map = discovery_addr_map
15881598 #: ``discovery_port`` port of the discovery service
15891599 self .discovery_port = discovery_port or 8009
1600+ #: ``abort_discovery_on_errors`` abort discovery service in case of errors
1601+ self .abort_discovery_on_errors = abort_discovery_on_errors
15901602 #: ``log_level`` the nvmeof gateway log level
15911603 self .log_level = log_level or 'INFO'
15921604 #: ``log_files_enabled`` enables the usage of files to keep the nameof gateway log
@@ -1694,6 +1706,9 @@ def validate(self) -> None:
16941706 verify_non_negative_int (self .max_gws_in_grp , "Max gateways in group" )
16951707 verify_non_negative_int (self .max_ns_to_change_lb_grp ,
16961708 "Max namespaces to change load balancing group" )
1709+ verify_boolean (self .abort_on_errors , "Abort gateway on errors" )
1710+ verify_boolean (self .omap_file_ignore_unlock_errors , "Ignore OMAP file unlock errors" )
1711+ verify_boolean (self .omap_file_lock_on_read , "Lock OMAP on read" )
16971712 verify_non_negative_int (self .omap_file_lock_duration , "OMAP file lock duration" )
16981713 verify_non_negative_number (self .omap_file_lock_retry_sleep_interval ,
16991714 "OMAP file lock sleep interval" )
@@ -1713,6 +1728,7 @@ def validate(self) -> None:
17131728 verify_non_negative_number (self .monitor_timeout , "Monitor timeout" )
17141729 verify_non_negative_int (self .port , "Port" )
17151730 verify_non_negative_int (self .discovery_port , "Discovery port" )
1731+ verify_boolean (self .abort_discovery_on_errors , "Abort discovery service on errors" )
17161732 verify_non_negative_int (self .prometheus_port , "Prometheus port" )
17171733 verify_non_negative_int (self .prometheus_stats_interval , "Prometheus stats interval" )
17181734 verify_boolean (self .state_update_notify , "State update notify" )
0 commit comments