Yep, it has been broken since the introduction of epoll in the network
code. So kqueue support needs to be implemented.

вт, 14 мар. 2023 г. в 19:22, Stephen Darlington <
stephen.darling...@gridgain.com>:

> Macs don’t have epoll, so it doesn’t compile currently.
>
> On 14 Mar 2023, at 16:02, Igor Sapego <isap...@apache.org> wrote:
>
> Unfortunately, we do not have Mac agents, so we can not detect when
> compilation on Mac OS is broken, so yeah...
>
> Best Regards,
> Igor
>
>
> On Tue, Mar 14, 2023 at 2:48 PM Ivan Daschinsky <ivanda...@gmail.com>
> wrote:
>
>> An ignite odbc driver works well on linux and windows OSes, but it seems
>> that it is impossible to compile it on Mac OS.
>>
>> вт, 14 мар. 2023 г. в 14:47, Ivan Daschinsky <ivanda...@gmail.com>:
>>
>>> Hi, Dren!
>>>
>>> Unfortunatelly, pyignite doesn't have an efficient native serialization
>>> library, whereas psycopg2 has (it is a thin wrapper around libpq).
>>>
>>> I would suggest two options:
>>> 1. Reduce a default batch size like this : `client.sql("SELECT * FROM
>>> TABLE", page_size=10)`. Default 1024 seems too big and parsing of such a
>>> big response seems to be really slow.
>>> 2. Use ignite odbc driver and pyodbc over it. Both of them work pretty
>>> well.
>>>
>>> вт, 14 мар. 2023 г. в 14:10, Dren Butković <dren.butko...@gmail.com>:
>>>
>>>>
>>>> Ignite and py client versions:
>>>>
>>>> - Apache Ignite 2.13.0
>>>> - pyignite 0.5.2
>>>>
>>>> On Tue, Mar 14, 2023 at 11:46 AM Zhenya Stanilovsky via user <
>>>> user@ignite.apache.org> wrote:
>>>>
>>>>> Hi, plz append ignite and py client versions.
>>>>>
>>>>>
>>>>> Hi,
>>>>>
>>>>> I made a speed comparison of retrieving data from Apache Ignite using
>>>>> several methods. All records are in one table, I did not use any WHERE
>>>>> condition, only a SELECT * FROM TABLE XYZ LIMIT 20000.
>>>>>
>>>>> Test results are:
>>>>> Apache Ignite
>>>>>
>>>>>    - Apache Ignite REST API - 0.52 seconds
>>>>>    - JDBC - 4 seconds
>>>>>    - Python pyignite - 40 seconds !!!
>>>>>
>>>>> pseudocode in Python using pyignite:
>>>>>
>>>>> client = Client(username="ignite", password="pass", use_ssl=False)
>>>>> client.connect('localhost', 10800)
>>>>>
>>>>> cursor=client.sql('SELECT * FROM TABLE_XYZ LIMIT 20000')for row in cursor:
>>>>>     pass
>>>>>
>>>>> After that I made a speed comparison of retrieving data from
>>>>> PostgreSQL using JDBC and psycopg2 Python package. SQL select is same,
>>>>> SELECT * FROM TABLE XYZ LIMIT 20000
>>>>> PostgreSQL
>>>>>
>>>>>    - JDBC - 3 seconds
>>>>>    - Python psycopg2 using fetchall - 3 seconds
>>>>>    - Python psycopg2 using fetchone - 4 seconds
>>>>>
>>>>> pseudocode in Python using psycopg2:
>>>>>
>>>>> import psycopg2
>>>>>
>>>>> conn = psycopg2.connect(database=DB_NAME,
>>>>>             user=DB_USER,
>>>>>             password=DB_PASS,
>>>>>             host=DB_HOST,
>>>>>             port=DB_PORT)
>>>>>
>>>>> cur = conn.cursor()
>>>>> cur.execute("SELECT * FROM TABLE_XYZ LIMIT 20000")
>>>>> rows = cur.fetchall()for data in rows:
>>>>>     pass
>>>>>
>>>>> I can conclude that the pyignite implementation has much worse
>>>>> performance compared to psycopg2 tests. The performance difference on
>>>>> PostgreSQL between Java JDBC and Python psycopg2 is negligible.
>>>>>
>>>>> The performance difference on Apache Ignite between Java JDBC and
>>>>> Python pyignite is very big.
>>>>>
>>>>> Please if someone can comment on the tests, did I do something wrong
>>>>> or are these results expected? How can such large differences in execution
>>>>> times be explained? Do you have any suggestions to get better results 
>>>>> using
>>>>> pyignite?
>>>>> Thank you
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>> --
>>> Sincerely yours, Ivan Daschinskiy
>>>
>>
>>
>> --
>> Sincerely yours, Ivan Daschinskiy
>>
>
>

-- 
Sincerely yours, Ivan Daschinskiy

Reply via email to