Denis,

actually params (key-value pairs) are separated by colon in provided
JIRA issue comment.

On Tue, Apr 3, 2018 at 7:55 PM, Denis Magda <dma...@apache.org> wrote:
> Vladimir, Taras,
>
> Will "@" work for us as the delimiter? I would agree with Andrey to reuse
> this approach for the thin client.
>
> As for the breaking changes, if update the delimiter for the next driver
> version and make sure that version understands 2 delimiters for some time
> (& and the new one), then this would be ideal and not disrupting.
>
> --
> Denis
>
> On Tue, Apr 3, 2018 at 2:39 AM, Andrey Gura <ag...@apache.org> wrote:
>
>> Hi,
>>
>> We've been solve this problem during JDBC2 driver implementation. And
>> I don't know any complains about connection string format. Why we can
>> just use the same approach? [1]
>>
>> [1] https://issues.apache.org/jira/browse/IGNITE-1250?
>> focusedCommentId=14706511&page=com.atlassian.jira.
>> plugin.system.issuetabpanels:comment-tabpanel#comment-14706511
>>
>> On Tue, Apr 3, 2018 at 12:20 PM, Ilya Kasnacheev
>> <ilya.kasnach...@gmail.com> wrote:
>> > Hello!
>> >
>> > I think semicolon is the way to go, since round brackets are often
>> > interpreted by shells and will need escaping on their own. Let's get rid
>> of
>> > & and ?.
>> >
>> > jdbc:ignite:thin://host:port/schema:param1=val1:param2=val2
>> >
>> > --
>> > Ilya Kasnacheev
>> >
>> > 2018-04-03 11:30 GMT+03:00 Vladimir Ozerov <voze...@gridgain.com>:
>> >
>> >> Igniters,
>> >>
>> >> Thanks to Alex Kuznetsov, we revealed serious usability issue in our
>> thin
>> >> JDBC driver - we user ampersand character to delimit properties:
>> >>
>> >> jdbc:ignite:thin://host:port/schema?param1=val1*&*param2=val2
>> >>
>> >> This leads to multiple problems:
>> >> 1) This format is unusable from many console environments and require
>> >> special escaping (PowerShell, bash)
>> >> 2) Also this causing issues when writing connection string is passed to
>> >> some 3rd-party applications as sometimes they cannot escape it as well.
>> >>
>> >> I performed investigation on how other vendors do that. Bottom line -
>> >> nobody use ampersand. Instead semicolon or parentheses are used:
>> >>
>> >> jdbc:ignite:thin://host:port/schema?param1=val1&param2=val2
>> >> jdbc:ignite:thin://host:port/schema?(param1=val1)(param2=val2)
>> >>
>> >> I propose to do a breaking change in AI 2.5 and change the format to
>> >> *parentheses*. This would be a disruptive experience for existing users,
>> >> but in the long term benefits will outweight. Also remember that we do
>> not
>> >> offered officially any backward compatibility for our JDBC driver.
>> >>
>> >> Alternatively we may allow users to use previous format with help of
>> system
>> >> property or environment variable.
>> >>
>> >> Thoughts?
>> >>
>> >> Vladimir.
>> >>
>>

Reply via email to