skip to Main Content

I have an Azure Data Explorer (ADX) aka. Kusto instance in combination with a PostgreSQL Flexible Server (16.4) and want to access a the SQL table test_adx_meta from ADX.
There are no firewall or IP range limitations.

I followed the official postgres_request command documentation and also enabled the plugin.

.show plugins | where PluginName == "postgresql_request"

"PluginName": postgresql_request, "IsEnabled": true, "Description": Version=2

SQL Table:

CREATE TABLE test_adx_meta (
  id integer PRIMARY KEY,
  value varchar NOT NULL
);

ADX Query:

evaluate postgresql_request(
    'Host=***.postgres.database.azure.com; Port = 5432;'
    'Database=db;'
    'User Id=***; Password=***;'
    'select * from "test_adx_meta"'): (id: int, value: string)

Partial query failure: 0x80131500 (message: ExecutePluginOperator failure ===> Error occured when executing postgresql request. Could not load file or assembly ‘System.Security.Cryptography.Algorithms, Version=4.3.0.0, Culture=neutral, PublicKeyToken=<…>’ or one of its dependencies. The system cannot find the file specified.: ),

I seems that the implementation of the Kusto plugin can not load the .NET lib System.Security.Cryptography.Algorithms.

Does anybody have seen an similar issue or has an idea what is happening ?
Thx 🙂

2

Answers


  1. Chosen as BEST ANSWER

    I can confirm that for a Dev/test instance the plugin works.

    • Storage Optimized 1.0.9070.26640 -> Error
    • Compute Optimized 1.0.9070.26640 -> Error
    • Dev/test 1.0.9070.26659 -> Works

    So it seems like ADX version 1.0.9070.26640 is the root cause of the problem.


  2. enter image description here

    If Compute optimized is selected as workload while creating ADX cluster, then if you run below query in that cluster to connect Azure database for PostgreSQL server, you may get the above error due to incompatible version of plugin.

    evaluate postgresql_request(
        'Host=<serverName>.postgres.database.azure.com; Port = 5432;'
        'Database=<dbName>;'
        h'User Id=<userName>;'
        h'Password=<password>;',
        'select * from public.test_adx_meta') : (id: int, value: string)
    | where Id > 0
    | project value
    

    To reduce the error, select Dev/test option as workload while creating ADX cluster as shown below:

    enter image description here

    Then you will be able to run the query successfully as shown below:

    enter image description here

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search