[jira] [Commented] (IGNITE-22266) Move IgniteTables to org.apache.ignite.table package

2024-05-30 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-22266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17850626#comment-17850626
 ] 

Igor Sapego commented on IGNITE-22266:
--

Looks good

> Move IgniteTables to org.apache.ignite.table package
> 
>
> Key: IGNITE-22266
> URL: https://issues.apache.org/jira/browse/IGNITE-22266
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> IgniteTables is in it's own *manager* package which is weird and inconsistent 
> with other top-level APIs (compute, sql, tx, ...). Move it up to 
> *o.a.i.table*.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-19546) .NET: Thin 3.0: Data Streamer with Receiver

2024-05-29 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-19546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17850407#comment-17850407
 ] 

Igor Sapego commented on IGNITE-19546:
--

Looks good to me.

> .NET: Thin 3.0: Data Streamer with Receiver
> ---
>
> Key: IGNITE-19546
> URL: https://issues.apache.org/jira/browse/IGNITE-19546
> Project: Ignite
>  Issue Type: Task
>  Components: thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, iep-102, iep-121, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Implement data streamer with receiver in .NET client - see Use Case 2 in the 
> [IEP-102|https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer].



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-22125) .NET: Thin 3.0: Implement MapReduce API

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22125?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego reassigned IGNITE-22125:


Assignee: Pavel Tupitsyn

> .NET: Thin 3.0: Implement MapReduce API
> ---
>
> Key: IGNITE-22125
> URL: https://issues.apache.org/jira/browse/IGNITE-22125
> Project: Ignite
>  Issue Type: Improvement
>  Components: compute, platforms, thin client
>Reporter: Vadim Pakhnushev
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
>
> Implement {{ClientTaskExecution}} in .NET client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-22150) .NET Thin 3.0: Implement Table partition API

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22150?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego reassigned IGNITE-22150:


Assignee: Pavel Tupitsyn

> .NET Thin 3.0: Implement Table partition API
> 
>
> Key: IGNITE-22150
> URL: https://issues.apache.org/jira/browse/IGNITE-22150
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Reporter: Mikhail Pochatkin
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
>
> Need to implement *org.apache.ignite.table.partition.PartitionManager* 
> interface in .NET Thin Client. 
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22353) Python Client 3: Implement a project stub for the DB API Driver

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22353?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22353:
-
Summary: Python Client 3: Implement a project stub for the DB API Driver  
(was: Python Client 3: Implement a basic version of DB API Driver)

> Python Client 3: Implement a project stub for the DB API Driver
> ---
>
> Key: IGNITE-22353
> URL: https://issues.apache.org/jira/browse/IGNITE-22353
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Let's start implementation of Python Driver for Ignite 3, complying with [PEP 
> 249|https://peps.python.org/pep-0249/], by implementing a project stub, with 
> basic test infrastructure and ability to establish connection to the node. No 
> useful functionality at this point.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22353) Python Client 3: Implement a basic version of DB API Driver

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22353?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22353:
-
Description: 
Let's start implementation of Python Driver for Ignite 3, complying with [PEP 
249|https://peps.python.org/pep-0249/], by implementing a project stub, with 
basic test infrastructure and ability to establish connection to the node. No 
useful functionality at this point.





  was:
Implement the very basic version of Python Driver for Ignite 3, complying with 
[PEP 249|https://peps.python.org/pep-0249/].






> Python Client 3: Implement a basic version of DB API Driver
> ---
>
> Key: IGNITE-22353
> URL: https://issues.apache.org/jira/browse/IGNITE-22353
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Let's start implementation of Python Driver for Ignite 3, complying with [PEP 
> 249|https://peps.python.org/pep-0249/], by implementing a project stub, with 
> basic test infrastructure and ability to establish connection to the node. No 
> useful functionality at this point.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22353) Python Client 3: Implement a basic version of DB API Driver

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22353?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22353:
-
Description: 
Implement the very basic version of Python Driver for Ignite 3, complying with 
[PEP 249|https://peps.python.org/pep-0249/].





  was:
Implement the very basic version of Python Driver for Ignite 3, complying with 
[PEP 249|https://peps.python.org/pep-0249/].





> Python Client 3: Implement a basic version of DB API Driver
> ---
>
> Key: IGNITE-22353
> URL: https://issues.apache.org/jira/browse/IGNITE-22353
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Implement the very basic version of Python Driver for Ignite 3, complying 
> with [PEP 249|https://peps.python.org/pep-0249/].



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22353) Python Thin 3.0: Implement a basic version of DB API Driver

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22353?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22353:
-
Epic Link: IGNITE-6

> Python Thin 3.0: Implement a basic version of DB API Driver
> ---
>
> Key: IGNITE-22353
> URL: https://issues.apache.org/jira/browse/IGNITE-22353
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Implement the very basic version of Python Driver for Ignite 3, complying 
> with [PEP 249|https://peps.python.org/pep-0249/].



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22353) Python Client 3: Implement a basic version of DB API Driver

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22353?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22353:
-
Summary: Python Client 3: Implement a basic version of DB API Driver  (was: 
Python Thin 3.0: Implement a basic version of DB API Driver)

> Python Client 3: Implement a basic version of DB API Driver
> ---
>
> Key: IGNITE-22353
> URL: https://issues.apache.org/jira/browse/IGNITE-22353
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Implement the very basic version of Python Driver for Ignite 3, complying 
> with [PEP 249|https://peps.python.org/pep-0249/].



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22353) Python Thin 3.0: Implement a basic version of DB API Driver

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22353?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22353:
-
Summary: Python Thin 3.0: Implement a basic version of DB API Driver  (was: 
Python 3.0: Implement a basic version of DB API Driver)

> Python Thin 3.0: Implement a basic version of DB API Driver
> ---
>
> Key: IGNITE-22353
> URL: https://issues.apache.org/jira/browse/IGNITE-22353
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Implement the very basic version of Python Driver for Ignite 3, complying 
> with [PEP 249|https://peps.python.org/pep-0249/].



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22353) Python 3.0: Implement a basic version of DB API Driver

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22353?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22353:
-
Summary: Python 3.0: Implement a basic version of DB API Driver  (was: 
Python 3.0: Implement very basic version of DB API Driver)

> Python 3.0: Implement a basic version of DB API Driver
> --
>
> Key: IGNITE-22353
> URL: https://issues.apache.org/jira/browse/IGNITE-22353
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Implement the very basic version of Python Driver for Ignite 3, complying 
> with [PEP 249|https://peps.python.org/pep-0249/].



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22353) Python 3.0: Implement very basic version of DB API Driver

2024-05-28 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22353:


 Summary: Python 3.0: Implement very basic version of DB API Driver
 Key: IGNITE-22353
 URL: https://issues.apache.org/jira/browse/IGNITE-22353
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego
 Fix For: 3.0.0-beta2


Implement the very basic version of Python Driver for Ignite 3, complying with 
[PEP 249|https://peps.python.org/pep-0249/].






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-22151) C++ Thin 3.0: Implement Table partition API

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22151?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego reassigned IGNITE-22151:


Assignee: Igor Sapego

> C++ Thin 3.0: Implement Table partition API
> ---
>
> Key: IGNITE-22151
> URL: https://issues.apache.org/jira/browse/IGNITE-22151
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Reporter: Mikhail Pochatkin
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Need to implement *org.apache.ignite.table.partition.PartitionManager* 
> interface in C++ Thin Client. 
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22351) C++ 3.0: Set-up doxygen documentation generation

2024-05-28 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22351?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22351:
-
Component/s: documentation
 platforms
 thin client

> C++ 3.0: Set-up doxygen documentation generation
> 
>
> Key: IGNITE-22351
> URL: https://issues.apache.org/jira/browse/IGNITE-22351
> Project: Ignite
>  Issue Type: New Feature
>  Components: documentation, platforms, thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Our C++ code is documented in doxygen-style, but we do not generate any 
> documentation yet. Add a Doxyfile, probably TC suite, and make sure that 
> documentation is generated correctly.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22351) C++ 3.0: Set-up doxygen documentation generation

2024-05-28 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22351:


 Summary: C++ 3.0: Set-up doxygen documentation generation
 Key: IGNITE-22351
 URL: https://issues.apache.org/jira/browse/IGNITE-22351
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego
 Fix For: 3.0.0-beta2


Our C++ code is documented in doxygen-style, but we do not generate any 
documentation yet. Add a Doxyfile, probably TC suite, and make sure that 
documentation is generated correctly.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-19544) Thin 3.0: Data Streamer with Receiver

2024-05-23 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-19544?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17848949#comment-17848949
 ] 

Igor Sapego commented on IGNITE-19544:
--

Left a comment. Overall looks good.

> Thin 3.0: Data Streamer with Receiver
> -
>
> Key: IGNITE-19544
> URL: https://issues.apache.org/jira/browse/IGNITE-19544
> Project: Ignite
>  Issue Type: Task
>  Components: thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: iep-102, iep-121, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Implement data streamer with receiver in Java client - see 
> [IEP-121|https://cwiki.apache.org/confluence/display/IGNITE/IEP-121%3A+Data+Streamer+with+Receiver]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-22208) Deduplicate DEFAULT_SCHEMA_NAME

2024-05-15 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-22208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17846547#comment-17846547
 ] 

Igor Sapego commented on IGNITE-22208:
--

Looks good to me.

> Deduplicate DEFAULT_SCHEMA_NAME
> ---
>
> Key: IGNITE-22208
> URL: https://issues.apache.org/jira/browse/IGNITE-22208
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> The following constant is duplicated 6 times currently:
> {code:java}
> DEFAULT_SCHEMA_NAME = "PUBLIC"
> {code}
> * Let's put it somewhere in the core module and reuse.
> * It should *not* be a part of the public API. For internal use only.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22239) Python Client 3: Implement documentation generation

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22239:


 Summary: Python Client 3: Implement documentation generation
 Key: IGNITE-22239
 URL: https://issues.apache.org/jira/browse/IGNITE-22239
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego


Consider using Sphinx to generate documentation to be able to upload it to 
readthedocs.com.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22238) Python Client 3: Implement key-value view API

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22238:


 Summary: Python Client 3: Implement key-value view API
 Key: IGNITE-22238
 URL: https://issues.apache.org/jira/browse/IGNITE-22238
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego


Implement the API, tests and benchmarks.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22237) Python Client 3: Implement record view API

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22237:


 Summary: Python Client 3: Implement record view API
 Key: IGNITE-22237
 URL: https://issues.apache.org/jira/browse/IGNITE-22237
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego


Implement API, tests and benchmarks.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22232) Python Client 3: Implement benchmarks for binary record view operations

2024-05-14 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22232:
-
Summary: Python Client 3: Implement benchmarks for binary record view 
operations  (was: Python Client 3: Implement benchmarks for record view 
operations)

> Python Client 3: Implement benchmarks for binary record view operations
> ---
>
> Key: IGNITE-22232
> URL: https://issues.apache.org/jira/browse/IGNITE-22232
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Python client performance is a major concern, as it is a big issue in Ignite 
> 2. Some basic benchmarks are required:
> - Benchmark scenario: insert values into cluster, get values from cluster;
> - Measure both throughput and latency;



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22236) Python Client 3: Implement key-value binary view API

2024-05-14 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22236:
-
Summary: Python Client 3: Implement key-value binary view API  (was: Python 
3.0: Implement key-value binary view API)

> Python Client 3: Implement key-value binary view API
> 
>
> Key: IGNITE-22236
> URL: https://issues.apache.org/jira/browse/IGNITE-22236
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Implement API, add tests and benchmarks.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22236) Python 3.0: Implement key-value binary view API

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22236:


 Summary: Python 3.0: Implement key-value binary view API
 Key: IGNITE-22236
 URL: https://issues.apache.org/jira/browse/IGNITE-22236
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego


Implement API, add tests and benchmarks.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22234) Python Client 3: Implement binary record view API

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22234:


 Summary: Python Client 3: Implement binary record view API
 Key: IGNITE-22234
 URL: https://issues.apache.org/jira/browse/IGNITE-22234
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego


Implement binary record view API.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22232) Python Client 3: Implement benchmarks for record view operations

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22232:


 Summary: Python Client 3: Implement benchmarks for record view 
operations
 Key: IGNITE-22232
 URL: https://issues.apache.org/jira/browse/IGNITE-22232
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego


Python client performance is a major concern, as it is a big issue in Ignite 2. 
Some basic benchmarks are required:
- Benchmark scenario: insert values into cluster, get values from cluster;
- Measure both throughput and latency;



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22230) Python Client 3: Implement SQL API

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22230:


 Summary: Python Client 3: Implement SQL API
 Key: IGNITE-22230
 URL: https://issues.apache.org/jira/browse/IGNITE-22230
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego


Implement SQL API and add related tests and benchmarks.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22229) Python Client 3: Design Python Client for Ignite 3

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-9:


 Summary: Python Client 3: Design Python Client for Ignite 3
 Key: IGNITE-9
 URL: https://issues.apache.org/jira/browse/IGNITE-9
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego


Create, discuss with community and approve an IEP for Python Client for Ignite 
3.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-22229) Python Client 3: Design Python Client for Ignite 3

2024-05-14 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-9?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego reassigned IGNITE-9:


Assignee: Igor Sapego

> Python Client 3: Design Python Client for Ignite 3
> --
>
> Key: IGNITE-9
> URL: https://issues.apache.org/jira/browse/IGNITE-9
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Create, discuss with community and approve an IEP for Python Client for 
> Ignite 3.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22228) Python Client 3: Implement Table API

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-8:


 Summary: Python Client 3: Implement Table API
 Key: IGNITE-8
 URL: https://issues.apache.org/jira/browse/IGNITE-8
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego


Implement Table API and tests for it for Python Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22227) Python Client 3: Implement the most basic version of Client for Ignite 3

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-7:


 Summary: Python Client 3: Implement the most basic version of 
Client for Ignite 3
 Key: IGNITE-7
 URL: https://issues.apache.org/jira/browse/IGNITE-7
 Project: Ignite
  Issue Type: New Feature
Reporter: Igor Sapego
Assignee: Igor Sapego


Needs  to be done:
- Set-up project structure;
- Implement basic version of Python Client, that can connect to cluster;
- Implement basic tests (connection to the cluster);



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22227) Python Client 3: Implement the most basic version of Client for Ignite 3

2024-05-14 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-7?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-7:
-
Epic Link: IGNITE-6

> Python Client 3: Implement the most basic version of Client for Ignite 3
> 
>
> Key: IGNITE-7
> URL: https://issues.apache.org/jira/browse/IGNITE-7
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Needs  to be done:
> - Set-up project structure;
> - Implement basic version of Python Client, that can connect to cluster;
> - Implement basic tests (connection to the cluster);



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22226) Python Client 3.0

2024-05-14 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-6?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-6:
-
Labels: ignite-3  (was: )

> Python Client 3.0
> -
>
> Key: IGNITE-6
> URL: https://issues.apache.org/jira/browse/IGNITE-6
> Project: Ignite
>  Issue Type: Epic
>  Components: platforms, thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> An epic for tickets to implement initial version of Python Client for Ignite 
> 3.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22226) Python Client 3.0

2024-05-14 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-6:


 Summary: Python Client 3.0
 Key: IGNITE-6
 URL: https://issues.apache.org/jira/browse/IGNITE-6
 Project: Ignite
  Issue Type: Epic
  Components: platforms, thin client
Reporter: Igor Sapego
Assignee: Igor Sapego


An epic for tickets to implement initial version of Python Client for Ignite 3.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-22031) .NET: Thin 3.0: Remove DataStreamer.PartitionAssignmentUpdateFrequency

2024-05-14 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-22031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17846264#comment-17846264
 ] 

Igor Sapego commented on IGNITE-22031:
--

Looks good to me.

> .NET: Thin 3.0: Remove DataStreamer.PartitionAssignmentUpdateFrequency
> --
>
> Key: IGNITE-22031
> URL: https://issues.apache.org/jira/browse/IGNITE-22031
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Timer-based partition assignment check is not necessary. 
> *Table.GetPartitionAssignmentAsync* is backed by a cache with a 
> double-checked locking, and uses a *ValueTask*, so there is no overhead in 
> case of unchanged assignment - we can call it as often as needed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-22205) Java thin 3.0: Reuse SQL API implementations from embedded

2024-05-14 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-22205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17846238#comment-17846238
 ] 

Igor Sapego commented on IGNITE-22205:
--

Looks good to me

> Java thin 3.0: Reuse SQL API implementations from embedded
> --
>
> Key: IGNITE-22205
> URL: https://issues.apache.org/jira/browse/IGNITE-22205
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql, thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> The following classes can be moved to *core* module and reused across client 
> and embedded APIs:
> * StatementImpl
> * StatementBuilderImpl
> * ResultSetMetadataImpl
> * ColumnMetadataImpl
> * ColumnOriginImpl



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21604) .NET: Thin 3.0: Pass client time zone to server

2024-05-13 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21604?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17845925#comment-17845925
 ] 

Igor Sapego commented on IGNITE-21604:
--

By "let's document this" I mean separate documentation ticket of course.

> .NET: Thin 3.0: Pass client time zone to server
> ---
>
> Key: IGNITE-21604
> URL: https://issues.apache.org/jira/browse/IGNITE-21604
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Reporter: Pavel Pereslegin
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Once IGNITE-21551 is implemented, it will be possible to set the time zone in 
> a user session.
> The session time zone is taken into account when calling functions for 
> obtaining the current time (CURRENT_TIMESTAMP, etc), as well as when 
> processing a string literal for the 'TIMESTAMP WITH LOCAL TIME ZONE' type.
> For this to work correctly, you need to transfer the client's time zone 
> through the thin client.
> p.s. check the TODOs that point to this ticket.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21604) .NET: Thin 3.0: Pass client time zone to server

2024-05-13 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21604?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17845924#comment-17845924
 ] 

Igor Sapego commented on IGNITE-21604:
--

Looks good to me, but let's document that there may be mistmatches between 
timezones on different platforms, so that user would consider this when 
developing their application. Of course, it's user's responsibility to check 
things like this, but it will only benefit us if we'd give them a hint.

> .NET: Thin 3.0: Pass client time zone to server
> ---
>
> Key: IGNITE-21604
> URL: https://issues.apache.org/jira/browse/IGNITE-21604
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Reporter: Pavel Pereslegin
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Once IGNITE-21551 is implemented, it will be possible to set the time zone in 
> a user session.
> The session time zone is taken into account when calling functions for 
> obtaining the current time (CURRENT_TIMESTAMP, etc), as well as when 
> processing a string literal for the 'TIMESTAMP WITH LOCAL TIME ZONE' type.
> For this to work correctly, you need to transfer the client's time zone 
> through the thin client.
> p.s. check the TODOs that point to this ticket.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-21604) .NET: Thin 3.0: Pass client time zone to server

2024-05-13 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-21604?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-21604:
-
Ignite Flags: Docs Required

> .NET: Thin 3.0: Pass client time zone to server
> ---
>
> Key: IGNITE-21604
> URL: https://issues.apache.org/jira/browse/IGNITE-21604
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Reporter: Pavel Pereslegin
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Once IGNITE-21551 is implemented, it will be possible to set the time zone in 
> a user session.
> The session time zone is taken into account when calling functions for 
> obtaining the current time (CURRENT_TIMESTAMP, etc), as well as when 
> processing a string literal for the 'TIMESTAMP WITH LOCAL TIME ZONE' type.
> For this to work correctly, you need to transfer the client's time zone 
> through the thin client.
> p.s. check the TODOs that point to this ticket.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21568) Java thin 3.0: Pass client time zone to server

2024-05-10 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21568?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17845359#comment-17845359
 ] 

Igor Sapego commented on IGNITE-21568:
--

Looks good overall. Left a comment.

> Java thin 3.0: Pass client time zone to server
> --
>
> Key: IGNITE-21568
> URL: https://issues.apache.org/jira/browse/IGNITE-21568
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Reporter: Pavel Pereslegin
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Once IGNITE-21551 is implemented, it will be possible to set the time zone in 
> a user session.
> The session time zone is taken into account when calling functions for 
> obtaining the current time (CURRENT_TIMESTAMP, etc), as well as when 
> processing a string literal for the 'TIMESTAMP WITH LOCAL TIME ZONE' type.
> For this to work correctly, you need to transfer the client's time zone 
> through the thin client.
> p.s. check the TODOs that point to this ticket.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-19682) .NET: Thin 3.0: Tx partition awareness

2024-05-09 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-19682?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17845001#comment-17845001
 ] 

Igor Sapego commented on IGNITE-19682:
--

Looks good to me.

> .NET: Thin 3.0: Tx partition awareness
> --
>
> Key: IGNITE-19682
> URL: https://issues.apache.org/jira/browse/IGNITE-19682
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ignite-3, performance
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Currently, client sends a separate *TX_BEGIN* request when the user invokes 
> *ITransactions.BeginAsync* API:
> * Extra network request.
> * Chosen tx coordinator (server node that handles TX_BEGIN request) is random 
> and in most cases won't be the primary node for enlisted keys.
> Solution:
> * On the client, do not send *TX_BEGIN* request when the user invokes 
> *ITransactions.BeginAsync*. Instead, start the tx "on demand" when it is 
> first used in some API.
> * Send two requests at once to the same node where the first enlisted 
> operation goes (according to partition awareness, if applicable).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21962) ignite-client-handler tests fail due to hardcoded handshake response size

2024-05-02 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21962?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17842928#comment-17842928
 ] 

Igor Sapego commented on IGNITE-21962:
--

Looks good to me.

> ignite-client-handler tests fail due to hardcoded handshake response size
> -
>
> Key: IGNITE-21962
> URL: https://issues.apache.org/jira/browse/IGNITE-21962
> Project: Ignite
>  Issue Type: Bug
>  Components: thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> The following tests fail if you change *IgniteProductVersion.CURRENT_VERSION* 
> so that the string length is different, because handshake response size 
> changes:
>  
> * 
> *org.apache.ignite.client.handler.ItClientHandlerMetricsTest#testBytesSentReceived*
> * 
> *org.apache.ignite.client.handler.ItClientHandlerTest#testHandshakeWithAuthenticationValidCredentials*
> * 
> *org.apache.ignite.client.handler.ItClientHandlerTest#testHandshakeValidReturnsSuccess*



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21629) Add TLSv1_3 to o.a.i.client.SslProtocol

2024-05-02 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17842882#comment-17842882
 ] 

Igor Sapego commented on IGNITE-21629:
--

Looks good to me.

> Add TLSv1_3 to o.a.i.client.SslProtocol
> ---
>
> Key: IGNITE-21629
> URL: https://issues.apache.org/jira/browse/IGNITE-21629
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
> Fix For: 2.17
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> *TLSv1_3* will be used automatically when supported by the JDK if you keep 
> the default *SslProtocol.TLS* in *ClientConfiguration*. However, it is not 
> possible to specify explicitly - we should add a enum entry to *SslProtocol*.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-19855) ODBC 3.0: Implement multiple queries execution

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-19855?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-19855:
-
Epic Link:   (was: IGNITE-20815)

> ODBC 3.0: Implement multiple queries execution
> --
>
> Key: IGNITE-19855
> URL: https://issues.apache.org/jira/browse/IGNITE-19855
> Project: Ignite
>  Issue Type: New Feature
>  Components: odbc
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Currently, we do not support execution of multiple queries and fetching of 
> multiple result sets. Let's implement it.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-22086) Thin 3.0: observableTimestamp is 0 after handshake

2024-04-30 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-22086?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17842303#comment-17842303
 ] 

Igor Sapego commented on IGNITE-22086:
--

Looks good to me.

> Thin 3.0: observableTimestamp is 0 after handshake
> --
>
> Key: IGNITE-22086
> URL: https://issues.apache.org/jira/browse/IGNITE-22086
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms, thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> We propagate *observableTimestamp* to client with every response (see 
> *ClientInboundMessageHandler#writeResponseHeader*), but not on handshake. As 
> a result, the very first operation from the client has 
> *observableTimestamp=0*, which can lead to causality issues.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-19684) С++: Thin 3.0: Tx partition awareness

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-19684?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-19684:
-
Epic Link: IGNITE-19902  (was: IGNITE-19479)

> С++: Thin 3.0: Tx partition awareness
> -
>
> Key: IGNITE-19684
> URL: https://issues.apache.org/jira/browse/IGNITE-19684
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Igor Sapego
>Priority: Major
>  Labels: C++, ignite-3
> Fix For: 3.0.0-beta2
>
>
> Currently, client sends a separate *TX_BEGIN* request when the user invokes 
> *transactions.begin_async()* API:
> * Extra network request.
> * Chosen tx coordinator (server node that handles TX_BEGIN request) is random 
> and in most cases won't be the primary node for enlisted keys.
> Solution:
> * On the client, do not send *TX_BEGIN* request when the user invokes 
> *transactions.begin_async()*. Instead, start the tx "on demand" when it is 
> first used in some API.
> * Send two requests at once to the same node where the first enlisted 
> operation goes (according to partition awareness, if applicable).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-19682) .NET: Thin 3.0: Tx partition awareness

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-19682?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-19682:
-
Epic Link: IGNITE-19902  (was: IGNITE-19479)

> .NET: Thin 3.0: Tx partition awareness
> --
>
> Key: IGNITE-19682
> URL: https://issues.apache.org/jira/browse/IGNITE-19682
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ignite-3, performance
> Fix For: 3.0.0-beta2
>
>
> Currently, client sends a separate *TX_BEGIN* request when the user invokes 
> *ITransactions.BeginAsync* API:
> * Extra network request.
> * Chosen tx coordinator (server node that handles TX_BEGIN request) is random 
> and in most cases won't be the primary node for enlisted keys.
> Solution:
> * On the client, do not send *TX_BEGIN* request when the user invokes 
> *ITransactions.BeginAsync*. Instead, start the tx "on demand" when it is 
> first used in some API.
> * Send two requests at once to the same node where the first enlisted 
> operation goes (according to partition awareness, if applicable).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22090) Thin 3.0: Avoid TX_BEGIN round-trip

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22090?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22090:
-
Epic Link: IGNITE-19902  (was: IGNITE-19479)

> Thin 3.0: Avoid TX_BEGIN round-trip
> ---
>
> Key: IGNITE-22090
> URL: https://issues.apache.org/jira/browse/IGNITE-22090
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> IGNITE-19681 implements tx partition awareness, where TX_BEGIN request is 
> performed together with the first enlisted operation. However, this still 
> involves a separate round-trip to start the transaction.
> We can change the protocol to do two things in one go:
> * Start the transaction
> * Enlist first operation
> See the comment from [~ascherbakov]: 
> https://github.com/apache/ignite-3/pull/3640#discussion_r1575943518
> {code}
> This can be optimized even further.
> Currently we still have +1RTT due to begin tx request/response here, which 
> may be sensitive to small transactions.
> A transaction should be started on first map request.
> For this to work logical client tx id should be assigned on client.
> For example, id can consist of local client counter combined with client 
> unique id assigned by server on handshake.
> One bit of 64 bit id is reserved for "first" flag.
> If an operation is "first", the txn is implicitly started.
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-19681) Thin 3.0: Tx partition awareness

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-19681?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-19681:
-
Epic Link: IGNITE-19902  (was: IGNITE-19479)

> Thin 3.0: Tx partition awareness
> 
>
> Key: IGNITE-19681
> URL: https://issues.apache.org/jira/browse/IGNITE-19681
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> Currently, client sends a separate *TX_BEGIN* request when the user invokes 
> *IgniteTransactions.begin()* API:
> * Extra network request.
> * Chosen tx coordinator (server node that handles TX_BEGIN request) is random 
> and in most cases won't be the primary node for enlisted keys.
> Solution:
> * On the client, do not send *TX_BEGIN* request when the user invokes 
> *IgniteTransactions.begin()*. Instead, start the tx "on demand" when it is 
> first used in some API.
> * Send two requests at once to the same node where the first enlisted 
> operation goes (according to partition awareness, if applicable).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22145) C++ 3.0: Implement Data Streamer with Receiver for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22145?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22145:
-
Labels: iep-102 ignite-3  (was: ignite-3)

> C++ 3.0: Implement Data Streamer with Receiver for C++ client
> -
>
> Key: IGNITE-22145
> URL: https://issues.apache.org/jira/browse/IGNITE-22145
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: iep-102, ignite-3
>
> Let's implement data streamer with receiver for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22144) C++ 3.0: Implement Basic Data Streamer for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22144:
-
Description: 
Let's implement basic version of [IEP-102 
Data 
Streamer|https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer]
 for C++ Client.

  was:
Let's implement basic version of [IEP-102 
Data 
Streamer|"https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer;]
 for C++ Client.


> C++ 3.0: Implement Basic Data Streamer for C++ client
> -
>
> Key: IGNITE-22144
> URL: https://issues.apache.org/jira/browse/IGNITE-22144
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: iep-102, ignite-3
>
> Let's implement basic version of [IEP-102 
> Data 
> Streamer|https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer]
>  for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22144) C++ 3.0: Implement Basic Data Streamer for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22144:
-
Description: 
Let's implement basic version of [IEP-102 
Data 
Streamer|"https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer;]
 for C++ Client.

  was:
Let's implement basic version of [IEP-102 
Data 
Streamer|https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer]
 for C++ Client.


> C++ 3.0: Implement Basic Data Streamer for C++ client
> -
>
> Key: IGNITE-22144
> URL: https://issues.apache.org/jira/browse/IGNITE-22144
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: iep-102, ignite-3
>
> Let's implement basic version of [IEP-102 
> Data 
> Streamer|"https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer;]
>  for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22141) C++ 3.0: Implement Partition Awareness for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22141?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22141:
-
Labels: iep-95 ignite-3  (was: ignite-3)

> C++ 3.0: Implement Partition Awareness for C++ client
> -
>
> Key: IGNITE-22141
> URL: https://issues.apache.org/jira/browse/IGNITE-22141
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: iep-95, ignite-3
>
> Need to implement [IEP-95 Client Partition 
> Awareness|https://cwiki.apache.org/confluence/display/IGNITE/IEP-95%3A+Client+Partition+Awareness]
>  for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22143) C++ 3.0: Implement Heartbeats for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22143?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22143:
-
Labels: iep-83 ignite-3  (was: ignite-3)

> C++ 3.0: Implement Heartbeats for C++ client
> 
>
> Key: IGNITE-22143
> URL: https://issues.apache.org/jira/browse/IGNITE-22143
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: iep-83, ignite-3
>
> Let's implement [IEP-83 Thin Client 
> Keepalive|https://cwiki.apache.org/confluence/display/IGNITE/IEP-83+Thin+Client+Keepalive]
>  for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22144) C++ 3.0: Implement Basic Data Streamer for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22144:
-
Labels: iep-102 ignite-3  (was: ignite-3)

> C++ 3.0: Implement Basic Data Streamer for C++ client
> -
>
> Key: IGNITE-22144
> URL: https://issues.apache.org/jira/browse/IGNITE-22144
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: iep-102, ignite-3
>
> Let's implement basic version of [IEP-102 
> Data 
> Streamer|https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer]
>  for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22145) C++ 3.0: Implement Data Streamer with Receiver for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22145?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22145:
-
Epic Link: IGNITE-22146

> C++ 3.0: Implement Data Streamer with Receiver for C++ client
> -
>
> Key: IGNITE-22145
> URL: https://issues.apache.org/jira/browse/IGNITE-22145
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Let's implement data streamer with receiver for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22142) C++ 3.0: Implement Retry Policy for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22142:
-
Epic Link: IGNITE-22146

> C++ 3.0: Implement Retry Policy for C++ client
> --
>
> Key: IGNITE-22142
> URL: https://issues.apache.org/jira/browse/IGNITE-22142
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Need to implement [IEP-82 Thin Client Retry 
> Policy|https://cwiki.apache.org/confluence/display/IGNITE/IEP-82+Thin+Client+Retry+Policy]
>  for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22146) C++ 3.0: Feature Parity

2024-04-30 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22146:


 Summary: C++ 3.0: Feature Parity
 Key: IGNITE-22146
 URL: https://issues.apache.org/jira/browse/IGNITE-22146
 Project: Ignite
  Issue Type: Epic
  Components: thin client
Reporter: Igor Sapego


This is an epic to keep track of the features that need to be implemented for 
C++ Client to have feature parity with Java Client. See 
https://cwiki.apache.org/confluence/display/IGNITE/Client+Features for details



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22141) C++ 3.0: Implement Partition Awareness for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22141?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22141:
-
Epic Link: IGNITE-22146

> C++ 3.0: Implement Partition Awareness for C++ client
> -
>
> Key: IGNITE-22141
> URL: https://issues.apache.org/jira/browse/IGNITE-22141
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Need to implement [IEP-95 Client Partition 
> Awareness|https://cwiki.apache.org/confluence/display/IGNITE/IEP-95%3A+Client+Partition+Awareness]
>  for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22144) C++ 3.0: Implement Basic Data Streamer for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22144:
-
Epic Link: IGNITE-22146

> C++ 3.0: Implement Basic Data Streamer for C++ client
> -
>
> Key: IGNITE-22144
> URL: https://issues.apache.org/jira/browse/IGNITE-22144
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Let's implement basic version of [IEP-102 
> Data 
> Streamer|https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer]
>  for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-22143) C++ 3.0: Implement Heartbeats for C++ client

2024-04-30 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22143?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22143:
-
Epic Link: IGNITE-22146

> C++ 3.0: Implement Heartbeats for C++ client
> 
>
> Key: IGNITE-22143
> URL: https://issues.apache.org/jira/browse/IGNITE-22143
> Project: Ignite
>  Issue Type: New Feature
>  Components: thin client
>Reporter: Igor Sapego
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Let's implement [IEP-83 Thin Client 
> Keepalive|https://cwiki.apache.org/confluence/display/IGNITE/IEP-83+Thin+Client+Keepalive]
>  for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22144) C++ 3.0: Implement Basic Data Streamer for C++ client

2024-04-30 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22144:


 Summary: C++ 3.0: Implement Basic Data Streamer for C++ client
 Key: IGNITE-22144
 URL: https://issues.apache.org/jira/browse/IGNITE-22144
 Project: Ignite
  Issue Type: New Feature
  Components: thin client
Reporter: Igor Sapego
Assignee: Igor Sapego


Let's implement basic version of [IEP-102 
Data 
Streamer|https://cwiki.apache.org/confluence/display/IGNITE/IEP-102%3A+Data+Streamer]
 for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22145) C++ 3.0: Implement Data Streamer with Receiver for C++ client

2024-04-30 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22145:


 Summary: C++ 3.0: Implement Data Streamer with Receiver for C++ 
client
 Key: IGNITE-22145
 URL: https://issues.apache.org/jira/browse/IGNITE-22145
 Project: Ignite
  Issue Type: New Feature
  Components: thin client
Reporter: Igor Sapego
Assignee: Igor Sapego


Let's implement data streamer with receiver for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22143) C++ 3.0: Implement Heartbeats for C++ client

2024-04-30 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22143:


 Summary: C++ 3.0: Implement Heartbeats for C++ client
 Key: IGNITE-22143
 URL: https://issues.apache.org/jira/browse/IGNITE-22143
 Project: Ignite
  Issue Type: New Feature
  Components: thin client
Reporter: Igor Sapego
Assignee: Igor Sapego


Let's implement [IEP-83 Thin Client 
Keepalive|https://cwiki.apache.org/confluence/display/IGNITE/IEP-83+Thin+Client+Keepalive]
 for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22141) C++ 3.0: Implement Partition Awareness for C++ client

2024-04-30 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22141:


 Summary: C++ 3.0: Implement Partition Awareness for C++ client
 Key: IGNITE-22141
 URL: https://issues.apache.org/jira/browse/IGNITE-22141
 Project: Ignite
  Issue Type: New Feature
  Components: thin client
Reporter: Igor Sapego
Assignee: Igor Sapego


Need to implement [IEP-95 Client Partition 
Awareness|https://cwiki.apache.org/confluence/display/IGNITE/IEP-95%3A+Client+Partition+Awareness]
 for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-22142) C++ 3.0: Implement Retry Policy for C++ client

2024-04-30 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-22142:


 Summary: C++ 3.0: Implement Retry Policy for C++ client
 Key: IGNITE-22142
 URL: https://issues.apache.org/jira/browse/IGNITE-22142
 Project: Ignite
  Issue Type: New Feature
  Components: thin client
Reporter: Igor Sapego
Assignee: Igor Sapego


Need to implement [IEP-82 Thin Client Retry 
Policy|https://cwiki.apache.org/confluence/display/IGNITE/IEP-82+Thin+Client+Retry+Policy]
 for C++ Client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-20475) .NET: Thin 3.0: EF Core provider (investigate)

2024-04-29 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-20475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17842217#comment-17842217
 ] 

Igor Sapego commented on IGNITE-20475:
--

[~ptupitsyn] Looks great to me. Feel free to resolve the ticket.

> .NET: Thin 3.0: EF Core provider (investigate)
> --
>
> Key: IGNITE-20475
> URL: https://issues.apache.org/jira/browse/IGNITE-20475
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms, thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> EF Core provider will allow using Ignite as any other DB supported by EF. 
> This makes adoption incredibly easy for the users - a matter of a few changed 
> lines to switch from Postgres/MsSQL/MySQL, keeping all existing code.
> This is also a big undertaking and needs more investigation/PoC.
> * https://learn.microsoft.com/en-us/ef/core/providers/writing-a-provider
> * 
> https://blog.oneunicorn.com/2016/11/11/so-you-want-to-write-an-ef-core-provider/



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-22086) Thin 3.0: observableTimestamp is 0 after handshake

2024-04-29 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-22086?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17842216#comment-17842216
 ] 

Igor Sapego commented on IGNITE-22086:
--

[~ptupitsyn] Looks good overall, but I have left one comment that needs to be 
addressed.

> Thin 3.0: observableTimestamp is 0 after handshake
> --
>
> Key: IGNITE-22086
> URL: https://issues.apache.org/jira/browse/IGNITE-22086
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms, thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> We propagate *observableTimestamp* to client with every response (see 
> *ClientInboundMessageHandler#writeResponseHeader*), but not on handshake. As 
> a result, the very first operation from the client has 
> *observableTimestamp=0*, which can lead to causality issues.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-22049) C++: Thin 3.0: Add Gradle task to run tests

2024-04-29 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22049?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego reassigned IGNITE-22049:


Assignee: Igor Sapego  (was: Pavel Tupitsyn)

> C++: Thin 3.0: Add Gradle task to run tests
> ---
>
> Key: IGNITE-22049
> URL: https://issues.apache.org/jira/browse/IGNITE-22049
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Add a Gradle task to run C++ tests.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-22088) retryPolicy of IgniteClient doesn't work on transaction fail

2024-04-29 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-22088?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17841967#comment-17841967
 ] 

Igor Sapego commented on IGNITE-22088:
--

[~lunigorn] Originally, the client-side Retry Policy was implemented to retry 
operations on network failures, not on transaction lock. Retry Policy for 
transactions should be probably implemented on the server side and have 
different name and implementation.

> retryPolicy of IgniteClient doesn't work on transaction fail
> 
>
> Key: IGNITE-22088
> URL: https://issues.apache.org/jira/browse/IGNITE-22088
> Project: Ignite
>  Issue Type: Bug
>  Components: clients, thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Igor
>Priority: Major
>  Labels: ignite-3
>
> *Details:*
> IgniteClient do not run retry with set retryPolicy on transaction lock. The 
> default retry policy also doesn't work. The debugging also shows that no any 
> code inside `RetryReadPolicy` is not used during transaction lock exception.
> *Steps to reproduce:*
> Run the next code:
> {code:java}
> AtomicInteger retriesCount = new AtomicInteger(0);
> RetryReadPolicy retry = new RetryReadPolicy() {
> @Override
> public boolean shouldRetry(RetryPolicyContext context) {
> System.out.println("CHECK IF RETRY SHOULD HAPPEN");
> retriesCount.addAndGet(1);
> return super.shouldRetry(context);
> }
> };
> try (IgniteClient igniteClient1 = 
> IgniteClient.builder().retryPolicy(retry).addresses("localhost:10800").build();
> IgniteClient igniteClient2 = 
> IgniteClient.builder().retryPolicy(retry).addresses("localhost:10800").build())
>  {
> igniteClient1.sql().execute(null, "CREATE TABLE teachers(id INTEGER 
> PRIMARY KEY, name VARCHAR(200))");
> Transaction tr1 = igniteClient1.transactions().begin();
> Transaction tr2 = igniteClient2.transactions().begin();
> igniteClient1.sql().execute(tr1, "INSERT INTO TEACHERS (id, name) VALUES 
> (" + 3 + ", '" + "Pavel" + "')");
> SqlException exception = assertThrows(SqlException.class, () -> 
> igniteClient2.sql().execute(tr2, "SELECT * FROM teachers"));
> assertTrue(exception.getMessage().contains("Failed to acquire a lock due 
> to a possible deadlock "));
> }
> assertEquals(16, retriesCount.get()); {code}
> *Expected:*
> Executed without errors.
> *Actual:*
> Fails on the last step expected 16 retries, actual 0.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-22126) C++: Thin 3.0: Implement MapReduce API

2024-04-29 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22126?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego reassigned IGNITE-22126:


Assignee: Igor Sapego

> C++: Thin 3.0: Implement MapReduce API
> --
>
> Key: IGNITE-22126
> URL: https://issues.apache.org/jira/browse/IGNITE-22126
> Project: Ignite
>  Issue Type: Improvement
>  Components: compute, platforms, thin client
>Reporter: Vadim Pakhnushev
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>
> Implement {{ClientTaskExecution}} in C++ client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-21663) Cluster load balancing when 1 node is killed doesn't work

2024-04-15 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-21663?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-21663:
-
Issue Type: Bug  (was: Improvement)

> Cluster load balancing when 1 node is killed doesn't work
> -
>
> Key: IGNITE-21663
> URL: https://issues.apache.org/jira/browse/IGNITE-21663
> Project: Ignite
>  Issue Type: Bug
>  Components: persistence, sql
>Affects Versions: 3.0.0-beta1
>Reporter: Igor
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta1
>
>
> *Steps to reproduce:*
>  # Start cluster with 2 nodes running locally.
>  # Make connection like this:
> {code:java}
> try (IgniteClient igniteClient = IgniteClient.builder().retryPolicy(new 
> RetryLimitPolicy()).addresses(thinClientEndpoints.toArray(new 
> String[]{"localhost:10800","localhost:10801"})).build()) {
>     try (Session session = igniteClient.sql().createSession()) {
>         //code here
>     }
> } {code}
> 3. Create table with replication 2
> 4. Execute insert 1 row and select from the table.
> 5. Kill first node (in list of connection)
> 6. Execute select from the table.
> *Expected:*
> Cluster works with one node.
> *Actual:*
> The exception on select after first node is killed, the select is not 
> executed.
> {code:java}
> org.apache.ignite.sql.SqlException: IGN-CMN-65535 
> TraceId:92e48867-2e6e-4730-9781-527a4e204b32 Unable to send fragment 
> [targetNode=ConnectionTest_cluster_0, fragmentId=1, 
> cause=io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection 
> refused: no further information: /192.168.100.5:3344]
>     at 
> java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
>     at 
> org.apache.ignite.internal.util.ExceptionUtils$1.copy(ExceptionUtils.java:765)
>     at 
> org.apache.ignite.internal.util.ExceptionUtils$ExceptionFactory.createCopy(ExceptionUtils.java:699)
>     at 
> org.apache.ignite.internal.util.ExceptionUtils.copyExceptionWithCause(ExceptionUtils.java:525)
>     at 
> org.apache.ignite.internal.util.ExceptionUtils.copyExceptionWithCauseInternal(ExceptionUtils.java:634)
>     at 
> org.apache.ignite.internal.util.ExceptionUtils.copyExceptionWithCause(ExceptionUtils.java:476)
>     at 
> org.apache.ignite.internal.sql.AbstractSession.execute(AbstractSession.java:63)
>     at 
> org.gridgain.ai3tests.tests.teststeps.ThinClientSteps.lambda$executeQuery$0(ThinClientSteps.java:61)
>     at io.qameta.allure.Allure.lambda$step$1(Allure.java:127)
>     at io.qameta.allure.Allure.step(Allure.java:181)
>     at io.qameta.allure.Allure.step(Allure.java:125)
>     at 
> org.gridgain.ai3tests.tests.teststeps.ThinClientSteps.executeQuery(ThinClientSteps.java:61)
>     at 
> org.gridgain.ai3tests.tests.ConnectionTest.testThinClientConnectionToMultipleHost(ConnectionTest.java:93)
>     at java.base/java.lang.reflect.Method.invoke(Method.java:566)
>     at java.base/java.util.ArrayList.forEach(ArrayList.java:1540)
>     at java.base/java.util.ArrayList.forEach(ArrayList.java:1540)
> Caused by: java.util.concurrent.CompletionException: 
> org.apache.ignite.sql.SqlException: IGN-CMN-65535 
> TraceId:92e48867-2e6e-4730-9781-527a4e204b32 Unable to send fragment 
> [targetNode=ConnectionTest_cluster_0, fragmentId=1, 
> cause=io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection 
> refused: no further information: /192.168.100.5:3344]
>     at 
> java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331)
>     at 
> java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:346)
>     at 
> java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:870)
>     at 
> java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:837)
>     at 
> java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
>     at 
> java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088)
>     at 
> org.apache.ignite.internal.client.TcpClientChannel.processNextMessage(TcpClientChannel.java:419)
>     at 
> org.apache.ignite.internal.client.TcpClientChannel.lambda$onMessage$3(TcpClientChannel.java:238)
>     at 
> java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1426)
>     at 
> java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
>     at 
> java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
>     at 
> java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
>     at 
> java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
>     at 
> 

[jira] [Updated] (IGNITE-22011) aimem: repeat of create table and drop column leads to Failed to get the primary replica

2024-04-15 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-22011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-22011:
-
Component/s: (was: thin client)

> aimem: repeat of create table and drop column leads to Failed to get the 
> primary replica
> 
>
> Key: IGNITE-22011
> URL: https://issues.apache.org/jira/browse/IGNITE-22011
> Project: Ignite
>  Issue Type: Bug
>  Components: persistence
>Affects Versions: 3.0.0-beta1
> Environment: 2 nodes cluster running on remote machine or locally
>Reporter: Igor
>Priority: Blocker
>  Labels: ignite-3
>
> *Comment:*
> This is the flaky issue and can happen on any operation to table with aimem 
> persistence if the cluster lives long enough.
> h3. Steps to reproduce:
> Run the next queries using *IgniteSql* in cycle with 50 repeats in single 
> connection:
> {code:java}
> create zone if not exists "AIMEM" engine aimem
> create table selectFromDropMultipleJdbc(k1 INTEGER not null, k2 INTEGER not 
> null, v1 VARCHAR(100), v2 VARCHAR(255), v3 TIMESTAMP not null, primary key 
> (k1, k2)) with PRIMARY_ZONE='AIMEM'
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3366, 
> 3367, null, null, '1980-02-27 01:01:49.0')
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3367, 
> 3368, 
> '1v1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_',
>  
> '1v2_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1_1',
>  '1980-02-28 01:01:50.0')
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3368, 
> 3369, 
> '2v1_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_',
>  
> '2v2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2_2',
>  '1980-02-29 01:01:51.0')
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3369, 
> 3370, 
> '3v1_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_',
>  
> '3v2_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3_3',
>  '1980-03-01 01:01:52.0')
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3370, 
> 3371, null, null, '1980-03-02 01:01:53.0')
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3371, 
> 3372, 
> '5v1_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_',
>  
> '5v2_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5_5',
>  '1980-03-03 01:01:54.0')
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3372, 
> 3373, 
> '6v1_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_',
>  
> '6v2_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6_6',
>  '1980-03-04 01:01:55.0')
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3373, 
> 3374, 
> '7v1_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_',
>  
> '7v2_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7_7',
>  '1980-03-05 01:01:56.0')
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3374, 
> 3375, null, null, '1980-03-06 01:01:57.0')
> insert into selectFromDropMultipleJdbc(k1, k2, v1, v2, v3) values (3375, 
> 3376, 
> '9v1_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_9_',
>  
> 

[jira] [Commented] (IGNITE-22030) Thin 3.0: Remove jackson-dataformat-msgpack dependency

2024-04-11 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-22030?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17836235#comment-17836235
 ] 

Igor Sapego commented on IGNITE-22030:
--

Looks good to me.

> Thin 3.0: Remove jackson-dataformat-msgpack dependency
> --
>
> Key: IGNITE-22030
> URL: https://issues.apache.org/jira/browse/IGNITE-22030
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> jackson-dataformat-msgpack dependency is not used, remove it.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-22025) .NET: Console.WriteLine leftovers in DataStreamer

2024-04-10 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-22025?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17835774#comment-17835774
 ] 

Igor Sapego commented on IGNITE-22025:
--

Looks good to me.

> .NET: Console.WriteLine leftovers in DataStreamer
> -
>
> Key: IGNITE-22025
> URL: https://issues.apache.org/jira/browse/IGNITE-22025
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms, thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> *DataStreamer* class has some console output remaining from debugging 
> sessions - remove that.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-21148) Implement client job execution interface

2024-04-09 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-21148?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-21148:
-
Ignite Flags: Docs Required

> Implement client job execution interface
> 
>
> Key: IGNITE-21148
> URL: https://issues.apache.org/jira/browse/IGNITE-21148
> Project: Ignite
>  Issue Type: Improvement
>  Components: compute
>Reporter: Vadim Pakhnushev
>Assignee: Vadim Pakhnushev
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 4h 20m
>  Remaining Estimate: 0h
>
> Implement methods in the {{ClientJobExecution}} class which is used to 
> control compute jobs from the thin client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-21289) .NET: Thin 3.0: implement job execution interface

2024-04-09 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-21289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-21289:
-
Ignite Flags: Docs Required

> .NET: Thin 3.0: implement job execution interface
> -
>
> Key: IGNITE-21289
> URL: https://issues.apache.org/jira/browse/IGNITE-21289
> Project: Ignite
>  Issue Type: Improvement
>  Components: compute, platforms, thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Vadim Pakhnushev
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Implement {{JobExecution}} interface on the client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21490) .NET: Thin 3.0: DataStreamer data removal

2024-04-05 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21490?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17834389#comment-17834389
 ] 

Igor Sapego commented on IGNITE-21490:
--

Looks good to me

> .NET: Thin 3.0: DataStreamer data removal
> -
>
> Key: IGNITE-21490
> URL: https://issues.apache.org/jira/browse/IGNITE-21490
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Implement data removal in .NET data streamer - see Java API changes in 
> IGNITE-21403.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21931) .NET: Thin 3.0: Refactor DataStreamer to use StreamerBatchSend

2024-04-03 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17833544#comment-17833544
 ] 

Igor Sapego commented on IGNITE-21931:
--

Looks good to me

> .NET: Thin 3.0: Refactor DataStreamer to use StreamerBatchSend
> --
>
> Key: IGNITE-21931
> URL: https://issues.apache.org/jira/browse/IGNITE-21931
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Implement IGNITE-21402 in .NET: Use *StreamerBatchSend* instead of 
> *TupleUpsertAll* protocol operation for data streamer.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21765) Java thin 3.0: DataStreamer partition awareness might break if assignment is not available at the moment

2024-04-02 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17833127#comment-17833127
 ] 

Igor Sapego commented on IGNITE-21765:
--

Looks good to me.

> Java thin 3.0: DataStreamer partition awareness might break if assignment is 
> not available at the moment
> 
>
> Key: IGNITE-21765
> URL: https://issues.apache.org/jira/browse/IGNITE-21765
> Project: Ignite
>  Issue Type: Bug
>  Components: streaming, thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> * *ClientTable.getPartitionAssignment* might return an empty list
> * *AbstractClientStreamerPartitionAwarenessProvider* assumes that partition 
> count can't change
> Therefore, if some server node lags behind and returns an empty assignment 
> for a given timestamp, streamer partition awareness won't work at all.
> *Potential Fixes*
> * Wait for assignment on the server, do not return empty/null - might affect 
> performance
> * Return correct partition count, but null values - faster and simpler



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21877) Wrong column deserialization order in ClientKeyValueView

2024-03-29 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21877?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17832233#comment-17832233
 ] 

Igor Sapego commented on IGNITE-21877:
--

Looks good to me.

> Wrong column deserialization order in ClientKeyValueView
> 
>
> Key: IGNITE-21877
> URL: https://issues.apache.org/jira/browse/IGNITE-21877
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Blocker
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> IGNITE-21768 fix was incomplete - some places still use old logic:
> * *readGetAllResponse*
> * *queryMapper*
> Make sure to add tests for all operations in all views to 
> *ItCustomKeyColumnOrderClientTest* .



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21288) C++ thin client: implement job execution interface

2024-03-29 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21288?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17832186#comment-17832186
 ] 

Igor Sapego commented on IGNITE-21288:
--

Fixed findings. Merged to main.

> C++ thin client: implement job execution interface
> --
>
> Key: IGNITE-21288
> URL: https://issues.apache.org/jira/browse/IGNITE-21288
> Project: Ignite
>  Issue Type: Improvement
>  Components: compute, platforms, thin client
>Reporter: Vadim Pakhnushev
>Assignee: Igor Sapego
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> Implement {{JobExecution}} interface on the client.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21875) SQL API cleanup - remove properties and reactive methods

2024-03-29 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17832177#comment-17832177
 ] 

Igor Sapego commented on IGNITE-21875:
--

Looks good to me.

> SQL API cleanup - remove properties and reactive methods
> 
>
> Key: IGNITE-21875
> URL: https://issues.apache.org/jira/browse/IGNITE-21875
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> * *Statement#properties* are not used
> * Reactive APIs are not implemented
> Remove them.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21768) Wrong key column serialization in ClientKeyValueView

2024-03-28 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21768?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17831841#comment-17831841
 ] 

Igor Sapego commented on IGNITE-21768:
--

Looks good to me.

> Wrong key column serialization in ClientKeyValueView
> 
>
> Key: IGNITE-21768
> URL: https://issues.apache.org/jira/browse/IGNITE-21768
> Project: Ignite
>  Issue Type: Bug
>  Components: thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Blocker
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
> Attachments: ItTablePutGetThinWithMarshaller.java
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> *ClientKeyValueView.writeKeyValueRaw* was not updated as part of IGNITE-21525 
> changes and still uses key-first order.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21413) .NET: Thin 3.0: Add tags to metrics

2024-03-26 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21413?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17830941#comment-17830941
 ] 

Igor Sapego commented on IGNITE-21413:
--

Looks good to me.

> .NET: Thin 3.0: Add tags to metrics
> ---
>
> Key: IGNITE-21413
> URL: https://issues.apache.org/jira/browse/IGNITE-21413
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Add tags (= labels in Prometheus = attributes/dimensions in OpenTelemetry) to 
> the metrics in .NET client.
> This will allow the user to monitor entities separately, such as different 
> client instances, streamers, etc.
> https://learn.microsoft.com/en-us/dotnet/core/diagnostics/metrics-instrumentation#multi-dimensional-metrics
> Pay attention to performance - large amount of tag combinations can be 
> problematic:
> https://learn.microsoft.com/en-us/dotnet/core/diagnostics/metrics-instrumentation#best-practices-4



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-15179) Thin 3.0: Implement createTable

2024-03-25 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-15179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-15179:
-
Labels: ignite-3  (was: iep-76 ignite-3)

> Thin 3.0: Implement createTable
> ---
>
> Key: IGNITE-15179
> URL: https://issues.apache.org/jira/browse/IGNITE-15179
> Project: Ignite
>  Issue Type: Improvement
>  Components: thin client
>Affects Versions: 3.0.0-alpha3
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
>
> Implement {{IgniteTables#createTable}} with full configuration support.
> Investigate whether {{Consumer}} API should be changed - there 
> were some plans for that on the dev list.
> https://lists.apache.org/thread.html/rc8b28cf0ae7988831ea3867793a5ea72dfd062e8769c1d32f371fc16%40%3Cdev.ignite.apache.org%3E



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-21797) Column's type mismatch during marshalling of pojo (embedded API)

2024-03-19 Thread Igor Sapego (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-21797?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-21797:
-
Fix Version/s: 3.0.0-beta2

> Column's type mismatch during marshalling of pojo (embedded API)
> 
>
> Key: IGNITE-21797
> URL: https://issues.apache.org/jira/browse/IGNITE-21797
> Project: Ignite
>  Issue Type: Bug
>Reporter: Konstantin Orlov
>Priority: Blocker
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Take a look at the scenario below:
> {code:java}
> static class Key {
> int int_col;
> String str_col;
> }
> static class Val {
> boolean bool_col;
> LocalDate date_col;
> }
> sql("CREATE TABLE test (int_col INT, bool_col BOOLEAN, date_col DATE, 
> str_col VARCHAR, PRIMARY KEY (int_col, str_col))");
> KeyValueView kvView = CLUSTER.aliveNode().tables()
> .table("test")
> .keyValueView(Key.class, Val.class);
> var key = new Key();
> key.int_col = 1;
> key.str_col = "1";
> var val = new Val();
> val.bool_col = true;
> val.date_col = LocalDate.now();
> kvView.put(null, key, val);
> {code}
> Mind the order of primary key fields: the first and the last columns in table 
> declaration. In that case, {{InvalidTypeException}} is thrown, because after 
> IGNITE-19744 key columns are not grouped in the very beginning of the row 
> anymore, but marshaller of embedded client still appends key columns first 
> (see 
> {{org.apache.ignite.internal.schema.marshaller.reflection.KvMarshallerImpl#marshal(K,
>  V)}}).  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21790) .NET: Thin 3.0: Client lifecycle Failover Testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21790:


 Summary: .NET: Thin 3.0: Client lifecycle Failover Testing
 Key: IGNITE-21790
 URL: https://issues.apache.org/jira/browse/IGNITE-21790
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for failover tests in .NET client:
- One client, two servers. Kill one server, then bring it back up. Make sure 
client restores the connection to the server;
- One client, two servers. Kill both servers, one-by-one. Make sure client 
reports error to the user when any operation is attempted;



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21791) C++: Thin 3.0: Client lifecycle Failover Testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21791:


 Summary: C++: Thin 3.0: Client lifecycle Failover Testing
 Key: IGNITE-21791
 URL: https://issues.apache.org/jira/browse/IGNITE-21791
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for failover tests in C++ client:
- One client, two servers. Kill one server, then bring it back up. Make sure 
client restores the connection to the server;
- One client, two servers. Kill both servers, one-by-one. Make sure client 
reports error to the user when any operation is attempted;



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21789) Thin 3.0: Client lifecycle Failover Testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21789:


 Summary: Thin 3.0: Client lifecycle Failover Testing
 Key: IGNITE-21789
 URL: https://issues.apache.org/jira/browse/IGNITE-21789
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for failover tests in Java client:
- One client, two servers. Kill one server, then bring it back up. Make sure 
client restores the connection to the server;
- One client, two servers. Kill both servers, one-by-one. Make sure client 
reports error to the user when any operation is attempted;



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21788) C++: Thin 3.0: Client lifecycle Functional Testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21788:


 Summary: C++: Thin 3.0: Client lifecycle Functional Testing
 Key: IGNITE-21788
 URL: https://issues.apache.org/jira/browse/IGNITE-21788
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for integration tests in C++ client:
- One client, no servers. Make sure client fails to start if no addresses were 
provided by the user;
- One client, no servers. Make sure client fails to start if no addresses that 
were provided by the user resolve to the running server;
- One client, one server. Make sure client is able to establish connection to 
the server if its address specified correctly;
- One client, one server. Make sure client is able to establish connection to 
the server if its address specified correctly, but there are also some 
addresses not leading to a running servers;
- One client, two servers, two different clusters. Make sure client is able to 
establish connection to the first server, but disconnects from the second 
server after handshake, and does not attempt to connect to it again;
- One mock client, one server. Make sure server rejects connection, if the 
client does not provide a correct magic bytes at the begging of the handshake;
- One mock client, one server. Make sure server rejects connection, if the 
client uses unknown protocol version;
- One client, one mock server. Make sure client aborts the connection and 
provides user with a proper error message, if the server uses unknown protocol 
version;
- One client, three servers. Make sure client connects to all three of servers, 
when their addresses are provided by a user;



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21786) Thin 3.0: Client lifecycle Functional Testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21786:


 Summary: Thin 3.0: Client lifecycle Functional Testing
 Key: IGNITE-21786
 URL: https://issues.apache.org/jira/browse/IGNITE-21786
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for integration tests in Java client:
- One client, no servers. Make sure client fails to start if no addresses were 
provided by the user;
- One client, no servers. Make sure client fails to start if no addresses that 
were provided by the user resolve to the running server;
- One client, one server. Make sure client is able to establish connection to 
the server if its address specified correctly;
- One client, one server. Make sure client is able to establish connection to 
the server if its address specified correctly, but there are also some 
addresses not leading to a running servers;
- One client, two servers, two different clusters. Make sure client is able to 
establish connection to the first server, but disconnects from the second 
server after handshake, and does not attempt to connect to it again;
- One mock client, one server. Make sure server rejects connection, if the 
client does not provide a correct magic bytes at the begging of the handshake;
- One mock client, one server. Make sure server rejects connection, if the 
client uses unknown protocol version;
- One client, one mock server. Make sure client aborts the connection and 
provides user with a proper error message, if the server uses unknown protocol 
version;
- One client, three servers. Make sure client connects to all three of servers, 
when their addresses are provided by a user;



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21787) .NET: Thin 3.0: Client lifecycle Functional Testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21787:


 Summary: .NET: Thin 3.0: Client lifecycle Functional Testing
 Key: IGNITE-21787
 URL: https://issues.apache.org/jira/browse/IGNITE-21787
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for integration tests in .NET client:
- One client, no servers. Make sure client fails to start if no addresses were 
provided by the user;
- One client, no servers. Make sure client fails to start if no addresses that 
were provided by the user resolve to the running server;
- One client, one server. Make sure client is able to establish connection to 
the server if its address specified correctly;
- One client, one server. Make sure client is able to establish connection to 
the server if its address specified correctly, but there are also some 
addresses not leading to a running servers;
- One client, two servers, two different clusters. Make sure client is able to 
establish connection to the first server, but disconnects from the second 
server after handshake, and does not attempt to connect to it again;
- One mock client, one server. Make sure server rejects connection, if the 
client does not provide a correct magic bytes at the begging of the handshake;
- One mock client, one server. Make sure server rejects connection, if the 
client uses unknown protocol version;
- One client, one mock server. Make sure client aborts the connection and 
provides user with a proper error message, if the server uses unknown protocol 
version;
- One client, three servers. Make sure client connects to all three of servers, 
when their addresses are provided by a user;



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21785) C++ 3.0: Client lifecycle Integration Testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21785:


 Summary: C++ 3.0: Client lifecycle Integration Testing
 Key: IGNITE-21785
 URL: https://issues.apache.org/jira/browse/IGNITE-21785
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for integration tests in C++ client:
A logic related to address resolving should be covered if possible:
- A single address is provided, that resolves to a single connection point. 
Make sure the address itself is chosen for the initial connection;
- A single address is provided, that resolves to multiple connection points. 
Make sure a random address is chosen for the initial connection;
- Multiple addresses are provided, which resolve to multiple connection points. 
Make sure a random address is chosen for the initial connection.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21783) Thin 3.0: Client lifecycle Integration Testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21783:


 Summary: Thin 3.0: Client lifecycle Integration Testing
 Key: IGNITE-21783
 URL: https://issues.apache.org/jira/browse/IGNITE-21783
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for integration tests in Java client:
A logic related to address resolving should be covered if possible:
- A single address is provided, that resolves to a single connection point. 
Make sure the address itself is chosen for the initial connection;
- A single address is provided, that resolves to multiple connection points. 
Make sure a random address is chosen for the initial connection;
- Multiple addresses are provided, which resolve to multiple connection points. 
Make sure a random address is chosen for the initial connection.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21784) .NET: Thin 3.0: Client lifecycle Integration Testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21784:


 Summary: .NET: Thin 3.0: Client lifecycle Integration Testing
 Key: IGNITE-21784
 URL: https://issues.apache.org/jira/browse/IGNITE-21784
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for integration tests in .NET client:
A logic related to address resolving should be covered if possible:
- A single address is provided, that resolves to a single connection point. 
Make sure the address itself is chosen for the initial connection;
- A single address is provided, that resolves to multiple connection points. 
Make sure a random address is chosen for the initial connection;
- Multiple addresses are provided, which resolve to multiple connection points. 
Make sure a random address is chosen for the initial connection.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21782) C++ 3.0: Client lifecycle unit tests

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21782:


 Summary: C++ 3.0: Client lifecycle unit tests
 Key: IGNITE-21782
 URL: https://issues.apache.org/jira/browse/IGNITE-21782
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for unit tests in C++ client:
- Make sure that address parsing from string is covered, if supported;
- A logic related to choosing an address for the initial connection should be 
isolated and covered by the unit tests;
- A logic related to choosing the next connectable address (if possible). Make 
sure round-robin is used from the random position chosen on the previous step;
- Make sure that the correct port is used by default, if not specified.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21780) .NET: Thin 3.0: Client lifecycle unit tests

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21780:


 Summary: .NET: Thin 3.0: Client lifecycle unit tests
 Key: IGNITE-21780
 URL: https://issues.apache.org/jira/browse/IGNITE-21780
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for unit tests in .NET client:
- Make sure that address parsing from string is covered, if supported;
- A logic related to choosing an address for the initial connection should be 
isolated and covered by the unit tests;
- A logic related to choosing the next connectable address (if possible). Make 
sure round-robin is used from the random position chosen on the previous step;
- Make sure that the correct port is used by default, if not specified.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21779) Thin 3.0: Client lifecycle unit tests

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21779:


 Summary: Thin 3.0: Client lifecycle unit tests
 Key: IGNITE-21779
 URL: https://issues.apache.org/jira/browse/IGNITE-21779
 Project: Ignite
  Issue Type: Improvement
  Components: platforms, thin client
Reporter: Igor Sapego


Need to implement the following plan for unit tests in Java client:
- Make sure that address parsing from string is covered, if supported;
- A logic related to choosing an address for the initial connection should be 
isolated and covered by the unit tests;
- A logic related to choosing the next connectable address (if possible). Make 
sure round-robin is used from the random position chosen on the previous step;
- Make sure that the correct port is used by default, if not specified.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-21778) Client lifecycle testing

2024-03-19 Thread Igor Sapego (Jira)
Igor Sapego created IGNITE-21778:


 Summary: Client lifecycle testing
 Key: IGNITE-21778
 URL: https://issues.apache.org/jira/browse/IGNITE-21778
 Project: Ignite
  Issue Type: Epic
  Components: platforms, thin client
Reporter: Igor Sapego


A parent ticket for the tickets created to implement a test plan for the 
[https://cwiki.apache.org/confluence/display/IGNITE/IEP-90+Client+Lifecycle|IEP-90
 Client Lifecycle].

h1. Test Plan
h2. Unit Testing
- Make sure that address parsing from string is covered, if supported;
- A logic related to choosing an address for the initial connection should be 
isolated and covered by the unit tests;
- A logic related to choosing the next connectable address (if possible). Make 
sure round-robin is used from the random position chosen on the previous step;
- Make sure that the correct port is used by default, if not specified.

h2. Integration Testing
A logic related to address resolving should be covered if possible:
- A single address is provided, that resolves to a single connection point. 
Make sure the address itself is chosen for the initial connection;
- A single address is provided, that resolves to multiple connection points. 
Make sure a random address is chosen for the initial connection;
- Multiple addresses are provided, which resolve to multiple connection points. 
Make sure a random address is chosen for the initial connection.

h2. Functional and End-to-End Testing
- One client, no servers. Make sure client fails to start if no addresses were 
provided by the user;
- One client, no servers. Make sure client fails to start if no addresses that 
were provided by the user resolve to the running server;
- One client, one server. Make sure client is able to establish connection to 
the server if its address specified correctly;
- One client, one server. Make sure client is able to establish connection to 
the server if its address specified correctly, but there are also some 
addresses not leading to a running servers;
- One client, two servers, two different clusters. Make sure client is able to 
establish connection to the first server, but disconnects from the second 
server after handshake, and does not attempt to connect to it again;
- One mock client, one server. Make sure server rejects connection, if the 
client does not provide a correct magic bytes at the begging of the handshake;
- One mock client, one server. Make sure server rejects connection, if the 
client uses unknown protocol version;
- One client, one mock server. Make sure client aborts the connection and 
provides user with a proper error message, if the server uses unknown protocol 
version;
- One client, three servers. Make sure client connects to all three of servers, 
when their addresses are provided by a user;

h2. Security Testing
- It probably makes sense to check our protocol with some kind of vulnerability 
scanner.

h2. Failover Testing
- One client, two servers. Kill one server, then bring it back up. Make sure 
client restores the connection to the server;
- One client, two servers. Kill both servers, one-by-one. Make sure client 
reports error to the user when any operation is attempted;

h2. Load/Stress/Volume Testing
- Test how many connections can a single server handle at the same time.





--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-21748) Rename DataStreamerOptions.perNodeParallelOperations to perPartitionParallelOperations

2024-03-15 Thread Igor Sapego (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-21748?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17827524#comment-17827524
 ] 

Igor Sapego commented on IGNITE-21748:
--

Looks good to me.

> Rename DataStreamerOptions.perNodeParallelOperations to 
> perPartitionParallelOperations
> --
>
> Key: IGNITE-21748
> URL: https://issues.apache.org/jira/browse/IGNITE-21748
> Project: Ignite
>  Issue Type: Bug
>  Components: streaming
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Data streamer batches (pages) are per-partition, not per-node. Current name 
> is misleading.
> Update embedded, client, .NET APIs.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


  1   2   3   4   5   6   7   8   9   10   >