cancel
Showing results for 
Search instead for 
Did you mean: 

Arguments of .Q.hdpf

Mannix
New Contributor III
New Contributor III

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?



1 ACCEPTED SOLUTION

iodwyer
New Contributor II
New Contributor II

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

 

View solution in original post

3 REPLIES 3

konq
New Contributor II

the first argument is 
`$":",.u.x 1
so depending on the first member of .u.x list it might become  `:localhost:5002

iodwyer
New Contributor II
New Contributor II

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

 

SJT
Contributor III
Contributor III

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.hdpf documentation we see the first argument is a port for the HDB. It looks like .u.x. 1 is that as a string; for example "localhost:5002".

`$":", prefixes a colon and casts to symbol, creating a handle.