Skip to content

Known issues

KX Developer listens on all network interfaces (using \p)

By default, Developer uses \p port to set the process port if not already set. If only listening on localhost is desired, either:

  • set the port before loading Developer (\p localhost:port),
  • set the environment variable DEVELOPER_PORT="localhost:port", or
  • update the Developer config at <install>/config/config.{profile,bat} setting DEVELOPER_PORT="localhost:port"

stdout/err redirection for large messages can block process

Large stdout/err messages can fill the redirection buffer causing the process to block. Signalling SIGINT on the process will cause it to resume. The size of the buffer depends on the operating system in use. In *nix and macOS, this corresponds to the maximum pipe size, and is variable on Windows.

To disable stdout/err redirection you may define the environment variable DEVELOPER_NOUSE_REDIR=true

Error 'snd. OS reports: Resource temporarily unavailable serving Developer

Prior to v3.5/v3.6 2018.10.03, starting kdb+ with TLS enabled to serve content over HTTPS could result in a 'snd error. This is fixed in v3.5 and v3.6 as of that date, and is not an issue when not using TLS.

-U user/password file checks unsupported

Developer will use .z.ac under the hood to perform authentication over HTTP and WebSockets. -U is ignored by this handler, for this reason -U password file checks are unsupported.

Multiple concurrent users

Multiple users can attach to the same q process as long as they all authenticate against it. Messages (stdout, stderr, and scripted visuals) are broadcast to all Developer sessions.

Suspended q processes

If a q process is in suspended mode, i.e., within the q debugger with a prompt like q)), then all requests to the process are suspended until execution resumes as normal. This means that use of Developer will also be suspended while in this mode.

Background processes with basic auth

Developer authentication requires user to input a username and password. If authentication is desired when starting q as a background process, it is advised to write custom authentication handling so that username and password can be configured however desired, and load launcher.q_ as usual, with DEVELOPER_USE_AUTH="no". See the Developer README.md for more information on usage of .z.*.

Closing a websocket to a Developer process stops stdout/err messages

If a websocket connection is attached to the q process running Developer and that socket is subsequently closed, stdout/err will stop appearing in Developer. The q process will continue to show stdout/err from the command line. To re-enable stdout/err in the IDE refresh the page.

Cloning repositories requires both the private and public key to be present

When cloning a git repository into Developer over ssh using a key file, Developer requires both the private and public key to be present. The keys must be in the same location and have the same file name with appropriate extensions (.pub for the public key).

Example:

Cloning over ssh using the default key location of ~/.ssh/id_rsa requires that both a public key and private key file be present under ~/.ssh. This means that both files id_rsa and id_rsa.pub should be in the ~/.ssh directory.

git clone

// This must be true for clone to succeed.
path: hsym "S"$getenv[`HOME],"/.ssh";
all `id_rsa`id_rsa.pub in key path;
/=> 1b

If the public key is not present, the following error will be printed.

Failed to connect to remote: Failed to authenticate SSH session: Unable to open public key file

Authentication error with Safari

Safari is not currently supported

We recommend using Chrome or Firefox for the best experience with KX Developer.

Safari is not a currently supported web browser for KX Developer due to a known issue with Safari which prevents KX Developer from creating an authenticated WebSocket connection. Users trying to use Safari with authentication enabled will see the following message immediately after entering their username and password:

safari

To use authentication with KX Developer, switch to a supported browser. Disable authentication in your configuration file to continue using Safari with KX Developer.

Switching DEVELOPER_USE_AUTH between yes and no on IE does not clear username

If Developer is started with DEVELOPER_USE_AUTH set to yes and a session is created in Internet Explorer, switching DEVELOPER_USE_AUTH to no will continue to remember the previous username. To clear the username from Internet Explorer, follow the instructions at https://support.microsoft.com/en-ca/help/17438/windows-internet-explorer-view-delete-browsing-history#ie=ie-11

Deleting the browser cache will reset Developer

Clearing the browser's cache will clear the username from Internet Explorer but it will also delete all workspace settings including scratchpads and unsaved changes. Before clearing your browser's cache, ensure that all unsaved content is either saved or backed up.

Error cloning repositories on Windows 10 version 1903 or newer

Microsoft has updated their Cryptography API in Windows 10 version 1903, and users on this version or newer will see a Failed to connect to remote: failed to start SSH session: error when trying to clone Git repositories over SSH. Cloning over HTTP/HTTPS is not affected.

We are investigating a fix and will be releasing a patch as soon as possible.