Thanks Pavel!

That is really cool, but looks like it only works in very carefully managed
situations.

Do you happen to know off the top of your head

A) the JDBC thin driver client needs to have a complete list of node
addresses.
  Q: will it collect IPs from DNS hostnames that return multiple A or AAAA
records for each node?

B) Q: does it only work for single row INSERT statements, or will it also
work for batched INSERT containing many rows worth of VALUES?

On Thu, Aug 29, 2024 at 12:27 AM Pavel Tupitsyn <[email protected]>
wrote:

> JDBC driver does support partition awareness [1]
> And it works for INSERT statements too, as I understand [2]
>
> > When a query is executed for the first time, the driver receives the
> partition distribution for the table
> > that is being queried and saves it for future use locally.
> > When you query this table next time, the driver uses the partition
> distribution
> > to determine where the data being queried is located to send the query
> to the right nodes.
>
> [1]
> https://ignite.apache.org/docs/latest/SQL/JDBC/jdbc-driver#partition-awareness
> [2]
> https://ignite.apache.org/docs/latest/SQL/JDBC/jdbc-driver#partitionAwarenessSQLCacheSize
>
> On Wed, Aug 28, 2024 at 11:24 PM Jeremy McMillan <[email protected]> wrote:
>
>> Probably not in the way you might expect from the question. From the
>> documentation:
>> "The driver connects to one of the cluster nodes and forwards all the
>> queries to it for final execution. The node handles the query distribution
>> and the result’s aggregations. Then the result is sent back to the client
>> application."
>>
>> The JDBC client has a persistent connection to one cluster node, to which
>> all queries are sent. The JDBC client does not connect to multiple nodes to
>> handle multiple INSERTs.
>>
>> On Wed, Aug 28, 2024 at 3:45 AM 38797715 <[email protected]> wrote:
>>
>>> Does the JDBC thin driver support partition aware execution of INSERT
>>> statements?
>>>
>>

Reply via email to