[jira] [Updated] (IGNITE-1915) .Net: Ignite as Entity Framework Second-Level Cache

2016-05-26 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1915:
---
Description: 
Entity Framework is #1 ORM for .NET
We should provide easy solution to boost Entity Framework performance with 
Ignite.

See https://efcache.codeplex.com/

  was:
Entity Framework is #1 ORM for .NET
We should provide easy solution to boost Entity Framework performance with 
Ignite.


> .Net: Ignite as Entity Framework Second-Level Cache
> ---
>
> Key: IGNITE-1915
> URL: https://issues.apache.org/jira/browse/IGNITE-1915
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>
> Entity Framework is #1 ORM for .NET
> We should provide easy solution to boost Entity Framework performance with 
> Ignite.
> See https://efcache.codeplex.com/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-1433) .Net: Add IgniteException.JavaStackTrace

2016-05-26 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn reassigned IGNITE-1433:
--

Assignee: (was: Vladimir Ozerov)

> .Net: Add IgniteException.JavaStackTrace
> 
>
> Key: IGNITE-1433
> URL: https://issues.apache.org/jira/browse/IGNITE-1433
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Vladimir Ozerov
> Fix For: 1.7
>
>
> Propagate java stack trace as a string in ExceptionUtils.GetException and 
> write it to a new field in IgniteException class.
> This will simplify debugging for us both locally and when getting error 
> reports from clients.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3206) .NET: Entity Framework Cache Store

2016-05-26 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3206:
--

 Summary: .NET: Entity Framework Cache Store
 Key: IGNITE-3206
 URL: https://issues.apache.org/jira/browse/IGNITE-3206
 Project: Ignite
  Issue Type: New Feature
  Components: platforms
Affects Versions: 1.1.4
Reporter: Pavel Tupitsyn
 Fix For: 1.7


Think of a way to automatically implement ICacheStore for EF entities (given 
DbContext and entity type, for example).

See how Automatic Persistence works in Java: 
http://apacheignite.gridgain.org/docs/automatic-persistence



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3206) .NET: Automatic persistence

2016-05-26 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3206:
---
Summary: .NET: Automatic persistence  (was: .NET: Entity Framework Cache 
Store)

> .NET: Automatic persistence
> ---
>
> Key: IGNITE-3206
> URL: https://issues.apache.org/jira/browse/IGNITE-3206
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Think of a way to automatically implement ICacheStore for EF entities (given 
> DbContext and entity type, for example).
> See how Automatic Persistence works in Java: 
> http://apacheignite.gridgain.org/docs/automatic-persistence



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3206) .NET: Automatic persistence

2016-05-26 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3206:
---
Description: 
See how Automatic Persistence works in Java: 
http://apacheignite.gridgain.org/docs/automatic-persistence

Think of a way to do the same in .NET with raw SqlClient and/or with 
EntityFramework/NHibernate.

  was:
Think of a way to automatically implement ICacheStore for EF entities (given 
DbContext and entity type, for example).

See how Automatic Persistence works in Java: 
http://apacheignite.gridgain.org/docs/automatic-persistence


> .NET: Automatic persistence
> ---
>
> Key: IGNITE-3206
> URL: https://issues.apache.org/jira/browse/IGNITE-3206
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
> Fix For: 1.7
>
>
> See how Automatic Persistence works in Java: 
> http://apacheignite.gridgain.org/docs/automatic-persistence
> Think of a way to do the same in .NET with raw SqlClient and/or with 
> EntityFramework/NHibernate.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3301) .NET: Logging extension methods

2016-06-10 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3301.
--

> .NET: Logging extension methods
> ---
>
> Key: IGNITE-3301
> URL: https://issues.apache.org/jira/browse/IGNITE-3301
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> * Trace, Debug, Info, Warn, Error overloads
> * GetLogger(category)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3301) .NET: Logging extension methods

2016-06-10 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3301:
--

 Summary: .NET: Logging extension methods
 Key: IGNITE-3301
 URL: https://issues.apache.org/jira/browse/IGNITE-3301
 Project: Ignite
  Issue Type: Sub-task
  Components: platforms
Affects Versions: 1.7
Reporter: Pavel Tupitsyn
Assignee: Pavel Tupitsyn
 Fix For: 1.7


* Trace, Debug, Info, Warn, Error overloads
* GetLogger(category)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (IGNITE-3301) .NET: Logging extension methods

2016-06-10 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn resolved IGNITE-3301.

Resolution: Done

> .NET: Logging extension methods
> ---
>
> Key: IGNITE-3301
> URL: https://issues.apache.org/jira/browse/IGNITE-3301
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> * Trace, Debug, Info, Warn, Error overloads
> * GetLogger(category)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3302) .NET: Inject resources into user ILogger

2016-06-10 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3302:
--

 Summary: .NET: Inject resources into user ILogger
 Key: IGNITE-3302
 URL: https://issues.apache.org/jira/browse/IGNITE-3302
 Project: Ignite
  Issue Type: Sub-task
  Components: platforms
Affects Versions: 1.7
Reporter: Pavel Tupitsyn
Assignee: Pavel Tupitsyn
 Fix For: 1.7






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (IGNITE-3283) .NET Windows Event Log logger

2016-06-10 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn resolved IGNITE-3283.

Resolution: Won't Fix

NLog and Log4net can write to EventLog. No need to reinvent this.

> .NET Windows Event Log logger
> -
>
> Key: IGNITE-3283
> URL: https://issues.apache.org/jira/browse/IGNITE-3283
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Provide an optional Event Log logger



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3283) .NET Windows Event Log logger

2016-06-10 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3283.
--

> .NET Windows Event Log logger
> -
>
> Key: IGNITE-3283
> URL: https://issues.apache.org/jira/browse/IGNITE-3283
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Provide an optional Event Log logger



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3284) .NET Composite Logger

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3284.
--

> .NET Composite Logger
> -
>
> Key: IGNITE-3284
> URL: https://issues.apache.org/jira/browse/IGNITE-3284
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Provide a way to combine multiple loggers



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (IGNITE-3284) .NET Composite Logger

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn resolved IGNITE-3284.

Resolution: Won't Fix

This is barely needed, and very simple to implement by the user. Won't fix.

> .NET Composite Logger
> -
>
> Key: IGNITE-3284
> URL: https://issues.apache.org/jira/browse/IGNITE-3284
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Provide a way to combine multiple loggers



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3286) .NET: Remove static Logger class

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3286.
--

> .NET: Remove static Logger class
> 
>
> Key: IGNITE-3286
> URL: https://issues.apache.org/jira/browse/IGNITE-3286
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> QueryEntity validation should be refactored to use new ILogger



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (IGNITE-3286) .NET: Remove static Logger class

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn resolved IGNITE-3286.

Resolution: Done

> .NET: Remove static Logger class
> 
>
> Key: IGNITE-3286
> URL: https://issues.apache.org/jira/browse/IGNITE-3286
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> QueryEntity validation should be refactored to use new ILogger



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (IGNITE-3302) .NET: Inject resources into user ILogger

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn resolved IGNITE-3302.

Resolution: Done

> .NET: Inject resources into user ILogger
> 
>
> Key: IGNITE-3302
> URL: https://issues.apache.org/jira/browse/IGNITE-3302
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3302) .NET: Inject resources into user ILogger

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3302.
--

> .NET: Inject resources into user ILogger
> 
>
> Key: IGNITE-3302
> URL: https://issues.apache.org/jira/browse/IGNITE-3302
> Project: Ignite
>  Issue Type: Sub-task
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-1629) .Net: Introduce native logging facility.

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn commented on IGNITE-1629:


Resulting implementation:
* Java: PlatformLogger is set automatically if there is no logger configured
* PlatformLogger delegates everything through JNI. isQuiet always returns false 
so that there is no console output in Java
* .NET: Added an ILogger interface and a ConsoleLogger implementation that is 
used by default.
* All custom logging (file, windows log, database, etc) is expected to be done 
via 3rd party integrations

> .Net: Introduce native logging facility.
> 
>
> Key: IGNITE-1629
> URL: https://issues.apache.org/jira/browse/IGNITE-1629
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: ignite-1.4
>Reporter: Vladimir Ozerov
>Assignee: Pavel Tupitsyn
>Priority: Blocker
>
> This is pretty serious usability issue. Currently Ignite produces logs using 
> Java "log4j" library. While naural for Java environment, this is somewhat 
> alien for Windows users. 
> We need to investigate ability to hack into normal .Net logging frameworks. 
> This include both native Windows APIs (e.g. events), and widely-used .Net 
> loggers.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-3311) .NET: Include configuration schema in NuGet package

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn reassigned IGNITE-3311:
--

Assignee: Pavel Tupitsyn

> .NET: Include configuration schema in NuGet package
> ---
>
> Key: IGNITE-3311
> URL: https://issues.apache.org/jira/browse/IGNITE-3311
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> See how NLog does it with NLog.Schema package. Make sure IntelliSense picks 
> it up for the user.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3311) .NET: Include configuration schema in NuGet package

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3311:
---
Description: See how NLog does it with NLog.Schema package. Make sure 
IntelliSense picks it up for the user.  (was: See how NLog does it with 
NLog.Schema package.)

> .NET: Include configuration schema in NuGet package
> ---
>
> Key: IGNITE-3311
> URL: https://issues.apache.org/jira/browse/IGNITE-3311
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
> Fix For: 1.7
>
>
> See how NLog does it with NLog.Schema package. Make sure IntelliSense picks 
> it up for the user.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3311) .NET: Include configuration schema in NuGet package

2016-06-14 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3311:
--

 Summary: .NET: Include configuration schema in NuGet package
 Key: IGNITE-3311
 URL: https://issues.apache.org/jira/browse/IGNITE-3311
 Project: Ignite
  Issue Type: Improvement
  Components: platforms
Affects Versions: 1.6
Reporter: Pavel Tupitsyn
 Fix For: 1.7


See how NLog does it with NLog.Schema package.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3311) .NET: Include configuration schema in NuGet package

2016-06-14 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3311:
---
Description: 
See how NLog does it with NLog.Schema package. Make sure IntelliSense picks it 
up for the user.

To avoid forcing extra content files on the user, separate NuGet package should 
be created.

  was:See how NLog does it with NLog.Schema package. Make sure IntelliSense 
picks it up for the user.


> .NET: Include configuration schema in NuGet package
> ---
>
> Key: IGNITE-3311
> URL: https://issues.apache.org/jira/browse/IGNITE-3311
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> See how NLog does it with NLog.Schema package. Make sure IntelliSense picks 
> it up for the user.
> To avoid forcing extra content files on the user, separate NuGet package 
> should be created.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3320) .NET: Configure AffinityFunction without Spring

2016-06-15 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3320:
--

 Summary: .NET: Configure AffinityFunction without Spring
 Key: IGNITE-3320
 URL: https://issues.apache.org/jira/browse/IGNITE-3320
 Project: Ignite
  Issue Type: New Feature
  Components: platforms
Affects Versions: 1.6
Reporter: Pavel Tupitsyn
Assignee: Pavel Tupitsyn
 Fix For: 1.7






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3320) .NET: Configure AffinityFunction without Spring

2016-06-15 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3320:
---
Description: Allow choosing predefined RendezvousAffinityFunction and 
FairAffinityFunction

> .NET: Configure AffinityFunction without Spring
> ---
>
> Key: IGNITE-3320
> URL: https://issues.apache.org/jira/browse/IGNITE-3320
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Allow choosing predefined RendezvousAffinityFunction and FairAffinityFunction



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-3317) .NET: Improve error message when jvm.dll could not be loaded

2016-06-15 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn reassigned IGNITE-3317:
--

Assignee: Vladimir Ozerov  (was: Pavel Tupitsyn)

> .NET: Improve error message when jvm.dll could not be loaded
> 
>
> Key: IGNITE-3317
> URL: https://issues.apache.org/jira/browse/IGNITE-3317
> Project: Ignite
>  Issue Type: Improvement
>  Components: community, platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Vladimir Ozerov
> Fix For: 1.7
>
>
> User got an unhelpful error message:
> {code}
> Failed to load jvm.dll:
> [option=JAVA_HOME, path=C:\Program 
> Files\Java\jdk1.8.0_92\jre\bin\server\jvm.dll, errorCode=193]
> [option=JAVA_HOME, path=C:\Program 
> Files\Java\jdk1.8.0_92\jre\bin\default\jvm.dll, errorCode=126]
> {code}
> Which turned out to be x64/x86 issue. 
> Provide more details in such case: what happened and how to fix this.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3275) .NET: Enable REST HTTP in .NET nodes

2016-06-08 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3275:
--

 Summary: .NET: Enable REST HTTP in .NET nodes
 Key: IGNITE-3275
 URL: https://issues.apache.org/jira/browse/IGNITE-3275
 Project: Ignite
  Issue Type: Improvement
  Components: platforms
Affects Versions: 1.6
Reporter: Pavel Tupitsyn
 Fix For: 1.7


* Include REST HTTP jars in NuGet (either in core, or in a separate package). 
Keep in mind NuGet size limitation
* Add required options to IgniteConfiguration to enable/disable REST



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-1915) .Net: Ignite as Entity Framework Second-Level Cache

2016-05-30 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn commented on IGNITE-1915:


We need an efficient way to invalidate cached results, which means removing 
Ignite cache keys that match a condition.

Options are:
* ScanQuery. However, it will return entire CacheEntry to the calling node, and 
we only need the key. Value can be quite large (query result can contain 
hundreds of rows).
* SQL. Downsides are that we have to enable indexing (less flexibility for the 
user), and SQL can't act on string[], we'll have to concatenate entity sets name
* Compute: there are problems with guarantees
* EntryProcessor: no way to iterate over ALL keys in cache

Our best bet is to wait for IGNITE-2546 here.

> .Net: Ignite as Entity Framework Second-Level Cache
> ---
>
> Key: IGNITE-1915
> URL: https://issues.apache.org/jira/browse/IGNITE-1915
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>
> Entity Framework is #1 ORM for .NET
> We should provide easy solution to boost Entity Framework performance with 
> Ignite.
> EF5 and EF6 have different 2nd level cache mechanisms (EF5 has a built-in 
> one, EF6 requies more customization or a 3rd party lib like 
> https://efcache.codeplex.com/). For now, let's do EF6 only.
> This should be in a separate assembly and a separate NuGet package.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3207) Rename IgniteConfiguration.gridName

2016-05-27 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3207:
--

 Summary: Rename IgniteConfiguration.gridName
 Key: IGNITE-3207
 URL: https://issues.apache.org/jira/browse/IGNITE-3207
 Project: Ignite
  Issue Type: Improvement
  Components: general
Affects Versions: 1.1.4
Reporter: Pavel Tupitsyn
 Fix For: 1.7


We have got a TON of questions on gridName property. Everyone thinks that 
clusters are formed based on the gridName, that is, nodes with the same grid 
name will join one cluster, and nodes with a different name will be in a 
separate cluster.

Let's do the following:
* Deprecate IgniteConfiguration.gridName
* Add IgniteConfiguration.localInstanceName
* Rename related parameters in Ignition class (and other places, if present)
* Update Javadoc: clearly state that this name only works locally and has no 
effect on topology.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1915) .Net: Ignite as Entity Framework Second-Level Cache

2016-05-27 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1915:
---
Description: 
Entity Framework is #1 ORM for .NET
We should provide easy solution to boost Entity Framework performance with 
Ignite.

EF5 and EF6 have different 2nd level cache mechanisms (EF5 has a built-in one, 
EF6 requies more customization or a 3rd party lib like 
https://efcache.codeplex.com/). For now, let's do EF6 only.

This should be in a separate assembly and a separate NuGet package.

  was:
Entity Framework is #1 ORM for .NET
We should provide easy solution to boost Entity Framework performance with 
Ignite.

* EF5 and EF6 have different 2nd level cache mechanisms (EF5 has a built-in 
one, EF6 requies more customization or a 3rd party lib like 
https://efcache.codeplex.com/)


> .Net: Ignite as Entity Framework Second-Level Cache
> ---
>
> Key: IGNITE-1915
> URL: https://issues.apache.org/jira/browse/IGNITE-1915
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>
> Entity Framework is #1 ORM for .NET
> We should provide easy solution to boost Entity Framework performance with 
> Ignite.
> EF5 and EF6 have different 2nd level cache mechanisms (EF5 has a built-in 
> one, EF6 requies more customization or a 3rd party lib like 
> https://efcache.codeplex.com/). For now, let's do EF6 only.
> This should be in a separate assembly and a separate NuGet package.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3222) IgniteCache.invokeAll for all cache entries

2016-06-02 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn commented on IGNITE-3222:


Dmitry, affinityCall/Run over a partition is useful, I agree.

But dealing with partitions manually is also error-prone and not obvious at all.
Invoke over all cache entries is a simple common task, why not provide a simple 
method of doing it?

What kind of memory issues do you expect? 
Returning EntryProcessorResult for each entry on a huge cache is an obvious 
problem, same as calling getAll on QueryCursor, for example. We can't protect 
users from such things.

> IgniteCache.invokeAll for all cache entries
> ---
>
> Key: IGNITE-3222
> URL: https://issues.apache.org/jira/browse/IGNITE-3222
> Project: Ignite
>  Issue Type: Task
>  Components: cache
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Implement an invokeAll overload that processes all cache keys (not some 
> specific set).
> Proposed signature:
> {code}
> public void invokeAll(CacheEntryProcessor entryProcessor, Object... 
> args);
> public  Map invokeAll(CacheEntryProcessor V, T> entryProcessor, boolean returnAffectedOnly, Object... args);
> {code}
> This will apply the specified processor to all cache entries.
> First method does not return anything.
> Second method either returns all results for all entries, or only for entries 
> that have been changed by the processor in any way.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Comment Edited] (IGNITE-3222) IgniteCache.invokeAll for all cache entries

2016-06-02 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn edited comment on IGNITE-3222 at 6/2/16 9:09 AM:


Dmitriy, affinityCall/Run over a partition is useful, I agree.

But dealing with partitions manually is also error-prone and not obvious at all.
Invoke over all cache entries is a simple common task, why not provide a simple 
method of doing it?

What kind of memory issues do you expect? 
Returning EntryProcessorResult for each entry on a huge cache is an obvious 
problem, same as calling getAll on QueryCursor, for example. We can't protect 
users from such things.


was (Author: ptupitsyn):
Dmitry, affinityCall/Run over a partition is useful, I agree.

But dealing with partitions manually is also error-prone and not obvious at all.
Invoke over all cache entries is a simple common task, why not provide a simple 
method of doing it?

What kind of memory issues do you expect? 
Returning EntryProcessorResult for each entry on a huge cache is an obvious 
problem, same as calling getAll on QueryCursor, for example. We can't protect 
users from such things.

> IgniteCache.invokeAll for all cache entries
> ---
>
> Key: IGNITE-3222
> URL: https://issues.apache.org/jira/browse/IGNITE-3222
> Project: Ignite
>  Issue Type: Task
>  Components: cache
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Implement an invokeAll overload that processes all cache keys (not some 
> specific set).
> Proposed signature:
> {code}
> public void invokeAll(CacheEntryProcessor entryProcessor, Object... 
> args);
> public  Map invokeAll(CacheEntryProcessor V, T> entryProcessor, boolean returnAffectedOnly, Object... args);
> {code}
> This will apply the specified processor to all cache entries.
> First method does not return anything.
> Second method either returns all results for all entries, or only for entries 
> that have been changed by the processor in any way.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3240) Arrays do not deserialize properly

2016-06-02 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3240:
--

 Summary: Arrays do not deserialize properly
 Key: IGNITE-3240
 URL: https://issues.apache.org/jira/browse/IGNITE-3240
 Project: Ignite
  Issue Type: Bug
  Components: binary, cache
Affects Versions: 1.1.4
Reporter: Pavel Tupitsyn
Priority: Blocker
 Fix For: 1.7


Code to reproduce:

{code}
IgniteCache cache = ignite.getOrCreateCache(CACHE_NAME);
cache.put(1, new String[]{"omg", "wtf"});
String[] res = cache.get(1);
{code}

The bug is in CacheObjectContext.unwrapBinariesInArrayIfNeeded method, which 
always produces a new array.

We should check for basic types somehow and skip this conversion.

Generally, we NEVER want to change the type of the array, so the fix may be:
{code}
if (arr.getClass().getComponentType() != Object.class)
return arr;
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-3240) Arrays do not deserialize properly

2016-06-02 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn reassigned IGNITE-3240:
--

Assignee: Denis Magda

> Arrays do not deserialize properly
> --
>
> Key: IGNITE-3240
> URL: https://issues.apache.org/jira/browse/IGNITE-3240
> Project: Ignite
>  Issue Type: Bug
>  Components: binary, cache
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Denis Magda
>Priority: Blocker
> Fix For: 1.7
>
>
> Code to reproduce:
> {code}
> IgniteCache cache = ignite.getOrCreateCache(CACHE_NAME);
> cache.put(1, new String[]{"omg", "wtf"});
> String[] res = cache.get(1);
> {code}
> The bug is in CacheObjectContext.unwrapBinariesInArrayIfNeeded method, which 
> always produces a new array.
> We should check for basic types somehow and skip this conversion.
> Generally, we NEVER want to change the type of the array, so the fix may be:
> {code}
> if (arr.getClass().getComponentType() != Object.class)
> return arr;
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3240) Arrays do not deserialize properly

2016-06-02 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3240:
---
Description: 
Code to reproduce:

{code}
IgniteCache cache = ignite.getOrCreateCache(CACHE_NAME);
cache.put(1, new String[]{"hello", "world"});
String[] res = cache.get(1);
{code}

The bug is in CacheObjectContext.unwrapBinariesInArrayIfNeeded method, which 
always produces a new array.

We should check for basic types somehow and skip this conversion.

Generally, we NEVER want to change the type of the array, so the fix may be:
{code}
if (arr.getClass().getComponentType() != Object.class)
return arr;
{code}

  was:
Code to reproduce:

{code}
IgniteCache cache = ignite.getOrCreateCache(CACHE_NAME);
cache.put(1, new String[]{"omg", "wtf"});
String[] res = cache.get(1);
{code}

The bug is in CacheObjectContext.unwrapBinariesInArrayIfNeeded method, which 
always produces a new array.

We should check for basic types somehow and skip this conversion.

Generally, we NEVER want to change the type of the array, so the fix may be:
{code}
if (arr.getClass().getComponentType() != Object.class)
return arr;
{code}


> Arrays do not deserialize properly
> --
>
> Key: IGNITE-3240
> URL: https://issues.apache.org/jira/browse/IGNITE-3240
> Project: Ignite
>  Issue Type: Bug
>  Components: binary, cache
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Denis Magda
>Priority: Blocker
> Fix For: 1.7
>
>
> Code to reproduce:
> {code}
> IgniteCache cache = ignite.getOrCreateCache(CACHE_NAME);
> cache.put(1, new String[]{"hello", "world"});
> String[] res = cache.get(1);
> {code}
> The bug is in CacheObjectContext.unwrapBinariesInArrayIfNeeded method, which 
> always produces a new array.
> We should check for basic types somehow and skip this conversion.
> Generally, we NEVER want to change the type of the array, so the fix may be:
> {code}
> if (arr.getClass().getComponentType() != Object.class)
> return arr;
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Comment Edited] (IGNITE-3222) IgniteCache.invokeAll for all cache entries

2016-06-02 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn edited comment on IGNITE-3222 at 6/2/16 4:21 PM:


> _I don't think it is a common task at all_
This task is essentially "UPDATE myTable WHERE ..." in SQL world, and it is 
very useful:
* Move employees from one department to another
* Raise salary for all employees
* Remove all cached entries that depend on SQL table when the table has been 
updated (my use case for Entity Framework caching)
I think there were a couple of user list questions about that.

> _It is not the same as getAll(..) on QueryCursor, because the cursor offers a 
> paginated result_
I don't think so: QueryCursor returns ALL query results in a list. If the query 
contains a lot of data, it will cause OOM.


was (Author: ptupitsyn):
> *I don't think it is a common task at all*
This task is essentially "UPDATE myTable WHERE ..." in SQL world, and it is 
*very* useful:
* Move employees from one department to another
* Raise salary for all employees
* Remove all cached entries that depend on SQL table when the table has been 
updated (my use case for Entity Framework caching)
I think there were a couple of user list questions about that.

> *It is not the same as getAll(..) on QueryCursor, because the cursor offers a 
> paginated result*
I don't think so: QueryCursor returns ALL query results in a list. If the query 
contains a lot of data, it will cause OOM.

> IgniteCache.invokeAll for all cache entries
> ---
>
> Key: IGNITE-3222
> URL: https://issues.apache.org/jira/browse/IGNITE-3222
> Project: Ignite
>  Issue Type: Task
>  Components: cache
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Implement an invokeAll overload that processes all cache keys (not some 
> specific set).
> Proposed signature:
> {code}
> public void invokeAll(CacheEntryProcessor entryProcessor, Object... 
> args);
> public  Map invokeAll(CacheEntryProcessor V, T> entryProcessor, boolean returnAffectedOnly, Object... args);
> {code}
> This will apply the specified processor to all cache entries.
> First method does not return anything.
> Second method either returns all results for all entries, or only for entries 
> that have been changed by the processor in any way.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-1915) .Net: Ignite as Entity Framework Second-Level Cache

2016-06-02 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn commented on IGNITE-1915:


Instead of iterating over whole cache during invalidation, I've used a 
different approach:
* Store cache dependencies separately (Tablename -> SQL[] mapping)
* To invalidate all queries for a table, we simply call Get and RemoveAll
* Since multiple keys are involved, transactional cache is used

With a finite set of cached queries, we will reach a point when all 
dependencies are populated, so we never have to update dependency cache on 
subsequent queries.

> .Net: Ignite as Entity Framework Second-Level Cache
> ---
>
> Key: IGNITE-1915
> URL: https://issues.apache.org/jira/browse/IGNITE-1915
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>
> Entity Framework is #1 ORM for .NET
> We should provide easy solution to boost Entity Framework performance with 
> Ignite.
> EF5 and EF6 have different 2nd level cache mechanisms (EF5 has a built-in 
> one, EF6 requies more customization or a 3rd party lib like 
> https://efcache.codeplex.com/). For now, let's do EF6 only.
> This should be in a separate assembly and a separate NuGet package.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3199) .NET: ASP.NET Session-State Store Provider

2016-05-26 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3199:
---
Issue Type: New Feature  (was: Bug)

> .NET: ASP.NET Session-State Store Provider
> --
>
> Key: IGNITE-3199
> URL: https://issues.apache.org/jira/browse/IGNITE-3199
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Priority: Critical
> Fix For: 1.7
>
>
> See https://msdn.microsoft.com/en-us/library/ms178587.aspx
> Code should be put to Apache.Ignite.AspNet assembly (see IGNITE-2379)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3199) .NET: ASP.NET Session-State Store Provider

2016-05-26 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3199:
---
Description: 
See https://msdn.microsoft.com/en-us/library/ms178587.aspx

Code should be put to Apache.Ignite.AspNet assembly (see IGNITE-2379)

  was:See https://msdn.microsoft.com/en-us/library/ms178587.aspx


> .NET: ASP.NET Session-State Store Provider
> --
>
> Key: IGNITE-3199
> URL: https://issues.apache.org/jira/browse/IGNITE-3199
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Priority: Critical
> Fix For: 1.7
>
>
> See https://msdn.microsoft.com/en-us/library/ms178587.aspx
> Code should be put to Apache.Ignite.AspNet assembly (see IGNITE-2379)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-1894) .Net: Delegate support in the API via extension methods

2016-05-26 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn commented on IGNITE-1894:


We should merge IGNITE-2703 first, and see how it works with anonymous 
delegates.

> .Net: Delegate support in the API via extension methods
> ---
>
> Key: IGNITE-1894
> URL: https://issues.apache.org/jira/browse/IGNITE-1894
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Vladimir Ozerov
> Fix For: 1.7
>
>
> In many places we require a single-method interface implementation from the 
> user:
> {code:title=ICompute}
> TRes Call(IComputeFunc clo);
> {code}
> All of these can be extended to accept a delegate:
> {code:title=ICompute}
> TRes Call(Func clo);
> {code}
> We can't replace interfaces with delegates completely (which is desirable), 
> because it will take away serialization control from the user. So the 
> interface approach has to stay as a primary.
> Delegate support can be added via extension methods, which wrap provided 
> delegates into a class that implements corresponding interface.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3222) IgniteCache.invokeAll for all cache entries

2016-05-31 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3222:
--

 Summary: IgniteCache.invokeAll for all cache entries
 Key: IGNITE-3222
 URL: https://issues.apache.org/jira/browse/IGNITE-3222
 Project: Ignite
  Issue Type: Task
  Components: cache
Affects Versions: 1.1.4
Reporter: Pavel Tupitsyn
 Fix For: 1.7


Implement an invokeAll overload that processes all cache keys (not some 
specific set).

Proposed signature:
{code}
public void invokeAll(CacheEntryProcessor entryProcessor, Object... 
args);

public  Map invokeAll(CacheEntryProcessor entryProcessor, boolean returnAffectedOnly, Object... args);
{code}

This will apply the specified processor to all cache entries.
First method does not return anything.

Second method either returns all results for all entries, or only for entries 
that have been changed by the processor in any way.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3222) IgniteCache.invokeAll for all cache entries

2016-05-31 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3222:
---
Description: 
Implement an invokeAll overload that processes all cache keys (not some 
specific set).

Proposed signature:
{code}
public void invokeAll(CacheEntryProcessor entryProcessor, Object... 
args);

public  Map invokeAll(CacheEntryProcessor entryProcessor, boolean returnAffectedOnly, Object... args);
{code}

This will apply the specified processor to all cache entries.

First method does not return anything.
Second method either returns all results for all entries, or only for entries 
that have been changed by the processor in any way.

  was:
Implement an invokeAll overload that processes all cache keys (not some 
specific set).

Proposed signature:
{code}
public void invokeAll(CacheEntryProcessor entryProcessor, Object... 
args);

public  Map invokeAll(CacheEntryProcessor entryProcessor, boolean returnAffectedOnly, Object... args);
{code}

This will apply the specified processor to all cache entries.
First method does not return anything.

Second method either returns all results for all entries, or only for entries 
that have been changed by the processor in any way.


> IgniteCache.invokeAll for all cache entries
> ---
>
> Key: IGNITE-3222
> URL: https://issues.apache.org/jira/browse/IGNITE-3222
> Project: Ignite
>  Issue Type: Task
>  Components: cache
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Implement an invokeAll overload that processes all cache keys (not some 
> specific set).
> Proposed signature:
> {code}
> public void invokeAll(CacheEntryProcessor entryProcessor, Object... 
> args);
> public  Map invokeAll(CacheEntryProcessor V, T> entryProcessor, boolean returnAffectedOnly, Object... args);
> {code}
> This will apply the specified processor to all cache entries.
> First method does not return anything.
> Second method either returns all results for all entries, or only for entries 
> that have been changed by the processor in any way.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3347) CacheEvictableEntryImpl does not take CopyOnRead mode into account

2016-06-21 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3347:
--

 Summary: CacheEvictableEntryImpl does not take CopyOnRead mode 
into account
 Key: IGNITE-3347
 URL: https://issues.apache.org/jira/browse/IGNITE-3347
 Project: Ignite
  Issue Type: Bug
  Components: cache
Affects Versions: 1.6
Reporter: Pavel Tupitsyn
 Fix For: 1.7


CacheConfiguration.setCopyOnRead(false) causes CacheObjectImpl to hold both val 
and valBytes, increasing memory usage.

CacheEvictableEntryImpl.size method does not take this into account.
As a result, memory-based eviction policies work incorrectly when 
copyOnRead=false.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (IGNITE-3076) .NET: Add lifecycle events to IIgnite

2016-06-22 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn resolved IGNITE-3076.

Resolution: Done

> .NET: Add lifecycle events to IIgnite
> -
>
> Key: IGNITE-3076
> URL: https://issues.apache.org/jira/browse/IGNITE-3076
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> We have lifecycle beans, but they can only be specified before startup; also, 
> implementing an interface is not convenient.
> As an alternative, we should provide Stopping and Stopped events in IIgnite 
> interface.
> Think of other events that can be added.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3076) .NET: Add lifecycle events to IIgnite

2016-06-22 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3076.
--

> .NET: Add lifecycle events to IIgnite
> -
>
> Key: IGNITE-3076
> URL: https://issues.apache.org/jira/browse/IGNITE-3076
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> We have lifecycle beans, but they can only be specified before startup; also, 
> implementing an interface is not convenient.
> As an alternative, we should provide Stopping and Stopped events in IIgnite 
> interface.
> Think of other events that can be added.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3340) .NET: Cache store is not destroyed on DestroyCache

2016-06-22 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3340:
---
Description: 
cacheStoreDestroy platform callback should be called whenever owner cache is 
destroyed.
See stopLifecycleAware call in GridcacheProcessor.

  was:cacheStoreDestroy platform callback should be called whenever owner cache 
is destroyed.


> .NET: Cache store is not destroyed on DestroyCache
> --
>
> Key: IGNITE-3340
> URL: https://issues.apache.org/jira/browse/IGNITE-3340
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Priority: Critical
>  Labels: .net
> Fix For: 1.7
>
>
> cacheStoreDestroy platform callback should be called whenever owner cache is 
> destroyed.
> See stopLifecycleAware call in GridcacheProcessor.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3324) .NET: LINQPad Data Context Driver

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3324:
---
Description: 
LINQPad can be extended with a custom Data Context Driver: 
http://www.linqpad.net/Extensibility.aspx

With SQL databases, this displays a tree view (top left) of databases, tables, 
columns, and allows easy strongly-typed queries, as well as raw SQL queries in 
some cases.

In our case, I imagine the following:
* User connects to the grid with our Ignite LINQPad Driver
* List of queryable entities is displayed (one per QueryEntity) - for SQL and 
LINQ queries
* Separate list of all caches is displayed (regardless of query configuration) 
- for LINQ-to-objects and other raw cache operations (in binary mode only)

This is a low priority integration, but nice and fun one. Something like Visor 
for .NET world with LINQ.

  was:
LINQPad can be extended with a custom Data Context Driver: 
http://www.linqpad.net/Extensibility.aspx

With SQL databases, this displays a tree view (top left) of databases, tables, 
columns, and allows easy strongly-typed queries, as well as raw SQL queries in 
some cases.

In our case, I imagine the following:
* User connects to the grid with our Ignite LINQPad Driver
* List of queryable entities is displayed (one per QueryEntity) - for SQL and 
LINQ queries
* Separate list of all caches is displayed (regardless of query configuration) 
- for LINQ-to-objects and other raw cache operations (in binary mode only)

This is a low priority integration, but nice and fun one. Something like Visor 
for .NET world, but even better!


> .NET: LINQPad Data Context Driver
> -
>
> Key: IGNITE-3324
> URL: https://issues.apache.org/jira/browse/IGNITE-3324
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Priority: Minor
>
> LINQPad can be extended with a custom Data Context Driver: 
> http://www.linqpad.net/Extensibility.aspx
> With SQL databases, this displays a tree view (top left) of databases, 
> tables, columns, and allows easy strongly-typed queries, as well as raw SQL 
> queries in some cases.
> In our case, I imagine the following:
> * User connects to the grid with our Ignite LINQPad Driver
> * List of queryable entities is displayed (one per QueryEntity) - for SQL and 
> LINQ queries
> * Separate list of all caches is displayed (regardless of query 
> configuration) - for LINQ-to-objects and other raw cache operations (in 
> binary mode only)
> This is a low priority integration, but nice and fun one. Something like 
> Visor for .NET world with LINQ.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3324) .NET: LINQPad Data Context Driver

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3324:
---
Description: 
LINQPad can be extended with a custom Data Context Driver: 
http://www.linqpad.net/Extensibility.aspx

With SQL databases, this displays a tree view (top left) of databases, tables, 
columns, and allows easy strongly-typed queries, as well as raw SQL queries in 
some cases.

In our case, I imagine the following:
* User connects to the grid with our Ignite LINQPad Driver
* List of queryable entities is displayed (one per QueryEntity) - for SQL and 
LINQ queries
* Separate list of all caches is displayed (regardless of query configuration) 
- for LINQ-to-objects and other raw cache operations (in binary mode only)

This is a low priority integration, but nice and fun one. Something like Visor 
for .NET world, but even better!

  was:
LINQPad can be extended with a custom Data Context Driver: 
http://www.linqpad.net/Extensibility.aspx

With SQL databases, this displays a tree view (top left) of databases, tables, 
columns, and allows easy strongly-typed queries, as well as raw SQL queries in 
some cases.

In our case, I imagine the following:
* User connects to the grid with our Ignite LINQPad Driver
* List of queryable entities is displayed (one per QueryEntity) - for SQL and 
LINQ queries
* Separate list of all caches is displayed (regardless of query configuration) 
- for LINQ-to-objects and other raw cache operations (in binary mode only)

This is a low priority integration, but nice and fun one.


> .NET: LINQPad Data Context Driver
> -
>
> Key: IGNITE-3324
> URL: https://issues.apache.org/jira/browse/IGNITE-3324
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Priority: Minor
>
> LINQPad can be extended with a custom Data Context Driver: 
> http://www.linqpad.net/Extensibility.aspx
> With SQL databases, this displays a tree view (top left) of databases, 
> tables, columns, and allows easy strongly-typed queries, as well as raw SQL 
> queries in some cases.
> In our case, I imagine the following:
> * User connects to the grid with our Ignite LINQPad Driver
> * List of queryable entities is displayed (one per QueryEntity) - for SQL and 
> LINQ queries
> * Separate list of all caches is displayed (regardless of query 
> configuration) - for LINQ-to-objects and other raw cache operations (in 
> binary mode only)
> This is a low priority integration, but nice and fun one. Something like 
> Visor for .NET world, but even better!



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3317) .NET: Improve error message when jvm.dll could not be loaded

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3317.
--
Assignee: Pavel Tupitsyn  (was: Vladimir Ozerov)

> .NET: Improve error message when jvm.dll could not be loaded
> 
>
> Key: IGNITE-3317
> URL: https://issues.apache.org/jira/browse/IGNITE-3317
> Project: Ignite
>  Issue Type: Improvement
>  Components: community, platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> User got an unhelpful error message:
> {code}
> Failed to load jvm.dll:
> [option=JAVA_HOME, path=C:\Program 
> Files\Java\jdk1.8.0_92\jre\bin\server\jvm.dll, errorCode=193]
> [option=JAVA_HOME, path=C:\Program 
> Files\Java\jdk1.8.0_92\jre\bin\default\jvm.dll, errorCode=126]
> {code}
> Which turned out to be x64/x86 issue. 
> Provide more details in such case: what happened and how to fix this.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1508) .Net: Create common ToString() method.

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1508:
---
Component/s: newbie

> .Net: Create common ToString() method.
> --
>
> Key: IGNITE-1508
> URL: https://issues.apache.org/jira/browse/IGNITE-1508
> Project: Ignite
>  Issue Type: Improvement
>  Components: newbie, platforms
>Affects Versions: 1.1.4
>Reporter: Vladimir Ozerov
>
> We have lots of places with the same code pattern in ToString() method: 
> culture info + String.Format(). 
> Let's move it to utilities and re-use just like it is done in Java.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-3325) .NET: LINQ Take method does not work within CompiledQuery

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn reassigned IGNITE-3325:
--

Assignee: Pavel Tupitsyn

> .NET: LINQ Take method does not work within CompiledQuery
> -
>
> Key: IGNITE-3325
> URL: https://issues.apache.org/jira/browse/IGNITE-3325
> Project: Ignite
>  Issue Type: Bug
>  Components: community, platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> User reported that the following code fails with "Error compiling query: all 
> compiled query arguments should come from enclosing delegate parameters."
> {code}
> Func>> qry = 
> CompiledQuery.Compile((int x, int y,int z) => 
> orderCache.AsCacheQueryable().Where(e => e.Value.OrderId % x == z).Take(y));
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3325) .NET: LINQ Take method does not work within CompiledQuery

2016-06-16 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3325:
--

 Summary: .NET: LINQ Take method does not work within CompiledQuery
 Key: IGNITE-3325
 URL: https://issues.apache.org/jira/browse/IGNITE-3325
 Project: Ignite
  Issue Type: Bug
  Components: community, platforms
Affects Versions: 1.6
Reporter: Pavel Tupitsyn
 Fix For: 1.7


User reported that the following code fails with "Error compiling query: all 
compiled query arguments should come from enclosing delegate parameters."
{code}
Func>> qry = 
CompiledQuery.Compile((int x, int y,int z) => 
orderCache.AsCacheQueryable().Where(e => e.Value.OrderId % x == z).Take(y));
{code}




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3170) .NET: Add user-friendly ToString overrides for public types

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3170:
---
Description: Events, cache entry events, mutable cache entries, etc, should 
have ToString overridden. See CacheEntry for example.  (was: Events, cache 
entry events, mutable cache entries, etc, should have ToString overridden,)

> .NET: Add user-friendly ToString overrides for public types
> ---
>
> Key: IGNITE-3170
> URL: https://issues.apache.org/jira/browse/IGNITE-3170
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Events, cache entry events, mutable cache entries, etc, should have ToString 
> overridden. See CacheEntry for example.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3329) .NET: TestDeployNodeSingleton fails sporadically

2016-06-16 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3329:
--

 Summary: .NET: TestDeployNodeSingleton fails sporadically
 Key: IGNITE-3329
 URL: https://issues.apache.org/jira/browse/IGNITE-3329
 Project: Ignite
  Issue Type: Test
  Components: platforms
Affects Versions: 1.7
Reporter: Pavel Tupitsyn
Assignee: Pavel Tupitsyn
 Fix For: 1.7


{code}
Test(s) failed. System.NullReferenceException : Object reference not set to an 
instance of an object.
   at Apache.Ignite.Core.Tests.Services.ServicesTest.TestDeployNodeSingleton() 
in 
e:\BuildAgent\work\c6bd605b1bad5b0f\modules\platforms\dotnet\Apache.Ignite.Core.Tests\Services\ServicesTest.cs:line
 158
{code]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3327) .NET: Pass all logging through Java side

2016-06-16 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3327:
--

 Summary: .NET: Pass all logging through Java side
 Key: IGNITE-3327
 URL: https://issues.apache.org/jira/browse/IGNITE-3327
 Project: Ignite
  Issue Type: Sub-task
  Components: platforms
Affects Versions: 1.6
Reporter: Pavel Tupitsyn
Assignee: Pavel Tupitsyn
 Fix For: 1.7


Logging from any platform should go through Java so that standard file log 
captures everything.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-3139) .NET: UTF-16 surrogate symbols are not serialized properly

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn reassigned IGNITE-3139:
--

Assignee: Pavel Tupitsyn  (was: Vladimir Ozerov)

> .NET: UTF-16 surrogate symbols are not serialized properly
> --
>
> Key: IGNITE-3139
> URL: https://issues.apache.org/jira/browse/IGNITE-3139
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Affects Versions: 1.5.0.final
>Reporter: Denis Magda
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> There is an issue with serialization of a surrogate symbol with 
> {{BinaryMarshaller}}. On Java side String's serialization logic was improved 
> to support all the cases. Refer to IGNITE-3098.
> .Net serialization logic has to be updated as well. Please refer to the 
> algorithm located in ignite-3098 branch in the following places:
> - {{BinaryUtils.utf8BytesToStr}} - serialization
> - {{BinaryUtils.strToUtf8Bytes}} - deserialization
> - 
> {{IgniteSystemProperties.IGNITE_BINARY_MARSHALLER_USE_STRING_SERIALIZATION_VER_2}}
>  controls which version of serialization logic to use (old or new).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-3105) .NET: ContinuousQueryAbstractTest.TestCallback fails sporadically

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn reassigned IGNITE-3105:
--

Assignee: Pavel Tupitsyn  (was: Vladimir Ozerov)

> .NET: ContinuousQueryAbstractTest.TestCallback fails sporadically
> -
>
> Key: IGNITE-3105
> URL: https://issues.apache.org/jira/browse/IGNITE-3105
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Failure rate is quite low, but there is certainly a problem. Try to run in a 
> loop.
> {code}
> Test(s) failed.   Expected: 
> 
>   But was:  null
>at NUnit.Framework.Assert.That(Object actual, IResolveConstraint 
> expression, String message, Object[] args)
>at 
> Apache.Ignite.Core.Tests.Cache.Query.Continuous.ContinuousQueryAbstractTest.CheckCallbackSingle(Int32
>  expKey, BinarizableEntry expOldVal, BinarizableEntry expVal, Int32 timeout) 
> in 
> c:\BuildAgent\work\c6bd605b1bad5b0f\modules\platforms\dotnet\Apache.Ignite.Core.Tests\Cache\Query\Continuous\ContinuousQueryAbstractTest.cs:line
>  945
>at 
> Apache.Ignite.Core.Tests.Cache.Query.Continuous.ContinuousQueryAbstractTest.CheckCallbackSingle(Int32
>  expKey, BinarizableEntry expOldVal, BinarizableEntry expVal) in 
> c:\BuildAgent\work\c6bd605b1bad5b0f\modules\platforms\dotnet\Apache.Ignite.Core.Tests\Cache\Query\Continuous\ContinuousQueryAbstractTest.cs:line
>  926
>at 
> Apache.Ignite.Core.Tests.Cache.Query.Continuous.ContinuousQueryAbstractTest.CheckCallback(Boolean
>  loc) in 
> c:\BuildAgent\work\c6bd605b1bad5b0f\modules\platforms\dotnet\Apache.Ignite.Core.Tests\Cache\Query\Continuous\ContinuousQueryAbstractTest.cs:line
>  240
>at 
> Apache.Ignite.Core.Tests.Cache.Query.Continuous.ContinuousQueryAbstractTest.TestCallback()
>  in 
> c:\BuildAgent\work\c6bd605b1bad5b0f\modules\platforms\dotnet\Apache.Ignite.Core.Tests\Cache\Query\Continuous\ContinuousQueryAbstractTest.cs:line
>  199
> --- Stderr: ---
> Test started: ContinuousQueryAbstractTest.TestCallback
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-2945) .NET: Investigate Entity Framework entity object serialization

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn reassigned IGNITE-2945:
--

Assignee: Pavel Tupitsyn  (was: Vladimir Ozerov)

> .NET: Investigate Entity Framework entity object serialization
> --
>
> Key: IGNITE-2945
> URL: https://issues.apache.org/jira/browse/IGNITE-2945
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Check what happens when user tries to put EF entities to cache in various 
> modes (POCO, POCO proxy, non-POCO, etc).
> We need to either improve support for such objects, or provide documentation.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-2945) .NET: Investigate Entity Framework entity object serialization

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-2945.
--

> .NET: Investigate Entity Framework entity object serialization
> --
>
> Key: IGNITE-2945
> URL: https://issues.apache.org/jira/browse/IGNITE-2945
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Check what happens when user tries to put EF entities to cache in various 
> modes (POCO, POCO proxy, non-POCO, etc).
> We need to either improve support for such objects, or provide documentation.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1629) .Net: Introduce native logging facility.

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1629:
---
Fix Version/s: 1.7

> .Net: Introduce native logging facility.
> 
>
> Key: IGNITE-1629
> URL: https://issues.apache.org/jira/browse/IGNITE-1629
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: ignite-1.4
>Reporter: Vladimir Ozerov
>Assignee: Vladimir Ozerov
>Priority: Blocker
> Fix For: 1.7
>
>
> This is pretty serious usability issue. Currently Ignite produces logs using 
> Java "log4j" library. While naural for Java environment, this is somewhat 
> alien for Windows users. 
> We need to investigate ability to hack into normal .Net logging frameworks. 
> This include both native Windows APIs (e.g. events), and widely-used .Net 
> loggers.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3182) .NET: Compute jobs execute on client nodes

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3182.
--

> .NET: Compute jobs execute on client nodes
> --
>
> Key: IGNITE-3182
> URL: https://issues.apache.org/jira/browse/IGNITE-3182
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Critical
> Fix For: 1.7
>
>
> * One server node, one client node, Broadcast from client node results in 
> both nodes executing the closure
> * Need to check the behavior with 2 servers, 2 clients, broadcast from server 
> and client



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3105) .NET: ContinuousQueryAbstractTest.TestCallback fails sporadically

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3105.
--

> .NET: ContinuousQueryAbstractTest.TestCallback fails sporadically
> -
>
> Key: IGNITE-3105
> URL: https://issues.apache.org/jira/browse/IGNITE-3105
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Failure rate is quite low, but there is certainly a problem. Try to run in a 
> loop.
> {code}
> Test(s) failed.   Expected: 
> 
>   But was:  null
>at NUnit.Framework.Assert.That(Object actual, IResolveConstraint 
> expression, String message, Object[] args)
>at 
> Apache.Ignite.Core.Tests.Cache.Query.Continuous.ContinuousQueryAbstractTest.CheckCallbackSingle(Int32
>  expKey, BinarizableEntry expOldVal, BinarizableEntry expVal, Int32 timeout) 
> in 
> c:\BuildAgent\work\c6bd605b1bad5b0f\modules\platforms\dotnet\Apache.Ignite.Core.Tests\Cache\Query\Continuous\ContinuousQueryAbstractTest.cs:line
>  945
>at 
> Apache.Ignite.Core.Tests.Cache.Query.Continuous.ContinuousQueryAbstractTest.CheckCallbackSingle(Int32
>  expKey, BinarizableEntry expOldVal, BinarizableEntry expVal) in 
> c:\BuildAgent\work\c6bd605b1bad5b0f\modules\platforms\dotnet\Apache.Ignite.Core.Tests\Cache\Query\Continuous\ContinuousQueryAbstractTest.cs:line
>  926
>at 
> Apache.Ignite.Core.Tests.Cache.Query.Continuous.ContinuousQueryAbstractTest.CheckCallback(Boolean
>  loc) in 
> c:\BuildAgent\work\c6bd605b1bad5b0f\modules\platforms\dotnet\Apache.Ignite.Core.Tests\Cache\Query\Continuous\ContinuousQueryAbstractTest.cs:line
>  240
>at 
> Apache.Ignite.Core.Tests.Cache.Query.Continuous.ContinuousQueryAbstractTest.TestCallback()
>  in 
> c:\BuildAgent\work\c6bd605b1bad5b0f\modules\platforms\dotnet\Apache.Ignite.Core.Tests\Cache\Query\Continuous\ContinuousQueryAbstractTest.cs:line
>  199
> --- Stderr: ---
> Test started: ContinuousQueryAbstractTest.TestCallback
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3311) .NET: Include configuration schema in NuGet package

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn closed IGNITE-3311.
--

> .NET: Include configuration schema in NuGet package
> ---
>
> Key: IGNITE-3311
> URL: https://issues.apache.org/jira/browse/IGNITE-3311
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> See how NLog does it with NLog.Schema package. Make sure IntelliSense picks 
> it up for the user.
> To avoid forcing extra content files on the user, separate NuGet package 
> should be created.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3328) .NET: CacheConfiguration.AffinityFunction

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3328:
---
Summary: .NET: CacheConfiguration.AffinityFunction  (was: .NET: 
cacheConfiguration.AffinityFunction)

> .NET: CacheConfiguration.AffinityFunction
> -
>
> Key: IGNITE-3328
> URL: https://issues.apache.org/jira/browse/IGNITE-3328
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Critical
> Fix For: 1.7
>
>
> Allow custom AffinityFunction implementation in .NET



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3328) .NET: cacheConfiguration.AffinityFunction

2016-06-16 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3328:
--

 Summary: .NET: cacheConfiguration.AffinityFunction
 Key: IGNITE-3328
 URL: https://issues.apache.org/jira/browse/IGNITE-3328
 Project: Ignite
  Issue Type: New Feature
  Components: platforms
Affects Versions: 1.6
Reporter: Pavel Tupitsyn
Assignee: Pavel Tupitsyn
Priority: Critical
 Fix For: 1.7


Allow custom AffinityFunction implementation in .NET



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3328) .NET: Support user-defined AffinityFunction

2016-06-16 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3328:
---
Summary: .NET: Support user-defined AffinityFunction  (was: .NET: 
CacheConfiguration.AffinityFunction)

> .NET: Support user-defined AffinityFunction
> ---
>
> Key: IGNITE-3328
> URL: https://issues.apache.org/jira/browse/IGNITE-3328
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Critical
> Fix For: 1.7
>
>
> Allow custom AffinityFunction implementation in .NET



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-2379) .NET: ASP.NET Output Cache provider

2016-06-17 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn reassigned IGNITE-2379:
--

Assignee: Pavel Tupitsyn  (was: Vladimir Ozerov)

> .NET: ASP.NET Output Cache provider
> ---
>
> Key: IGNITE-2379
> URL: https://issues.apache.org/jira/browse/IGNITE-2379
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
> Fix For: 1.7
>
>
> Implement System.Web.Caching.OutputCacheProvider 
> (https://msdn.microsoft.com/en-us/library/system.web.caching.outputcacheprovider(v=vs.110).aspx)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3349) .NET: Support IgniteConfigurationSection in Apache.Ignite.exe

2016-06-21 Thread Pavel Tupitsyn (JIRA)
Pavel Tupitsyn created IGNITE-3349:
--

 Summary: .NET: Support IgniteConfigurationSection in 
Apache.Ignite.exe
 Key: IGNITE-3349
 URL: https://issues.apache.org/jira/browse/IGNITE-3349
 Project: Ignite
  Issue Type: Improvement
Affects Versions: 1.6
Reporter: Pavel Tupitsyn
Priority: Critical
 Fix For: 1.7


Think of a way to pick up IgniteConfigurationSection from 
Apache.Ignite.exe.config.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2657) .NET: SqlDependency for cache items

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2657:
---
Labels: .net  (was: )

> .NET: SqlDependency for cache items
> ---
>
> Key: IGNITE-2657
> URL: https://issues.apache.org/jira/browse/IGNITE-2657
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> Update cache when SQL Server data changes
> * https://msdn.microsoft.com/en-us/library/62xk7953(v=vs.110).aspx
> * http://www.alachisoft.com/ncache/database-synchronization.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1654) .Net: Ensure consistent "keepPortable" behavior.

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1654:
---
Labels: .net  (was: )

> .Net: Ensure consistent "keepPortable" behavior.
> 
>
> Key: IGNITE-1654
> URL: https://issues.apache.org/jira/browse/IGNITE-1654
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: ignite-1.4
>Reporter: Vladimir Ozerov
>Priority: Critical
>  Labels: .net
>
> We need to ensure that "keep portable" concept is
> a) Consistent;
> b) Exists for all logical units where it is necessary.
> Lets split "keep portable" behavior in two scenarios:
> 1) Client mode. This is when client (caller) operates on portable objects. 
> Example: ICache.Get(...);
> 2) Server mode. This is when some server side object (caller) operates on 
> portable objects. Example: a remote service which should not deserialize 
> passed arguments and operate on portables instead.
> Looks like both cases can be handled using the same "keep portable" flag on 
> related logical unit.
> Logical units affected:
> 1) Compute - at the very least closures can be executed in this mode;
> 2) Cache;
> 3) Data streamer;
> 4) Data structures: atomic stamped, atmoc reference;
> 5) Cache events;
> 6) Messages;
> 7) Services.
> Probably we should introduce a kind of "IKeepPortableEnabled" (or so) 
> interface, which will have a method "T WithKeepPortable()". This way users 
> will be able to easily understand that "keep portable" semantics is 
> applicable.
> Lets split it into several children tickets if necessary.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3170) .NET: Add user-friendly ToString overrides for public types

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3170:
---
Labels: .net  (was: )

> .NET: Add user-friendly ToString overrides for public types
> ---
>
> Key: IGNITE-3170
> URL: https://issues.apache.org/jira/browse/IGNITE-3170
> Project: Ignite
>  Issue Type: Improvement
>  Components: newbie, platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> Events, cache entry events, mutable cache entries, etc, should have ToString 
> overridden. See CacheEntry for example.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1429) .Net: Optimize stream receiver so that it is created only once on remote node.

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1429:
---
Labels: .net  (was: )

> .Net: Optimize stream receiver so that it is created only once on remote node.
> --
>
> Key: IGNITE-1429
> URL: https://issues.apache.org/jira/browse/IGNITE-1429
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Vladimir Ozerov
>Priority: Critical
>  Labels: .net
>
> Looks like we can employ PhantomReference in Java for this.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1418) .Net: Implement distributed count-down latch (event).

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1418:
---
Labels: .net  (was: )

> .Net: Implement distributed count-down latch (event).
> -
>
> Key: IGNITE-1418
> URL: https://issues.apache.org/jira/browse/IGNITE-1418
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Vladimir Ozerov
>Priority: Critical
>  Labels: .net
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3199) .NET: ASP.NET Session-State Store Provider

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3199:
---
Labels: .net  (was: )

> .NET: ASP.NET Session-State Store Provider
> --
>
> Key: IGNITE-3199
> URL: https://issues.apache.org/jira/browse/IGNITE-3199
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Priority: Critical
>  Labels: .net
> Fix For: 1.7
>
>
> See https://msdn.microsoft.com/en-us/library/ms178587.aspx
> Code should be put to Apache.Ignite.AspNet assembly (see IGNITE-2379)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2687) Call .NET services from Java

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2687:
---
Labels: .net  (was: )

> Call .NET services from Java
> 
>
> Key: IGNITE-2687
> URL: https://issues.apache.org/jira/browse/IGNITE-2687
> Project: Ignite
>  Issue Type: New Feature
>  Components: managed services, platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> .NET services can be called via PlatformDotNetService interface, providing 
> method name and arguments. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2492) .NET: Peer assembly loading

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2492:
---
Labels: .net  (was: )

> .NET: Peer assembly loading
> ---
>
> Key: IGNITE-2492
> URL: https://issues.apache.org/jira/browse/IGNITE-2492
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> Similar to peer class loading in Java, we can provide a possibility to load 
> assemblies on already started nodes, so that a node can execute jobs that are 
> not present on other nodes.
> Considerations:
> * Can we unload assemblies after use to free memory? This requires a separate 
> AppDomain, can we work with that?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1431) .Net: Ensure strings are written correctly in BIG/LITTLE endian modes.

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1431:
---
Labels: .net  (was: )

> .Net: Ensure strings are written correctly in BIG/LITTLE endian modes.
> --
>
> Key: IGNITE-1431
> URL: https://issues.apache.org/jira/browse/IGNITE-1431
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Vladimir Ozerov
>Priority: Minor
>  Labels: .net
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1969) .NET: Optimize PlatformCache "loadCache" and "readScanQuery" methods.

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1969:
---
Labels: .net  (was: )

> .NET: Optimize PlatformCache "loadCache" and "readScanQuery" methods.
> -
>
> Key: IGNITE-1969
> URL: https://issues.apache.org/jira/browse/IGNITE-1969
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: ignite-1.4
>Reporter: Vladimir Ozerov
>  Labels: .net
>
> Earlier we have an optimization when we passed pointer to .Net object along 
> with its serialized form to avoid deserialization for node-local scenarios. 
> But then we revealed leaks in implementation and disabled this opto.
> As as result we always pass 0 to corresponding native methods (see loadCache0 
> and readScanQuery). 
> We need either re-apply this opto correctly, or refactor native methods and 
> forget about.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3181) .NET: Speed up TypeCaster with reflection.emit

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3181:
---
Labels: .net  (was: )

> .NET: Speed up TypeCaster with reflection.emit
> --
>
> Key: IGNITE-3181
> URL: https://issues.apache.org/jira/browse/IGNITE-3181
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> Investigate whether emitted IL can be more efficient than compiled expression 
> tree due to less checks.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2746) .NET: Improve ReflectiveSerializer control with attributes

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2746:
---
Labels: .net  (was: )

> .NET: Improve ReflectiveSerializer control with attributes
> --
>
> Key: IGNITE-2746
> URL: https://issues.apache.org/jira/browse/IGNITE-2746
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Priority: Minor
>  Labels: .net
> Fix For: 1.7
>
>
> Allow custom field names and ordering (similar to DataMemberAttribute, for 
> example: 
> https://msdn.microsoft.com/en-us/library/system.runtime.serialization.datamemberattribute(v=vs.110).aspx)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1415) .Net: Optimize handle registry.

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1415:
---
Labels: .net  (was: )

> .Net: Optimize handle registry.
> ---
>
> Key: IGNITE-1415
> URL: https://issues.apache.org/jira/browse/IGNITE-1415
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Vladimir Ozerov
>Priority: Critical
>  Labels: .net
>
> The main problem with handle registry is CAS on a single shared variable. 
> This could result in a very bad performance under contention. 
> Several techniques can be applied here:
> 1) Stripes. Assign some ID to a thread and then use it to pick correct stripe 
> for the thread. Be careful with false-sharing effects as stripes can be 
> located very close to each other.
> 2) Cleanup with relaxed membars. When we are to remove the handle, no need 
> for full HB semantics. We are ok if subsequent calls to the same handle will 
> see not-killed object for a while.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2890) .NET: Add CacheConfiguration.NodeFilter

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2890:
---
Labels: .net  (was: )

> .NET: Add CacheConfiguration.NodeFilter
> ---
>
> Key: IGNITE-2890
> URL: https://issues.apache.org/jira/browse/IGNITE-2890
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> See ServiceConfiguration.NodeFilter
> * Caches start earlier than platform => need to pass pointer for static 
> CacheConfigurations
> * For dynamic cache start, no need for pointers



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3169) .NET: Provide better error messages when user assembly loading has failed

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3169:
---
Labels: .net  (was: )

> .NET: Provide better error messages when user assembly loading has failed
> -
>
> Key: IGNITE-3169
> URL: https://issues.apache.org/jira/browse/IGNITE-3169
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1628) .Net: Ensure that .Net works on Mono platform.

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1628:
---
Labels: .net  (was: )

> .Net: Ensure that .Net works on Mono platform.
> --
>
> Key: IGNITE-1628
> URL: https://issues.apache.org/jira/browse/IGNITE-1628
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: ignite-1.4
>Reporter: Vladimir Ozerov
>Priority: Critical
>  Labels: .net
>
> *NOTE*: Targeted for 1.6, but could be moved even further in case of tight 
> release schedule.
> *Goal*
> As Microsoft is moving .Net towards open standards, Mono receives more an 
> more attention. 
> We need to ensure that our product works fine on this platform. This includes 
> both Windows, Linux and (possibly) Mac environments.
> *Tasks*
> - Ensure that Ignite works with Mono on Windows. This is the easiest task 
> because we only need to re-compile .Net part.
> - Ensure that Ignite works with Mono on Linux. This will require alternate 
> build procedure because CPP recompilation will be required as well.
> - Create relevant TC builds.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1975) .NET: Ignite Entity Framework Data Provider

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1975:
---
Labels: .net  (was: )

> .NET: Ignite Entity Framework Data Provider
> ---
>
> Key: IGNITE-1975
> URL: https://issues.apache.org/jira/browse/IGNITE-1975
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
>
> Implement Entity Framework Data Provider for Ignite:
> https://msdn.microsoft.com/en-us/library/ee789835(v=vs.100).aspx



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3206) .NET: Automatic persistence

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3206:
---
Labels: .net  (was: )

> .NET: Automatic persistence
> ---
>
> Key: IGNITE-3206
> URL: https://issues.apache.org/jira/browse/IGNITE-3206
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> See how Automatic Persistence works in Java: 
> http://apacheignite.gridgain.org/docs/automatic-persistence
> Think of a way to do the same in .NET with raw SqlClient and/or with 
> EntityFramework/NHibernate.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1914) .Net: Get rid of boxing in DoOutInOpNullable

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1914:
---
Labels: .net  (was: )

> .Net: Get rid of boxing in DoOutInOpNullable
> 
>
> Key: IGNITE-1914
> URL: https://issues.apache.org/jira/browse/IGNITE-1914
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Priority: Minor
>  Labels: .net
> Fix For: 1.7
>
>
> See CacheImpl.DoOutInOpNullable overloads.
> We read result as object and then check for null. Nulls are quite frequent in 
> these scenarios.
> To get rid of boxing we need to introduce TryUnmarshal method which allows 
> reading value types with null semantics.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2491) .NET: Async examples

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2491:
---
Labels: .net  (was: )

> .NET: Async examples
> 
>
> Key: IGNITE-2491
> URL: https://issues.apache.org/jira/browse/IGNITE-2491
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> Our examples do not use *Async methods, probably we should demonstrate 
> asynchronous computations as well.
> Also, consider creating C#5 examples with async/await, similar to separate 
> java8 examples in Java.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3289) .NET: Add logging messages

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3289:
---
Labels: .net  (was: )

> .NET: Add logging messages
> --
>
> Key: IGNITE-3289
> URL: https://issues.apache.org/jira/browse/IGNITE-3289
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> Add various logging where it might be useful:
> * Startup (starting JVM, loading DLLs, resolving IGNITE_HOME and classpath, 
> initializing store, etc)
> * Unmanaged callbacks
> * Anything else?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3291) .NET: IClusterGroup.ForDaemons

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3291:
---
Labels: .net  (was: )

> .NET: IClusterGroup.ForDaemons
> --
>
> Key: IGNITE-3291
> URL: https://issues.apache.org/jira/browse/IGNITE-3291
> Project: Ignite
>  Issue Type: Improvement
>  Components: newbie, platforms
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Priority: Trivial
>  Labels: .net
> Fix For: 1.7
>
>
> Java side is finally fixed (IGNITE-2911), we can enable this in .NET



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1410) .Net: Implement IEvents.RecordLocal.

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1410:
---
Labels: .net  (was: )

> .Net: Implement IEvents.RecordLocal.
> 
>
> Key: IGNITE-1410
> URL: https://issues.apache.org/jira/browse/IGNITE-1410
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Vladimir Ozerov
>  Labels: .net
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1427) .Net: Services - add support for non-deserializable AffinityKey.

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1427:
---
Labels: .net  (was: )

> .Net: Services - add support for non-deserializable AffinityKey.
> 
>
> Key: IGNITE-1427
> URL: https://issues.apache.org/jira/browse/IGNITE-1427
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Vladimir Ozerov
>  Labels: .net
>
> Currently if affinity key cannot be marshalled for some reason, it will break 
> not only affected service descriptor, but all services API.
> We should catch marshalling exceptions and pass it to .Net in a wrapped form. 
> These exception must be thrown only if user is trying to access problematic 
> key explicitly.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3278) .NET: Allow PlatformCallbackGateway usage during shutdown

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3278:
---
Labels: .net  (was: )

> .NET: Allow PlatformCallbackGateway usage during shutdown
> -
>
> Key: IGNITE-3278
> URL: https://issues.apache.org/jira/browse/IGNITE-3278
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> Currently we block PlatformCallbackGateway calls during node stop. This 
> causes issues with things like store and event logging, which need to 
> function  during stop.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2825) .NET: Write Serializable as binary

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2825:
---
Labels: .net  (was: )

> .NET: Write Serializable as binary
> --
>
> Key: IGNITE-2825
> URL: https://issues.apache.org/jira/browse/IGNITE-2825
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
> Fix For: 1.7
>
>
> Write [Serializable] classes in Ignite binary format. Employ the same logic 
> as .NET does with NonSerializedAttribute and ISerializable interface.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2102) .NET: Simplify query examples

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2102:
---
Labels: .net  (was: )

> .NET: Simplify query examples
> -
>
> Key: IGNITE-2102
> URL: https://issues.apache.org/jira/browse/IGNITE-2102
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: ignite-1.4
>Reporter: Vladimir Ozerov
>  Labels: .net
> Fix For: 1.7
>
>
> Simply move IGNITE-2097 to .NET once it is ready.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1424) .Net: Add tests for BIG_ENDIANs.

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1424:
---
Labels: .net  (was: )

> .Net: Add tests for BIG_ENDIANs.
> 
>
> Key: IGNITE-1424
> URL: https://issues.apache.org/jira/browse/IGNITE-1424
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Vladimir Ozerov
>Priority: Minor
>  Labels: .net
>
> As all our hardware uses LITTLE_ENDIAN byte order, BIG_ENDIAN was never 
> tested properly. We do not know, whether it works. We do not know it's 
> performance characteristics. 
> Need to add ability to override endian final flags in both .Net and Java 
> (e.g. through a system property or through "Ex" configuration) and then run 
> unit tests with it.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2940) .NET: Plugin system

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2940:
---
Labels: .net  (was: )

> .NET: Plugin system
> ---
>
> Key: IGNITE-2940
> URL: https://issues.apache.org/jira/browse/IGNITE-2940
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
>
> Implement a plugin system to allow extending Ignite functionality by third 
> parties.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2578) .NET: Native object comparison

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2578:
---
Labels: .net  (was: )

> .NET: Native object comparison
> --
>
> Key: IGNITE-2578
> URL: https://issues.apache.org/jira/browse/IGNITE-2578
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
>
> Currently all comparisons (cache key comparisons, atomic operations, etc) are 
> performed in binary form on Java side. This may not work as intended when 
> user has overridden Equals/GetHashCode. Need to investigate whether we can or 
> should do anything about this. 
> * Is it really an issue?
> * Is there a workaround?
> * Are there any user requests about this?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3324) .NET: LINQPad Data Context Driver

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-3324:
---
Labels: .net  (was: )

> .NET: LINQPad Data Context Driver
> -
>
> Key: IGNITE-3324
> URL: https://issues.apache.org/jira/browse/IGNITE-3324
> Project: Ignite
>  Issue Type: New Feature
>  Components: platforms
>Affects Versions: 1.6
>Reporter: Pavel Tupitsyn
>Priority: Minor
>  Labels: .net
>
> LINQPad can be extended with a custom Data Context Driver: 
> http://www.linqpad.net/Extensibility.aspx
> With SQL databases, this displays a tree view (top left) of databases, 
> tables, columns, and allows easy strongly-typed queries, as well as raw SQL 
> queries in some cases.
> In our case, I imagine the following:
> * User connects to the grid with our Ignite LINQPad Driver
> * List of queryable entities is displayed (one per QueryEntity) - for SQL and 
> LINQ queries
> * Separate list of all caches is displayed (regardless of query 
> configuration) - for LINQ-to-objects and other raw cache operations (in 
> binary mode only)
> This is a low priority integration, but nice and fun one. Something like 
> Visor for .NET world with LINQ.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2295) .Net: Provide performance counters

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-2295:
---
Labels: .net  (was: )

> .Net: Provide performance counters
> --
>
> Key: IGNITE-2295
> URL: https://issues.apache.org/jira/browse/IGNITE-2295
> Project: Ignite
>  Issue Type: Task
>  Components: platforms
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>  Labels: .net
>
> Ignite.NET should be instrumented with Performance Monitor (perfmon) counters 
> for diagnostic purposes. We can use existing metrics (cluster, cache, etc) to 
> provide custom counters.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1785) .Net: Improve PlatformMemory/PortableStream performance and memory usage

2016-06-20 Thread Pavel Tupitsyn (JIRA)

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

Pavel Tupitsyn updated IGNITE-1785:
---
Labels: .net  (was: )

> .Net: Improve PlatformMemory/PortableStream performance and memory usage
> 
>
> Key: IGNITE-1785
> URL: https://issues.apache.org/jira/browse/IGNITE-1785
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms
>Affects Versions: 1.5.0.final
>Reporter: Pavel Tupitsyn
>  Labels: .net
>
> * PlatformMemory is just a single "long _memPtr" and can be easily converted 
> to a struct to reduce allocations (it is allocated a lot)
> * PlatformMemoryStream works with PlatformMemory.Length and Capacity 
> indirectly. By employing a struct approach from 
> https://issues.apache.org/jira/browse/IGNITE-1428 we can work with Length and 
> Capacity directly, which may be faster, and will eliminate the need for 
> SyncronizeInput/Output calls.
> * PlatformMemoryStream is allocated even more often than PlatformMemory, need 
> to investigate whether it can also be a struct. See how List<>.GetEnumerator 
> works, which is a struct.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


<    1   2   3   4   5   6   7   8   9   10   >