Velocity Analytics 8 - How to solve com.kx.q.c$KException

I am creating a sample using com\fd\delta\stream\DeltaStreamDemo.java stored in deltaj-testclient-4.0.2.6-SNAPSHOT-r9784-sources.jar of Java API 4.0.3.
As a test, when editing and executing only the properties file, com.kx.q.c$KException occurs after calling initializeDeltaControl() of DeltaStreamDemoHelper.java.

As long as I check the log, I think that there is no problem with connection with DeltaControl, but I do not know how to solve com.kx.q.c$KException.
How can I resolve com.kx.q.c$KException?

[DeltaCConnectorThread DeltaC Listener[XX.XX.XX.XX:2001:user:*********]-4-thread-1] INFO com.fd.delta.q.impl.DeltaC - Connection thread completed for DeltaC Listener[XX.XX.XX.XX:2001:user:*********] connected = true shuttingdown = false
[DeltaQConn[XX.XX.XX.XX:2001](1)] ERROR com.fd.delta.control.impl.DeltaControlPrclConnection - DeltaQConnection[XX.XX.XX.XX:2001](1) KDB error registering process with master (Permissioning: No select permission on .pl.processlogonExclusive)
com.kx.q.c$KException: Permissioning: No select permission on .pl.processlogonExclusive
at com.kx.q.c.k(c.java:1077)
at com.kx.q.c.k(c.java:1085)
at com.fd.delta.q.impl.DeltaC.k(DeltaC.java:606)
at com.fd.delta.control.impl.DeltaControlPrclConnection.registerPRCLProcess(DeltaControlPrclConnection.java:185)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.fd.delta.control.impl.DeltaControlPrclConnection.onRegistrationRequired(DeltaControlPrclConnection.java:89)
at com.fd.delta.q.impl.DeltaQConnection.registerListener(DeltaQConnection.java:825)
at com.fd.delta.q.impl.DeltaQConnection.run(DeltaQConnection.java:782)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.lang.Thread.run(Unknown Source)
[DeltaQConn[XX.XX.XX.XX:2001](1)] ERROR com.fd.delta.q.impl.DeltaQConnection - DeltaQConn[XX.XX.XX.XX:2001](1) Error registering process retry in 1000 mseconds

Best Answer

  • mary e
    Answer ✓

    Hi @yokoyama-ryouta ,

    Our engineers have confirmed that you will need to use a username with "daasApplication" type in order to use the Java API. "daasSandbox" users can run queries only via the gateway.

    We will update the documentation to list the user types correctly:

    • daasSuperUsers
    • daasAdministrators
    • daasMonitoring
    • daasApplication
    • daasSandbox

Answers

  • Hi @yokoyama-ryouta ,

    Could you please confirm whether all of the parameters of initialiseDeltaControl() are the same as when you were previously able to connect with no error?

    I will find out the meaning of the error

    "Permissioning: No select permission on .pl.processlogonExclusive"

    and will let you know what may cause this error to occur.

  • Hi @yokoyama-ryouta ,

    It may be that the error is related to the User Type of the username which you are using when you connect. Some User Types may not have the required permissions. Could you please confirm, what is the User Type of the username that you are using? It should be one of the below:

    • VASuperUsers

    • VAAdministrators


    • VAMonitoring

    • VAApplication

    • VASandbox

  • Hello @mary e,

    Thank you for your response.

    Unfortunately I have not been able to connect from the beginning.
    The privilege granted was "daasSandbox".
    Does "daasSandbox" have insufficient permissions?
    By the way, when I checked the available authority, there was no authority that started with "VA", and only authority starting with "daas" existed.