KX Community

Find answers, ask questions, and connect with our KX Community around the world.
KX Community Guidelines

Home Forums KX Academy Arguments of .Q.hdpf

  • Arguments of .Q.hdpf

    Posted by mannix on March 9, 2022 at 12:00 am

    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?

    Laura replied 9 months, 3 weeks ago 4 Members · 3 Replies
  • 3 Replies
  • iodwyer

    Member
    March 9, 2022 at 12:00 am

    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

     

  • konq

    Member
    March 9, 2022 at 12:00 am

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

  • Laura

    Administrator
    March 12, 2022 at 12:00 am

    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.

Log in to reply.