.j.j domain error

Something very odd - I get an error 'domain for anything i pass to .j.j. 


KDB+ 3.5 2017.04.10 Copyright (C) 1993-2017 Kx Systems

w32/ 4()core 4095MB <name> hunter 192.168.1.154 NONEXPIRE

Welcome to kdb+ 32bit edition

For support please see http://groups.google.com/d/forum/personal-kdbplus

Tutorials can be found at http://code.kx.com/wiki/Tutorials

To exit, type \

To remove this startup msg, edit q.q

q).j.j

![-31]

q).j.j 12

'domain

  [0]  .j.j 12

       ^

q).j.j “foo”

'domain

  [0]  .j.j “foo”


I don’t use this machine for my kdb coding often and am pretty sure this was working last time I worked on this machine for coding (about six months ago).

Has anyone run into this and have suggestions? Am lost …

sounds like you have a more recent q.k being found which does not match the q binary you are using.

the underlying 31! which .j.j used, changed signature in v3.6 2018.12.06.

to be more precise, v3.5’s json serializer, .j.j, is written in k.

In v3.6, it is native/built-in, ~40x faster, using -31!.

The release of v3.5 which you are using does not check that the correct q.k is being used for that binary, and if you happened to be using a q.k from v3.6 with v3.5, you’d observe 'domain error for your scenario.

That was indeed the problem - thanks!