Thank you very much. It is completely clear to me now.

Kind regards,

Stéphane Thibaud

2019年5月17日(金) 20:56 Igor Sapego <isap...@apache.org>:

> These are nanosecond fraction of the last microsecond (It can be only from
> 0 to 999).
>
> Ignite's Timestamp have a nanoseconds precision, so it can not be
> represented
> by the datetime type only.
>
> You can find some details here: [1]
>
> [1] -
> https://apache-ignite-binary-protocol-client.readthedocs.io/en/latest/source/pyignite.datatypes.standard.html#pyignite.datatypes.standard.TimestampObject
>
>
> Best Regards,
> Igor
>
>
>
> On Thu, May 16, 2019 at 9:02 AM Stéphane Thibaud <snthib...@gmail.com>
> wrote:
>
>> I see. Thank you. I am still a bit unsure about what the second value in
>> the tuple represents. Are these indeed the nanoseconds? Apparently a Python
>> datetime can have differing precisions (perhaps depending on platform)...
>>
>>
>> Kind regards,
>>
>> Stéphane Thibaud
>>
>>
>> 2019年5月16日(木) 0:10 Igor Sapego <isap...@apache.org>:
>>
>>> I believe, it's OK to pass tuple for timestamp in python, but you also
>>> should
>>> add a tip for the client to inform it you are going to store timestamp
>>> value.
>>>
>>> Take a look at tests for example: [1]
>>>
>>> 1 -
>>> https://github.com/apache/ignite/blob/master/modules/platforms/python/tests/test_datatypes.py#L80
>>>
>>> Best Regards,
>>> Igor
>>>
>>>
>>> On Wed, May 15, 2019 at 12:24 PM Stéphane Thibaud <snthib...@gmail.com>
>>> wrote:
>>>
>>>> Thank you. I will try to create a code line to reproduce it, but I
>>>> remember the following: when you do a 'select' query on a timestamp column
>>>> with the Python thin client, you get a tuple. Because of that, I assumed
>>>> that a tuple also had to be written in an update query.
>>>>
>>>>
>>>> Kind regards,
>>>>
>>>> Stéphane Thibaud
>>>>
>>>> 2019年5月15日(水) 17:59 Igor Sapego <isap...@apache.org>:
>>>>
>>>>> Stéphane,
>>>>>
>>>>> Can you sharer a code line, how do you try to store timestamp value?
>>>>>
>>>>> Best Regards,
>>>>> Igor
>>>>>
>>>>>
>>>>> On Tue, May 14, 2019 at 7:23 PM Denis Mekhanikov <
>>>>> dmekhani...@gmail.com> wrote:
>>>>>
>>>>>> Stéphane,
>>>>>>
>>>>>> Could you provide the code, that results in this exception?
>>>>>> Do you try to insert the tuple as a single field via SQL? There is no
>>>>>> such primitive as a tuple in SQL, so you should probably split timestamp
>>>>>> into datetime and nanoseconds columns and store them separately as two
>>>>>> different columns.
>>>>>>
>>>>>> Denis
>>>>>>
>>>>>> сб, 4 мая 2019 г. в 10:39, Stéphane Thibaud <snthib...@gmail.com>:
>>>>>>
>>>>>>> Hello Apache users,
>>>>>>>
>>>>>>> I am running into the following issue: when I try to store a
>>>>>>> timestamp with nanosecond precision with the Python Thin client, I get 
>>>>>>> the
>>>>>>> stack trace below. I have specified the timestamp as a tuple of 
>>>>>>> (datetime,
>>>>>>> nanoseconds) as that is the format in which I also get timestamps back 
>>>>>>> from
>>>>>>> the apache ignite client. Strangely, I can set just a datetime, but then
>>>>>>> the nanoseconds become zero. Am I doing it in the wrong way? Any
>>>>>>> suggestions?
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>     db.sql(query, query_args=[converted_row[c] for c in
>>>>>>> table.column_names])
>>>>>>>   File
>>>>>>> "/home/snthibaud/PycharmProjects/tabee/venv/lib/python3.7/site-packages/pyignite/client.py",
>>>>>>> line 401, in sql
>>>>>>>     max_rows, timeout,
>>>>>>>   File
>>>>>>> "/home/snthibaud/PycharmProjects/tabee/venv/lib/python3.7/site-packages/pyignite/api/sql.py",
>>>>>>> line 370, in sql_fields
>>>>>>>     'include_field_names': include_field_names,
>>>>>>>   File
>>>>>>> "/home/snthibaud/PycharmProjects/tabee/venv/lib/python3.7/site-packages/pyignite/queries/__init__.py",
>>>>>>> line 260, in from_python
>>>>>>>     buffer += c_type.from_python(values[name])
>>>>>>>   File
>>>>>>> "/home/snthibaud/PycharmProjects/tabee/venv/lib/python3.7/site-packages/pyignite/datatypes/internal.py",
>>>>>>> line 471, in from_python
>>>>>>>     buffer += infer_from_python(x)
>>>>>>>   File
>>>>>>> "/home/snthibaud/PycharmProjects/tabee/venv/lib/python3.7/site-packages/pyignite/datatypes/internal.py",
>>>>>>> line 399, in infer_from_python
>>>>>>>     if is_hinted(value):
>>>>>>>   File
>>>>>>> "/home/snthibaud/PycharmProjects/tabee/venv/lib/python3.7/site-packages/pyignite/utils.py",
>>>>>>> line 51, in is_hinted
>>>>>>>     and issubclass(value[1], IgniteDataType)
>>>>>>>   File "/usr/lib/python3.7/abc.py", line 143, in __subclasscheck__
>>>>>>>     return _abc_subclasscheck(cls, subclass)
>>>>>>> TypeError: issubclass() arg 1 must be a class
>>>>>>>
>>>>>>> Kind regards,
>>>>>>>
>>>>>>> Stéphane Thibaud
>>>>>>>
>>>>>>>
>>>>>>>

Reply via email to