[LMDB_CACHE] ; Path to the file where an LMDB si2csi cache file is located ; If not provided then no cache will be used. dbfile_si2csi= ;dbfile_si2csi=/data/PSG/cache/si2csi.db ; Path to the file where an LMDB bioseq_info cache file is located ; If not provided then no cache will be used. dbfile_bioseq_info= ;dbfile_bioseq_info=/data/PSG/cache/bioseq_info.db ; Path to the file where an LMDB blob_prop cache file is located ; If not provided then no cache will be used. dbfile_blob_prop= ;dbfile_blob_prop=/data/PSG/cache/blob_prop.db ; Enable LMDB read-ahead functionality ; dflt: false read_ahead=false [AUTO_EXCLUDE] ; Cache size per client. ; 0 - means it is disabled. ; Default: 1000 max_cache_size=1000 ; The percentage of the records to purge (of max_cache_size; 0 <= int <= 100) ; Default: 20 purge_percentage=20 ; Client inactivity purge timeout, seconds, integer. ; Used for garbage collecting ; Default: 60 inactivity_purge_timeout=60 [SERVER] ; HTTP port (1...65534) ; No default. If port is not specified or is out of range the server ; will not start port=@PORT@ ; Number of HTTP workers (1...100) ; Default: 64 workers=64 ; Listener backlog (5...2048) ; Default: 256 backlog=256 ; Max number of connections (5...65000) ; Default: 4096 maxconn=4096 ; Soft max number of the connections ; When reached then the new connections will handle only livez ; end points. All the other requests on the connections above the limit will ; receive 503 (service unavailable), The connections establised before reaching ; the soft limit will handle all the requests as usual. ; Default: 3840 (i.e. 4096(maxconn) - 256) maxconnsoftlimit=3840 ; Operation timeout in milliseconds ; Default: 30000 optimeout=30000 ; Max Cassandra operation retries ; Default: 2 maxretries=2 ; Affects request start/request stop ; Does not affect PSG_INFO, PSG_ERROR etc log=true ; yield applog extra for an operation if the operation takes longer than ; the provided threshold and the log is set to true ; 0 means the feature is switched off ; default: 1000 ms log_timing_threshold=1000 ; In the "no logging" mode, still do some "log sampling" -- i.e. fully log ; each request which session id checksum divided by log_sampling_ratio value ; withe zero rest. ; Default: 0 (means no log sampling) ; log_sampling_ratio = log_sampling_ratio=0 ; Cassandra root keyspace which is used for discovering the sat to keyspace ; mapping as well as the location of the SI2CSI and BIOSEQ_INFO tables ; Default: sat_info3 root_keyspace=sat_info3 ; Cassandra configuration domain in the root keyspace ; Default: PSG configuration_domain=PSG ; In most cases the blobs are not split because they are... just too small to ; be split. So, in the spirit of the "slim/smart" purpose such original blobs ; should be sent to the client. ; Default: 10KB send_blob_if_small=10KB ; Max number of hops allowed. ; It must be an integer > 0. ; Default: 2 max_hops=2 ; If the blob has already been sent to the client more than this timeout then ; the blob will be sent anyway. If less then the 'already sent' reply will ; specify how long ago the blob was sent. ; Must be >= 0, float in seconds ; The special value 0 means that the blob will be sent even if it is in the ; cache ; Default: 0.2 sec resend_timeout=0.2 ; Timeout for each processor executing a request. If exceeded then the ; dispatcher will invoke Cancel() for each still working processor. ; Must be > 0, float in seconds ; Default: 30 sec request_timeout=30 ; Server will auto-shutdown if the number of open file descriptors exceeds this ; threshold. ; Zero means no auto-shutdown. ; In SSL mode (where there is a bug leading to the leakage of client ; connections) the default is set to a reasonable non-zero value (8000) ; See JIRA CXX-12380 for details. ShutdownIfTooManyOpenFD=0 ; Max number of concurrent processors of a certain type which can be ; instantiated to handle a request ; Default: 1200 ProcessorMaxConcurrency=1200 ; High mark for the number of blobs in the split info cache. ; Low mark is calculated as 0.8 of the high mark. ; The cleanup is done basing on last touch when the high mark is exceeded. ; The least used blobs are removed till the low mark is reached. ; A monitoring thread is responsible for initiating the cleanup. split_info_blob_cache_size=1000 ; The max number of request in a backlog list per http connection ; It must be > 0 ; Default: 1024 http_max_backlog= 1024 ; The maximum number of simultaneously running requests per http connection ; It must be > 0 ; Default: 64 http_max_running=64 [ADMIN] ; Authorization token for the shutdown request. ; If provided then the URL shutdown request must have the corresponding ; auth_token parameter to be authorized. ; If not provided then any URL shutdown request will be authorized. ; Both, clear text and encrypted text are supported. If it is impossible to ; decrypt the value, then the value is treated as a clear text auth_token= ; A list of ADMIN/ url names which will be protected by the ; [ADMIN]/auth_token in case it is provided ; Default: config status shutdown get_alerts ack_alert statistics auth_commands=config status shutdown get_alerts ack_alert statistics [STATISTICS] ; The statistics for the blob retrieving timing is collected depending on ; the blob sizes in separate bins. The first bin covers the range of sizes ; from 0 till small_blob_size inclusive. Then the ranges will start from the ; power of 2. ; Default: 16 small_blob_size=16 ; Min time value (microseconds) ; Default: 0 min=0 ; Max time value (microseconds) ; Default: 16 * 1024 * 1024 max=16777216 ; Number of bins ; Default: 24 n_bins=24 ; Scale type ; can be "log" or "linear" ; Default: log type=log ; Histogram rotation time interval (tick), in seconds. ; Must be an integer greater than zero. ; Default (also a fallback on bad value): 10 tick_span = 10 ; Limits the timing collection. ; If an empty string then there is no limit. Otherwise a name of a processor ; groups can be provided and the timing will be collected only for that group. ; Currently the following group names are supported: ; CASSANDRA ; CDD ; SNP ; WGS ; Note: the value is case sensitive ; Default: empty string only_for_processor="" [CASSANDRA_DB] ; Connection timeout in ms ; Default: 30000 ctimeout=15000 ; Query timeout in ms ; Default: 5000 qtimeout=2500 ; Retry timeout in ms ; Default: [CASSANDRA_DB]/qtimeout qtimeout_retry=500 ; Data namespace ; Default: empty string namespace= ; Load balancing policy. Accepted values are: DCAware, RoundRobin ; Default: DCAware loadbalancing=DCAware ; Enables TokenAware routing ; Default: true tokenaware=true ; Enables LatencyAware routing ; Default: true latencyaware=true ; Number of io threads to async processing (1...32) ; Basically it is how many blob chunks are requested simultaneously per request. ; For example, if a blob with 100 chunks is requested then 4 select statements ; will be created and maintained simultaneously. ; Default: 4 numthreadsio=4 ; Number of connections per node (1...8) ; Default: 2 numconnperhost=2 ; TCP keep-alive the initial delay in seconds ; Default: 0 keepalive=0 ; Cassandra password file and a section where credentials are stored ; Default: empty, i.e. no user/password combination is used. ;password_file=/home/dmitrie1/.ssh/cass.ini ;password_section=BIGDATAPROD_RO ; LBSM name or a list of host[:port] items (',' or ' ' separated). ; If the value has neither ' ', nor ',' nor ':' then it is treated as a ; load balancer name. The load balancer resolved host ports are are sorted ; in accordance with their rates. ; The list of host[:port] items, regardless where it came from - directly from ; a parameter value or from a load balancer - is analyzed further. The ; analizis checks that if ports are provided then they are the same. If the ; port is provided then it is used for the Cassandra cluster. If no ports are ; provided then the Cassandra driver uses its default one. ;service=localhost:9042 ;service=idtest111:9042 ;service=idtest214:9042 service=ID_CASS_TEST ;service=idtest111,idtest112,idtest114,idtest211,idtest212,idtest213,idtest214 ;service=idstore11,idstore12,idstore13,idstore14,idstore15,idstore16,idstore17,idstore18 [CASSANDRA_SECURE_DB] ; Connection timeout in ms ; Default: 30000 ctimeout=15000 ; Query timeout in ms ; Default: 5000 qtimeout=2500 ; Retry timeout in ms ; Default: [CASSANDRA_DB]/qtimeout qtimeout_retry=500 ; Data namespace ; Default: empty string namespace=sat_info_secure ; Load balancing policy. Accepted values are: DCAware, RoundRobin ; Default: DCAware loadbalancing=DCAware ; Enables TokenAware routing ; Default: true tokenaware=true ; Enables LatencyAware routing ; Default: true latencyaware=true ; Number of io threads to async processing (1...32) ; Basically it is how many blob chunks are requested simultaneously per request. ; For example, if a blob with 100 chunks is requested then 4 select statements ; will be created and maintained simultaneously. ; Default: 4 numthreadsio=4 ; Number of connections per node (1...8) ; Default: 2 numconnperhost=2 ; TCP keep-alive the initial delay in seconds ; Default: 0 keepalive=0 ; Cassandra password file and a section where credentials are stored ; Default: empty, i.e. no user/password combination is used. ;password_file=/home/dmitrie1/.ssh/cass.ini ;password_section=BIGDATAPROD_RO ; LBSM name or a list of host[:port] items (',' or ' ' separated). ; If the value has neither ' ', nor ',' nor ':' then it is treated as a ; load balancer name. The load balancer resolved host ports are are sorted ; in accordance with their rates. ; The list of host[:port] items, regardless where it came from - directly from ; a parameter value or from a load balancer - is analyzed further. The ; analizis checks that if ports are provided then they are the same. If the ; port is provided then it is used for the Cassandra cluster. If no ports are ; provided then the Cassandra driver uses its default one. ;service=localhost:9042 ;service=idtest111:9042 ;service=idtest214:9042 service=ID_CASS_TEST ;service=idtest111,idtest112,idtest114,idtest211,idtest212,idtest213,idtest214 ;service=idstore11,idstore12,idstore13,idstore14,idstore15,idstore16,idstore17,idstore18 [DEBUG] ; If set to true then psg will respond to TEST/io URL sending back up to ; 1000000000 bytes psg_allow_io_test=false ; If set then for each processor timestamps are collected for: ; - Process() invoke ; - SignalStartProcessing() ; - SignalFinishProcessing() allow_processor_timing=false DIAG_POST_LEVEL=Error ;DIAG_POST_LEVEL=Warning ;DIAG_POST_LEVEL=Info ; Tracing is independent from the diag post level ; To switch on tracing use diag_trace set to something (true, on, etc) ; To switch off tracing comment out diag_trace ; By some reasons diag_trace type is string, not boolean and it is checked for ; non emptyness ;diag_trace=true [COUNTERS] ; Each value in this section is for overwriting the server default metrics ; names and descriptions. The format is as follows: ; MetricID=::: ; e.g. ; LookupLmdbBlobPropFound=BLOB props found in LMDB:::Time required to find BLOB props in LMDB ; The metric names and descriptions are used by the GRID Dashboard [CASSANDRA_PROCESSOR] ; Enable/disable all Cassandra/LMDB processors if not explicitly specified ; in the URL parameters. ; Default: enabled (enabled=true) enabled=true ; Max number of concurrent cassandra processors which can be ; instantiated to handle a request ; Default: [SERVER]/ProcessorMaxConcurrency ProcessorMaxConcurrency=2000 ; Enable simulated errors in PSG replies, evert "error_rate" reply ; Default: 0 (no simulated errors) error_rate=0 ; The args to use for testing the health of the data source. ; For the Cassandra database health check we try resolving a seq-id. ; Default: /ID/resolve?seq_id=gi|2&use_cache=no health_command=/ID/resolve?seq_id=gi|2&use_cache=no ; Timeout to wait for a completed reply for the 'health_command' (seconds) ; Default: 0 (means to use [HEALTH].timeout) health_timeout=0 ; Always resolve seq-ids, regardless of the value of 'seq_id_resolve' URL arg ; Default: false (i . e., do heed the value of 'seq_id_resolve' URL arg) seq_id_resolve_always=false [LMDB_PROCESSOR] ; The args to use for testing the health of the data source. ; For the Cassandra database health check we try resolving a seq-id. ; Default: /ID/resolve?seq_id=gi|2&use_cache=yes health_command=/ID/resolve?seq_id=gi|2&use_cache=yes ; Timeout to wait for a completed reply for the 'health_command' (seconds) ; Default: 0 (means to use [HEALTH].timeout) health_timeout=0 [HEALTH] ; Obsolete ; The seq_id which is resolved in cache only when /health or /deep-health URL is requested ; Default: gi|2 test_seq_id=gi|2 ; Obsolete ; Ignore/do not ignore test seq_id resolution errors ; Default: true (ignore errors) test_seq_id_ignore_error=true ; List of data sources whose health is considered critical (affects overall ; HTTP reply status) ; Only these backends will be tested in non-verbose mode ; Available (not case sensitive) names: CASSANDRA, LMDB, WGS, CDD, SNP, NONE ; If only "NONE" is used then assume the list to be empty, return 200 always. ; Default: CASSANDRA critical_data_sources=CASSANDRA ; Default timeout to wait for a completed reply to a HEALTH command (seconds) ; It can be overridden by (non-zero) [FOO_PROCESSOR].health_timeout ; Default: 0.5 timeout=0.5 [PSG] ; Reduce the default number of I/O threads for the PSG API. ; It is used for the z end points when a self connection is established num_io=1 [SSL] ; If enabled then the server will work over https. ; Note: certificate and private key files must be provided if switched on ; Default: false ssl_enable=false ; Path to the certificate file. Must be provided for https. ; Default: no default ssl_cert_file="/export/home/satskyse/psg/ssl/130.14.24.194.crt" ; Path to the private key file. Must be provided for https. ; Default: no default ssl_key_file="/export/home/satskyse/psg/ssl/130.14.24.194.key" ; SSL ciphers. Optional ; Default: "EECDH+aRSA+AESGCM EDH+aRSA+AESGCM EECDH+aRSA EDH+aRSA !SHA !SHA256 !SHA384" ; NOTE: NLM requires hardening security so weak ciphers are not allowed. For ; example, SSLv2, SSLv3, TLS1 and TLS1.1 must not be used. ssl_ciphers="" [IPG] # IPG data page size (number of records at once) # default: 1024 page_size=1024 # Enable replies which may have millions of records # Default: true enable_huge_ipg=true [WGS_PROCESSOR] ; Enable simulated errors in PSG replies, evert "error_rate" reply ; Default: 0 (no simulated errors) error_rate=0 enabled = true ; The args to use for testing the health of the data source. ; For the WGS health check we try resolving a seq-id. ; Default: /ID/resolve?seq_id=EAB1000000&disable_processor=cassandra health_command=/ID/resolve?seq_id=EAB1000000&disable_processor=cassandra ; Timeout to wait for a completed reply for the 'health_command' (seconds) ; Default: 0 (means to use [HEALTH].timeout) health_timeout=0 [SNP_PROCESSOR] ; Enable simulated errors in PSG replies, evert "error_rate" reply ; Default: 0 (no simulated errors) error_rate=0 enabled = true ; The args to use for testing the health of the data source. ; For the SNP health check we try get named annotations ; Default: ; /ID/get_na?seq_id_type=12&seq_id=568801899&seq_ids=ref|NT_187403.1&names=SNP health_command=/ID/get_na?seq_id_type=12&seq_id=568801899&seq_ids=ref|NT_187403.1&names=SNP ; Timeout to wait for a completed reply for the 'health_command' (seconds) ; Default: 0 (means to use [HEALTH].timeout) health_timeout=0 [CDD_PROCESSOR] ; Enable simulated errors in PSG replies, evert "error_rate" reply ; Default: 0 (no simulated errors) error_rate=0 enabled = true backend_timeout=5 ; The args to use for testing the health of the data source. ; For the CDD health check we try to get named annotations ; Default: /ID/get_na?seq_id=6&names=CDD health_command=/ID/get_na?seq_id=6&names=CDD ; Timeout to wait for a completed reply for the 'health_command' (seconds) ; Default: 0 (means to use [HEALTH].timeout) health_timeout=0 [MY_NCBI] ; High mark for the number of entries which were resolved in my NCBI ; successfully. ; Low mark is calculated as 0.8 of the high mark. ; The cleanup is done basing on last touch when the high mark is exceeded. ; The least used entries are removed till the low mark is reached. ; A monitoring thread is responsible for initiating the cleanup. ; Default: 10000 ok_cache_size=10000 ; High mark for the number of entries which were not found in my NCBI. ; Low mark is calculated as 0.8 of the high mark. ; The cleanup is done basing on last touch when the high mark is exceeded. ; The least used entries are removed till the low mark is reached. ; A monitoring thread is responsible for initiating the cleanup. ; Default: 10000 not_found_cache_size=10000 ; The expiration time of the entries in the not found my ncbi cache. ; 0 means there will be no caching ; Default: 3600 not_found_cache_expiration_sec=3600 ; High mark for the number of entries which resulted an error in my NCBI. ; Low mark is calculated as 0.8 of the high mark. ; The cleanup is done basing on last touch when the high mark is exceeded. ; The least used entries are removed till the low mark is reached. ; A monitoring thread is responsible for initiating the cleanup. ; Default: 10000 error_cache_size=10000 ; The max time a record is kept in the my NCBI error cache ; 0 means the errors are not cached ; Default: 1000 error_cache_back_off_ms=1000 ; The URL where my NCBI requests are sent to ; Default: ; http://txproxy.linkerd.ncbi.nlm.nih.gov/v1/service/MyNCBIAccount?txsvc=MyNCBIAccount url="http://txproxy.linkerd.ncbi.nlm.nih.gov/v1/service/MyNCBIAccount?txsvc=MyNCBIAccount" ; The my NCBI URL proxy ; Default: linkerd:4140 http_proxy="linkerd:4140" ; My NCBI requests timeout ; Default: 100 timeout_ms=100 ; My NCBI domain name resolve timeout resolve_timeout_ms=300 ; http proxy resolution period when the previous resolution completed ; successfully. ; 0 - means disabled ; Default: 60 dns_resolve_ok_period_sec=60 ; http proxy resolution period when the previous resolution completed ; with a failure. ; 0 - means disabled ; Default: 10 dns_resolve_fail_period_sec=10 ; web cubby user used for periodic tests of the myncbi service ; Empty string - disables the periodic tests ; Default: MVWNUIMYDR41F2XRDBT8JTFGDFFR9KJM;logged-in=true;my-name=vakatov@ncbi.nlm.nih.gov;persistent=true@E7321B44700304B1_0000SID test_web_cubby_user="MVWNUIMYDR41F2XRDBT8JTFGDFFR9KJM;logged-in=true;my-name=vakatov@ncbi.nlm.nih.gov;persistent=true@E7321B44700304B1_0000SID" ; myncbi service test period when the previous test completed successfully ; 0 - means disabled ; Default: 180 test_ok_period_sec=180 ; myncbi service test period when the previous test completed with a failure ; 0 - means disabled ; Default: 20 test_fail_period_sec=20 [LOG] ; Log the immediate (socket) peer's IP unconditionally (even if the end-client IP is known) ; Default: false log_peer_ip_always = false