Hi Alexey,

Thank you very much for detail answer.

Thanks,
Aleksandr

Thanks,
Aleksandr

On 30 April 2018 at 19:48, Alexey Kosenchuk <alexey.kosenc...@nobitlost.com>
wrote:

> Hi Aleksandr,
>
> > 1) Is SSL\TLS supported for binary client protocol?
>
> It has no direct relation to the binary client protocol itself.
> Just need to establish https connection.
> But you need to setup Ignite to accept TLS (it's not trivial).
> And generate certificates and keys.
>
> Example of the Ignite cfg:
> https://github.com/apache/ignite/blob/master/modules/platfor
> ms/cpp/odbc-test/config/queries-ssl.xml
> Example of the SSL certificates and keys:
> https://github.com/apache/ignite/tree/master/modules/platfor
> ms/cpp/odbc-test/config/ssl
> Test for Java client:
> https://github.com/apache/ignite/blob/master/modules/indexin
> g/src/test/java/org/apache/ignite/client/SecurityTest.java#L57
>
> > 2) Are authentication and authorization supported for binary client
> > protocol?
>
> Seems it's not documented yet.
> But yes, it's supported since protocol version 1.1.0.
>
> Handshake format:
> [original handshake][username:String][password:String]
>
> Example of implementation:
> https://github.com/nobitlost/ignite/blob/master/modules/clie
> nts/nodejs/lib/internal/ClientSocket.js
> method _handshakePayloadWriter()
>
> In Ignite you need to switch authentication on by the flag
> IgniteConfiguration.authenticationEnabled
>
> Example of the Ignite cfg:
> https://github.com/apache/ignite/blob/master/modules/platfor
> ms/cpp/odbc-test/config/queries-auth.xml
>
> Default user (username/password) : ignite/ignite
>
> Regards,
> -Alexey
>
> 30.04.2018 17:49, Aleksandr Sokolovskii пишет:
>
>> Hi Alexey,
>>
>> Do you have info about the following:
>>
>> 1) Is SSL\TLS supported for binary client protocol?
>>
>> 2) Are authentication and authorization supported for binary client
>> protocol?
>>
>> Thanks,
>>
>> Aleksandr
>>
>> *From: *Aleksandr Sokolovskii <mailto:amso...@gmail.com>
>> *Sent: *25 апреля 2018 г. 16:37
>> *To: *dev@ignite.apache.org <mailto:dev@ignite.apache.org>
>> *Subject: *RE: Apache Ignite 2.4+ Go language client
>>
>> Yes, it’s really challenge to write unit test for OP_QUERY_SQL. )))
>>
>> Thanks,
>> Aleksandr
>>
>> *From: *Alexey Kosenchuk <mailto:alexey.kosenc...@nobitlost.com>
>> *Sent: *25 апреля 2018 г. 16:33
>> *To: *dev@ignite.apache.org <mailto:dev@ignite.apache.org>
>> *Subject: *Re: Apache Ignite 2.4+ Go language client
>>
>>
>> No problem with OP_QUERY_SQL_FIELDS.
>>
>> I mean OP_QUERY_SQL.
>>
>> But I overlooked "OP_QUERY_SQL - Done without unit test. Need help to
>>
>> develop unit test."
>>
>> Sorry. I remove my question so far)))
>>
>> Thanks,
>>
>> -Alexey
>>
>> 25.04.2018 15:40, Aleksandr Sokolovskii пишет:
>>
>>  > Hi Alexey,
>>
>>  >
>>
>>  >> Seems an important missed part is complex objects support.
>>
>>  >> And it's the most difficult part.
>>
>>  > Yes, you are absolutely right.
>>
>>  > Complex object and binary types are not supported by my client now.
>>
>>  > That’s why I’m here.
>>
>>  > I plan to come back to this subject in the beginning of May.
>>
>>  > I very much count on the community help.
>>
>>  >
>>
>>  >> Also, do you have a working example for SQL Query which first inserts
>>
>>  >> cache entries and then selects them and successfully get the same
>> values
>>
>>  >> which were inserted ?
>>
>>  > Yes, it works fine.
>>
>>  > This one:
>>
>>  > https://github.com/amsokol/ignite-go-client/blob/master/bina
>> ry/v1/client-sql-and-scan-queries_test.go#L89
>>
>>  > It’s OP_QUERY_SQL_FIELDS operation unit test.
>>
>>  > It you are familiar with Go it’s easy to run in debug mode.
>>
>>  >
>>
>>  > If you explain me your problem I can try to help you.
>>
>>  > There some mistakes in binary protocol documentation.
>>
>>  > So I spent a lot of time in Apache Ignite server source code analyzing
>> )))
>>
>>  >
>>
>>  > Thanks,
>>
>>  > Aleksandr
>>
>>  >
>>
>>  > From: Alexey Kosenchuk
>>
>>  > Sent: 25 апреля 2018 г. 12:05
>>
>>  > To: dev@ignite.apache.org
>>
>>  > Subject: Re: Apache Ignite 2.4+ Go language client
>>
>>  >
>>
>>  > Hi Aleksandr,
>>
>>  >
>>
>>  > Seems an important missed part is complex objects support.
>>
>>  > And it's the most difficult part.
>>
>>  > Actually, it is not possible to implement it correctly basing on the
>>
>>  > current protocol spec only.
>>
>>  > If you decide to support it, you should either wait for an updated spec
>>
>>  > or ask for help.
>>
>>  >
>>
>>  > The issues against the current protocol spec are summarized in
>>
>>  > IGNITE-8039 [1] and IGNITE-8212 [2]. One more jira with the issues
>>
>>  > against the rest of the spec will be submitted soon.
>>
>>  > If you see more issues, please feel free to added them as comments to
>>
>>  > that jiras.
>>
>>  >
>>
>>  > Also, do you have a working example for SQL Query which first inserts
>>
>>  > cache entries and then selects them and successfully get the same
>> values
>>
>>  > which were inserted ?
>>
>>  >
>>
>>  > Thanks,
>>
>>  > -Alexey
>>
>>  >
>>
>>  > [1] https://issues.apache.org/jira/browse/IGNITE-8039
>>
>>  > [2] https://issues.apache.org/jira/browse/IGNITE-8212
>>
>>  >
>>
>>  > 25.04.2018 0:11, Aleksandr Sokolovskii пишет:
>>
>>  >> ...forgot OP_RESOURCE_CLOSE that is implemented also.
>>
>>  >>
>>
>>  >> Thanks,
>>
>>  >> Aleksandr
>>
>>  >>
>>
>>  >> Thanks,
>>
>>  >> Aleksandr
>>
>>  >>
>>
>>  >> On 25 April 2018 at 00:06, Aleksandr Sokolovskii <amso...@gmail.com>
>> wrote:
>>
>>  >>
>>
>>  >>> Hello All,
>>
>>  >>>
>>
>>  >>> Besides the SQL driver I implemented the following operations also:
>>
>>  >>> OP_CACHE_GET_NAMES
>>
>>  >>> OP_CACHE_CREATE_WITH_NAME
>>
>>  >>> OP_CACHE_GET_OR_CREATE_WITH_NAME
>>
>>  >>> OP_CACHE_CREATE_WITH_CONFIGURATION
>>
>>  >>> OP_CACHE_GET_OR_CREATE_WITH_CONFIGURATION
>>
>>  >>> OP_CACHE_GET_CONFIGURATION
>>
>>  >>> OP_CACHE_DESTROY
>>
>>  >>> OP_CACHE_GET
>>
>>  >>> OP_CACHE_PUT
>>
>>  >>> OP_CACHE_PUT_IF_ABSENT
>>
>>  >>> OP_CACHE_GET_ALL
>>
>>  >>> OP_CACHE_PUT_ALL
>>
>>  >>> OP_CACHE_GET_AND_PUT
>>
>>  >>> OP_CACHE_GET_AND_REPLACE
>>
>>  >>> OP_CACHE_GET_AND_REMOVE
>>
>>  >>> OP_CACHE_GET_AND_PUT_IF_ABSENT
>>
>>  >>> OP_CACHE_REPLACE
>>
>>  >>> OP_CACHE_REPLACE_IF_EQUALS
>>
>>  >>> OP_CACHE_CONTAINS_KEY
>>
>>  >>> OP_CACHE_CONTAINS_KEYS
>>
>>  >>> OP_CACHE_CLEAR
>>
>>  >>> OP_CACHE_CLEAR_KEY
>>
>>  >>> OP_CACHE_CLEAR_KEYS
>>
>>  >>> OP_CACHE_REMOVE_KEY
>>
>>  >>> OP_CACHE_REMOVE_IF_EQUALS
>>
>>  >>> OP_CACHE_REMOVE_KEYS
>>
>>  >>> OP_CACHE_REMOVE_ALL
>>
>>  >>> OP_CACHE_GET_SIZE
>>
>>  >>> OP_QUERY_SQL
>>
>>  >>> OP_QUERY_SQL_CURSOR_GET_PAGE
>>
>>  >>> OP_QUERY_SQL_FIELDS
>>
>>  >>> OP_QUERY_SQL_FIELDS_CURSOR_GET_PAGE
>>
>>  >>>
>>
>>  >>> Look at the Client interface here:
>>
>>  >>> https://github.com/amsokol/ignite-go-client/blob/master/
>>
>>  >>> binary/v1/client.go
>>
>>  >>>
>>
>>  >>> But not all Apache Ignite types are supported now.
>>
>>  >>> See README in https://github.com/amsokol/ignite-go-client for
>> details.
>>
>>  >>>
>>
>>  >>> Thanks,
>>
>>  >>> Aleksandr
>>
>>  >>>
>>
>>  >>>
>>
>>  >>>
>>
>>  >>> Thanks,
>>
>>  >>> Aleksandr
>>
>>  >>>
>>
>>  >>> On 24 April 2018 at 13:16, Igor Sapego <isap...@apache.org> wrote:
>>
>>  >>>
>>
>>  >>>> Aleksandr,
>>
>>  >>>>
>>
>>  >>>> Great job! Do you have any plans on adding new features to
>>
>>  >>>> your client?
>>
>>  >>>>
>>
>>  >>>> Pavel,
>>
>>  >>>>
>>
>>  >>>> There are  also CacheGet and CachePut [1] operations, as
>>
>>  >>>> far as I can see.
>>
>>  >>>>
>>
>>  >>>> [1] -
>>
>>  >>>> https://github.com/amsokol/ignite-go-client/blob/master/bina
>>
>>  >>>> ry/v1/client.go#L120
>>
>>  >>>>
>>
>>  >>>> Best Regards,
>>
>>  >>>> Igor
>>
>>  >>>>
>>
>>  >>>> On Tue, Apr 24, 2018 at 10:14 AM, Dmitriy Setrakyan <
>>
>>  >>>> dsetrak...@apache.org>
>>
>>  >>>> wrote:
>>
>>  >>>>
>>
>>  >>>>> Any chance we can add key-value support as well?
>>
>>  >>>>>
>>
>>  >>>>> On Tue, Apr 24, 2018, 2:48 PM Pavel Tupitsyn <ptupit...@apache.org
>> >
>>
>>  >>>> wrote:
>>
>>  >>>>>
>>
>>  >>>>>> Hi Aleksandr,
>>
>>  >>>>>>
>>
>>  >>>>>> This is awesome, thank you!
>>
>>  >>>>>>
>>
>>  >>>>>> However, let's make it clear that this client supports SQL only,
>>
>>  >>>>>> and none of the other Thin Client protocol features.
>>
>>  >>>>>>
>>
>>  >>>>>> Pavel
>>
>>  >>>>>>
>>
>>  >>>>>> On Mon, Apr 23, 2018 at 10:41 PM, Aleksandr Sokolovskii <
>>
>>  >>>>> amso...@gmail.com
>>
>>  >>>>>>>
>>
>>  >>>>>> wrote:
>>
>>  >>>>>>
>>
>>  >>>>>>> Hi Oleg,
>>
>>  >>>>>>>
>>
>>  >>>>>>> Thanks for your answer.
>>
>>  >>>>>>>
>>
>>  >>>>>>>> Community is currently working on formal test specification.
>>
>>  >>>>>>> Great. Waiting for this one.
>>
>>  >>>>>>>
>>
>>  >>>>>>>> As far as NodeJS please note that it is already being developed
>> by
>>
>>  >>>>>>> community at the moment [1].
>>
>>  >>>>>>> Cool. I stop my initiatives.
>>
>>  >>>>>>>
>>
>>  >>>>>>> Thanks,
>>
>>  >>>>>>> Aleksandr
>>
>>  >>>>>>>
>>
>>  >>>>>>> From: Vladimir Ozerov
>>
>>  >>>>>>> Sent: 23 апреля 2018 г. 22:35
>>
>>  >>>>>>> To: dev@ignite.apache.org
>>
>>  >>>>>>> Subject: Re: Apache Ignite 2.4+ Go language client
>>
>>  >>>>>>>
>>
>>  >>>>>>> Hi Alexander,
>>
>>  >>>>>>>
>>
>>  >>>>>>> Awesome thing! Please note that before accepting the client we
>> need
>>
>>  >>>> to
>>
>>  >>>>>> make
>>
>>  >>>>>>> sure it is operational. Community is currently working on formal
>>
>>  >>>> test
>>
>>  >>>>>>> specification. I hope it will be ready soon.
>>
>>  >>>>>>>
>>
>>  >>>>>>> As far as NodeJS please note that it is already being developed
>> by
>>
>>  >>>>>>> community at the moment [1]. We hope to have it in Apache Ignite
>>
>>  >>>> 2.6.
>>
>>  >>>>>>>
>>
>>  >>>>>>> [1]
>>
>>  >>>>>>> https://issues.apache.org/jira/browse/IGNITE-7777
>>
>>  >>>>>>>
>>
>>  >>>>>>> пн, 23 апр. 2018 г. в 22:24, Aleksandr Sokolovskii <
>>
>>  >>>> amso...@gmail.com
>>
>>  >>>>>> :
>>
>>  >>>>>>>
>>
>>  >>>>>>>> Hi All,
>>
>>  >>>>>>>>
>>
>>  >>>>>>>> I hope you are well.
>>
>>  >>>>>>>>
>>
>>  >>>>>>>> I released Apache Ignite 2.4+ Go language client:
>>
>>  >>>>>>>> https://github.com/apache-ignite/go-client
>>
>>  >>>>>>>>
>>
>>  >>>>>>>> I updated link here:
>>
>>  >>>>>>>> https://github.com/golang/go/wiki/SQLDrivers
>>
>>  >>>>>>>>
>>
>>  >>>>>>>> Is it possible to add link to my repo to this page?:
>>
>>  >>>>>>>> https://apacheignite.readme.io/docs/binary-client-protocol
>>
>>  >>>>>>>> or this page:
>>
>>  >>>>>>>> https://apacheignite-net.readme.io/docs/thin-client
>>
>>  >>>>>>>> Golang is much more easy to understand than Java or С#.
>>
>>  >>>>>>>> It’s very easy to pull, build and run test for my library.
>>
>>  >>>>>>>> I believe it helps another guys to write more thin clients.
>>
>>  >>>>>>>>
>>
>>  >>>>>>>> P.S.: I started developing Node.js client also.
>>
>>  >>>>>>>>
>>
>>  >>>>>>>> Thanks,
>>
>>  >>>>>>>> Aleksandr
>>
>>  >>>>>>>>
>>
>>  >>>>>>>>
>>
>>  >>>>>>>
>>
>>  >>>>>>>
>>
>>  >>>>>>
>>
>>  >>>>>
>>
>>  >>>>
>>
>>  >>>
>>
>>  >>>
>>
>>  >>
>>
>>  >
>>
>>  >
>>
>>

Reply via email to