In the following whitepaper: https://code.kx.com/q/wp/rt-tick/
There appears to be a discrepency between what they have placed in the first argument of .Q.hdpf
Here’s the two images:
Above it says: `$“:”
Below it says: `:localhost:5002
IS " `$“:” " A SHORTCUT?
konq1
March 9, 2022, 1:52am
2
the first argument is
$":",.u.x 1 so depending on the first member of .u.x list it might become
:localhost:5002
The RDB is started via the command line like so:
q tick/r.q localhost:5000 localhost:5002 -p 5001
The first argument to .Q.hdpf refers to the location of the HDB process. The variable .u.x refers to the tickerplant and hdb ports (type string) generated from .z.x (command line args) as seen here https://github.com/KxSystems/kdb-tick/blob/master/tick/r.q#L9
Therefore, joined together, “:”,.u.x 1 is “:localhost:5002”. This is then casted to a symbol to create `:localhost:5002
q)“:”,.u.x 1 “:localhost:5002” q)$":",.u.x 1
:localhost:5002
SJT1
March 12, 2022, 9:35am
4
The complete call in the white paper is .Q.hdpf[
$“:”,.u.x 1;:.;x;
sym]`.
The first argument is ``$“:”,.u.x 1. From the
.Q.hdpfdocumentation we see the first argument is a port for the HDB. It looks like
.u.x. 1is that as a string; for example
"localhost:5002"`.
``$“:”,` prefixes a colon and casts to symbol, creating a handle.