ServerConfig

Usage

use ServerConfig;

or

import ServerConfig;

arkouda server config param and config const

enum Deployment { STANDARD, KUBERNETES }
enum constant STANDARD
enum constant KUBERNETES
enum ObjType { UNKNOWN = -1, ARRAYVIEW = 0, PDARRAY = 1, STRINGS = 2, SEGARRAY = 3, CATEGORICAL = 4, GROUPBY = 5, DATAFRAME = 6, DATETIME = 7, TIMEDELTA = 8, IPV4 = 9, BITVECTOR = 10, SERIES = 11, INDEX = 12, MULTIINDEX = 13 }
enum constant UNKNOWN = -1
enum constant ARRAYVIEW = 0
enum constant PDARRAY = 1
enum constant STRINGS = 2
enum constant SEGARRAY = 3
enum constant CATEGORICAL = 4
enum constant GROUPBY = 5
enum constant DATAFRAME = 6
enum constant DATETIME = 7
enum constant TIMEDELTA = 8
enum constant IPV4 = 9
enum constant BITVECTOR = 10
enum constant SERIES = 11
enum constant INDEX = 12
enum constant MULTIINDEX = 13
config param MaxArrayDims: int = 1

maximum array dimensionality supported by the server set by ‘serverModuleGen.py’ based on ‘serverConfig.json’

param SupportsUint8 = true
param SupportsUint16 = false
param SupportsUint32 = false
param SupportsUint64 = true
param SupportsInt8 = false
param SupportsInt16 = false
param SupportsInt32 = false
param SupportsInt64 = true
param SupportsFloat32 = false
param SupportsFloat64 = true
param SupportsComplex64 = false
param SupportsComplex128 = false
param SupportsBool = true
proc isSupportedType(type t) param: bool
proc isSupportedDType(dt: DType): bool
config const deployment = Deployment.STANDARD

Type of deployment, which currently is either STANDARD, meaning that Arkouda is deployed bare-metal or within an HPC environment, or on Kubernetes, defaults to Deployment.STANDARD

config const trace = true

Trace logging flag

config var logLevel = LogLevel.INFO

Global log level flag that defaults to LogLevel.INFO

config var logChannel = LogChannel.CONSOLE

Global log channel flag that defaults to LogChannel.CONSOLE

config var logCommands = false

Indicates whether arkouda_server commands should be logged.

config const ServerPort = 5555

Port for zeromq

config const perLocaleMemLimit = 90

Memory usage limit – percentage of physical memory

config param RSLSD_bitsPerDigit = 16

Bit width of digits for the LSD radix sort and related ops

config param arkoudaVersion: string = "Please set during compilation"

Arkouda version

config const serverConnectionInfo: string = try! getEnv("ARKOUDA_SERVER_CONNECTION_INFO", "")

Write the server hostname:port to this file.

config const autoShutdown = false

Flag to shut down the arkouda server automatically when the client disconnects

config const serverInfoNoSplash = false

Flag to print the server information on startup

var serverHostname: string = try! get_hostname()

Hostname where I am running

proc get_hostname(): string
proc getConnectHostname() throws
  • Retrieves the hostname of the locale 0 arkouda_server process, which is useful for

  • registering Arkouda with cloud environments such as Kubernetes.

proc getChplVersion() throws
  • Returns the version of Chapel arkouda was built with

const chplVersionArkouda = try! getChplVersion()

Indicates the version of Chapel Arkouda was built with

config const authenticate: bool = false

Indicates whether token authentication is being used for Akrouda server requests

config param regexMaxCaptures = 20

Determines the maximum number of capture groups returned by Regex.matches

const saveUsedModules: bool = false
const usedModulesFmt: string = "cfg"
const scLogger = new Logger(lLevel, lChannel)
proc createConfig()
proc getConfig(): string
proc getEnv(name: string, default = ""): string throws
proc getPhysicalMemHere()

Get an estimate for how much memory can be allocated. Based on runtime with chpl_comm_regMemHeapInfo if using a fixed heap, otherwise physical memory

proc getByteorder() throws

Get the byteorder (endianness) of this locale

proc getMemUsed()

Get the memory used on this locale

proc getMemLimit(): uint

Get the memory limit for this server run returns either the memMax if set or a percentage of the physical memory per locale

var memHighWater: uint = 0
proc overMemLimit(additionalAmount: int) throws

check used + amount is over the memory limit throw error if we would go over the limit

proc string.splitMsgToTuple(param numChunks: int)
proc string.splitMsgToTuple(sep: string, param numChunks: int)
proc bytes.splitMsgToTuple(param numChunks: int)
proc bytes.splitMsgToTuple(sep: bytes, param numChunks: int)
proc getEnvInt(name: string, default: int): int
const Q = "\""
  • String constants for use in constructing JSON formatted messages

const QCQ = Q + ":" + Q
const BSLASH = "\\"
const ESCAPED_QUOTES = BSLASH + Q
proc appendToConfigStr(key: string, val: string)