You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2016/12/28 09:55:05 UTC
[1/8] ignite git commit: IGNITE-4367 .NET: Fix flaky tests - fix race
in ReconnectTest.TestClusterRestart
Repository: ignite
Updated Branches:
refs/heads/ignite-2.0 c5882a85f -> 7e73d0223
IGNITE-4367 .NET: Fix flaky tests - fix race in ReconnectTest.TestClusterRestart
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/df725e83
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/df725e83
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/df725e83
Branch: refs/heads/ignite-2.0
Commit: df725e837da06bc319f9655d138909d1fd96ffbc
Parents: c040c37
Author: Pavel Tupitsyn <pt...@apache.org>
Authored: Mon Dec 26 17:35:51 2016 +0300
Committer: Pavel Tupitsyn <pt...@apache.org>
Committed: Mon Dec 26 17:35:51 2016 +0300
----------------------------------------------------------------------
.../dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/df725e83/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
index fdf64a3..5e9f788 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
@@ -72,11 +72,14 @@ namespace Apache.Ignite.Core.Tests
// Start the server and wait for reconnect.
Ignition.Start(serverCfg);
+
+ // Wait a bit for notifications.
+ Thread.Sleep(100);
+
+ // Check reconnect task.
Assert.IsTrue(ex.ClientReconnectTask.Result);
// Check the event args.
- Thread.Sleep(100); // Wait for event handler
-
Assert.IsNotNull(eventArgs);
Assert.IsTrue(eventArgs.HasClusterRestarted);
[8/8] ignite git commit: Merge branch 'master' into ignite-2.0
Posted by vo...@apache.org.
Merge branch 'master' into ignite-2.0
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/7e73d022
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/7e73d022
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/7e73d022
Branch: refs/heads/ignite-2.0
Commit: 7e73d0223a3f09cbe0b7094a2c04bdf9d63ca9be
Parents: c5882a8 06ef846
Author: devozerov <vo...@gridgain.com>
Authored: Wed Dec 28 12:54:47 2016 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Wed Dec 28 12:54:47 2016 +0300
----------------------------------------------------------------------
modules/platforms/cpp/binary/Makefile.am | 2 +-
.../ignite/impl/binary/binary_type_manager.h | 2 +-
.../src/impl/binary/binary_type_manager.cpp | 6 +-
.../binary/src/impl/interop/interop_memory.cpp | 2 +-
modules/platforms/cpp/common/Makefile.am | 2 +-
.../include/ignite/common/dynamic_size_array.h | 2 +-
modules/platforms/cpp/configure.ac | 2 +-
modules/platforms/cpp/configure.acrel | 2 +-
modules/platforms/cpp/core-test/Makefile.am | 2 +-
.../cpp/core-test/src/cache_query_test.cpp | 8 +-
.../cpp/core-test/src/reference_test.cpp | 14 +-
modules/platforms/cpp/core/Makefile.am | 2 +-
.../cache/query/continuous/continuous_query.h | 8 +-
.../include/ignite/cache/query/query_cursor.h | 4 +-
.../query/continuous/continuous_query_impl.h | 8 +-
.../core/include/ignite/impl/handle_registry.h | 2 +-
.../cpp/core/include/ignite/impl/operations.h | 4 +-
.../cpp/core/src/impl/cache/cache_impl.cpp | 5 +-
.../cpp/core/src/impl/handle_registry.cpp | 2 +-
modules/platforms/cpp/examples/configure.ac | 2 +-
.../cpp/examples/odbc-example/Makefile.am | 2 +-
.../cpp/examples/putget-example/Makefile.am | 2 +-
.../cpp/examples/query-example/Makefile.am | 2 +-
modules/platforms/cpp/ignite/Makefile.am | 2 +-
modules/platforms/cpp/jni/Makefile.am | 2 +-
modules/platforms/cpp/jni/src/java.cpp | 2 +-
modules/platforms/cpp/odbc-test/Makefile.am | 2 +-
.../cpp/odbc-test/config/queries-default.xml | 1 +
.../odbc-test/include/sql_test_suite_fixture.h | 3 +
.../platforms/cpp/odbc-test/include/test_type.h | 20 +-
.../platforms/cpp/odbc-test/src/column_test.cpp | 189 +++++++++++++++++++
.../odbc-test/src/sql_test_suite_fixture.cpp | 17 ++
.../cpp/odbc-test/src/sql_types_test.cpp | 131 +++++++++++++
modules/platforms/cpp/odbc/Makefile.am | 2 +-
.../cpp/odbc/include/ignite/odbc/utility.h | 9 +-
.../cpp/odbc/install/ignite-odbc-amd64.wxs | 2 +-
.../cpp/odbc/install/ignite-odbc-x86.wxs | 2 +-
modules/platforms/cpp/odbc/src/column.cpp | 28 ++-
.../cpp/odbc/src/config/connection_info.cpp | 6 +-
modules/platforms/cpp/odbc/src/connection.cpp | 2 +
modules/platforms/cpp/odbc/src/odbc.cpp | 5 +-
modules/platforms/cpp/odbc/src/utility.cpp | 15 ++
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Examples/Example.cs | 5 +-
.../Examples/ExamplesTest.cs | 107 ++++++++---
.../Properties/AssemblyInfo.cs | 4 +-
.../Apache.Ignite.Core.Tests/ReconnectTest.cs | 26 ++-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
.../Apache.Ignite/Properties/AssemblyInfo.cs | 4 +-
.../examples/Apache.Ignite.Examples/App.config | 2 +
.../DataStructures/AtomicSequenceExample.cs | 26 +--
.../Properties/AssemblyInfo.cs | 4 +-
.../Properties/AssemblyInfo.cs | 4 +-
62 files changed, 612 insertions(+), 141 deletions(-)
----------------------------------------------------------------------
[3/8] ignite git commit: IGNITE-4367 .NET: Fix flaky tests - fix race
in ReconnectTest.TestClusterRestart
Posted by vo...@apache.org.
IGNITE-4367 .NET: Fix flaky tests - fix race in ReconnectTest.TestClusterRestart
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/300750f1
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/300750f1
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/300750f1
Branch: refs/heads/ignite-2.0
Commit: 300750f14eff04063e898d2083ea188ce0777e7d
Parents: 7606e66
Author: Pavel Tupitsyn <pt...@apache.org>
Authored: Mon Dec 26 19:15:53 2016 +0300
Committer: Pavel Tupitsyn <pt...@apache.org>
Committed: Mon Dec 26 19:15:53 2016 +0300
----------------------------------------------------------------------
.../Apache.Ignite.Core.Tests/ReconnectTest.cs | 20 +++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/300750f1/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
index 5e9f788..253a10f 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
@@ -70,14 +70,17 @@ namespace Apache.Ignite.Core.Tests
Assert.IsNotNull(ex);
+ // Wait a bit for cluster restart detection.
+ Thread.Sleep(1000);
+
// Start the server and wait for reconnect.
Ignition.Start(serverCfg);
- // Wait a bit for notifications.
- Thread.Sleep(100);
-
// Check reconnect task.
Assert.IsTrue(ex.ClientReconnectTask.Result);
+
+ // Wait a bit for notifications.
+ Thread.Sleep(100);
// Check the event args.
Assert.IsNotNull(eventArgs);
@@ -167,6 +170,17 @@ namespace Apache.Ignite.Core.Tests
"-J-DIGNITE_QUIET=false");
}
+
+ /// <summary>
+ /// Test set up.
+ /// </summary>
+ [SetUp]
+ public void SetUp()
+ {
+ Ignition.StopAll(true);
+ IgniteProcess.KillAll();
+ }
+
/// <summary>
/// Test tear down.
/// </summary>
[7/8] ignite git commit: IGNITE-4307 .NET: Fix AtomicConfiguration in
AtomicSequenceExample
Posted by vo...@apache.org.
IGNITE-4307 .NET: Fix AtomicConfiguration in AtomicSequenceExample
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/06ef8460
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/06ef8460
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/06ef8460
Branch: refs/heads/ignite-2.0
Commit: 06ef846067411350081c4112ef9e9466deb6086c
Parents: 8dd0322
Author: Pavel Tupitsyn <pt...@apache.org>
Authored: Wed Dec 28 11:29:30 2016 +0300
Committer: Pavel Tupitsyn <pt...@apache.org>
Committed: Wed Dec 28 11:29:30 2016 +0300
----------------------------------------------------------------------
.../examples/Apache.Ignite.Examples/App.config | 2 ++
.../DataStructures/AtomicSequenceExample.cs | 26 +++-----------------
2 files changed, 6 insertions(+), 22 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/06ef8460/modules/platforms/dotnet/examples/Apache.Ignite.Examples/App.config
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/App.config b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/App.config
index 8b16df3..13f0d86 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/App.config
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/App.config
@@ -40,6 +40,8 @@
<string>Apache.Ignite.ExamplesDll.Compute.AverageSalaryJob</string>
</types>
</binaryConfiguration>
+
+ <atomicConfiguration atomicSequenceReserveSize="10" />
<discoverySpi type="TcpDiscoverySpi">
<ipFinder type="TcpDiscoveryMulticastIpFinder">
http://git-wip-us.apache.org/repos/asf/ignite/blob/06ef8460/modules/platforms/dotnet/examples/Apache.Ignite.Examples/DataStructures/AtomicSequenceExample.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/DataStructures/AtomicSequenceExample.cs b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/DataStructures/AtomicSequenceExample.cs
index f08c998..89e8ed3 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/DataStructures/AtomicSequenceExample.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/DataStructures/AtomicSequenceExample.cs
@@ -21,9 +21,6 @@ namespace Apache.Ignite.Examples.DataStructures
using System.Threading;
using Apache.Ignite.Core;
using Apache.Ignite.Core.DataStructures;
- using Apache.Ignite.Core.DataStructures.Configuration;
- using Apache.Ignite.Core.Discovery.Tcp;
- using Apache.Ignite.Core.Discovery.Tcp.Multicast;
using Apache.Ignite.ExamplesDll.DataStructures;
/// <summary>
@@ -44,26 +41,11 @@ namespace Apache.Ignite.Examples.DataStructures
[STAThread]
public static void Main()
{
- var atomicCfg = new AtomicConfiguration
- {
- // Each node reserves 10 numbers to itself, so that 10 increments can be done locally,
- // without communicating to other nodes. After that, another 10 elements are reserved.
- AtomicSequenceReserveSize = 10
- };
-
- var cfg = new IgniteConfiguration
- {
- DiscoverySpi = new TcpDiscoverySpi
- {
- IpFinder = new TcpDiscoveryMulticastIpFinder
- {
- Endpoints = new[] { "127.0.0.1:47500" }
- }
- },
- AtomicConfiguration = atomicCfg
- };
+ // See app.config: <atomicConfiguration atomicSequenceReserveSize="10" />
+ // Each node reserves 10 numbers to itself, so that 10 increments can be done locally,
+ // without communicating to other nodes. After that, another 10 elements are reserved.
- using (var ignite = Ignition.Start(cfg))
+ using (var ignite = Ignition.StartFromApplicationConfiguration())
{
Console.WriteLine();
Console.WriteLine(">>> Atomic sequence example started.");
[2/8] ignite git commit: IGNITE-4494 .NET: Optimize
ExamplesTest.TestRemoteNodes
Posted by vo...@apache.org.
IGNITE-4494 .NET: Optimize ExamplesTest.TestRemoteNodes
Reuse standalone nodes between test runs
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/7606e662
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/7606e662
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/7606e662
Branch: refs/heads/ignite-2.0
Commit: 7606e6624be313a114a1c6350faa83a5f5063938
Parents: df725e8
Author: Pavel Tupitsyn <pt...@apache.org>
Authored: Mon Dec 26 18:47:11 2016 +0300
Committer: Pavel Tupitsyn <pt...@apache.org>
Committed: Mon Dec 26 18:47:11 2016 +0300
----------------------------------------------------------------------
.../Examples/Example.cs | 5 +-
.../Examples/ExamplesTest.cs | 107 +++++++++++++------
2 files changed, 78 insertions(+), 34 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/7606e662/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/Example.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/Example.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/Example.cs
index 4df012c..e7a264d 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/Example.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/Example.cs
@@ -23,7 +23,6 @@ namespace Apache.Ignite.Core.Tests.Examples
using System.Linq;
using System.Text.RegularExpressions;
using Apache.Ignite.Examples.Compute;
- using Apache.Ignite.ExamplesDll.Compute;
using NUnit.Framework;
/// <summary>
@@ -76,8 +75,6 @@ namespace Apache.Ignite.Core.Tests.Examples
Assert.IsTrue(types.Any());
- var examplesDllName = typeof(AverageSalaryJob).Assembly.GetName().Name;
-
foreach (var type in types)
{
var sourceFile = sourceFiles.Single(x => x.EndsWith(string.Format("\\{0}.cs", type.Name)));
@@ -87,7 +84,7 @@ namespace Apache.Ignite.Core.Tests.Examples
yield return new Example
{
ConfigPath = GetConfigPath(sourceCode),
- NeedsTestDll = sourceCode.Contains(examplesDllName),
+ NeedsTestDll = sourceCode.Contains("-assembly="),
_runAction = GetRunAction(type),
Name = type.Name
};
http://git-wip-us.apache.org/repos/asf/ignite/blob/7606e662/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/ExamplesTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/ExamplesTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/ExamplesTest.cs
index 61bfb5c..19e68a6 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/ExamplesTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/ExamplesTest.cs
@@ -32,8 +32,22 @@ namespace Apache.Ignite.Core.Tests.Examples
public class ExamplesTest
{
/** */
+ private static readonly Example[] AllExamples = Example.GetExamples().ToArray();
+
+ /** */
+ private static readonly string[] LocalOnlyExamples =
+ {
+ "LifecycleExample", "ClientReconnectExample", "MultiTieredCacheExample"
+ };
+
+ /** */
+ private static readonly string[] NoDllExamples = { "BinaryModeExample", "NearCacheExample" };
+
+ /** */
private IDisposable _changedConfig;
+ /** */
+ private bool _remoteNodeStarted;
/// <summary>
/// Tests the example in a single node mode.
/// </summary>
@@ -41,6 +55,14 @@ namespace Apache.Ignite.Core.Tests.Examples
[Test, TestCaseSource("TestCasesLocal")]
public void TestLocalNode(Example example)
{
+ StopRemoteNodes();
+
+ if (LocalOnlyExamples.Contains(example.Name))
+ {
+ Assert.IsFalse(example.NeedsTestDll, "Local-only example should not mention test dll.");
+ Assert.IsNull(example.ConfigPath, "Local-only example should not mention app.config path.");
+ }
+
example.Run();
}
@@ -69,41 +91,65 @@ namespace Apache.Ignite.Core.Tests.Examples
/// </summary>
/// <param name="example">The example to run.</param>
/// <param name="clientMode">Client mode flag.</param>
- private static void TestRemoteNodes(Example example, bool clientMode)
+ private void TestRemoteNodes(Example example, bool clientMode)
{
- Assert.IsNotEmpty(example.ConfigPath);
+ Assert.IsTrue(PathUtil.ExamplesAppConfigPath.EndsWith(example.ConfigPath,
+ StringComparison.OrdinalIgnoreCase), "All examples should use the same app.config.");
- var configPath = Path.Combine(PathUtil.IgniteHome, PathUtil.DevPrefix, example.ConfigPath);
+ Assert.IsTrue(example.NeedsTestDll || NoDllExamples.Contains(example.Name),
+ "Examples that allow standalone nodes should mention test dll.");
- // Try with multiple standalone nodes
- for (var i = 0; i < 2; i++)
- {
- // Start a grid to monitor topology
- // Stop it after topology check so we don't interfere with example
- Ignition.ClientMode = false;
+ StartRemoteNodes();
- using (var ignite = Ignition.StartFromApplicationConfiguration(
- "igniteConfiguration", configPath))
- {
- var args = new List<string> { "-configFileName=" + configPath};
+ Ignition.ClientMode = clientMode;
- if (example.NeedsTestDll)
- args.Add(" -assembly=" + typeof(AverageSalaryJob).Assembly.Location);
+ // Run twice to catch issues with standalone node state
+ example.Run();
+ example.Run();
+ }
- var proc = new IgniteProcess(args.ToArray());
+ /// <summary>
+ /// Starts standalone node.
+ /// </summary>
+ private void StartRemoteNodes()
+ {
+ if (_remoteNodeStarted)
+ return;
+
+ // Start a grid to monitor topology;
+ // Stop it after topology check so we don't interfere with example.
+ Ignition.ClientMode = false;
- Assert.IsTrue(ignite.WaitTopology(i + 2),
- string.Format("Standalone node failed to join topology: [{0}]", proc.GetInfo()));
+ using (var ignite = Ignition.StartFromApplicationConfiguration(
+ "igniteConfiguration", PathUtil.ExamplesAppConfigPath))
+ {
+ var args = new List<string>
+ {
+ "-configFileName=" + PathUtil.ExamplesAppConfigPath,
+ " -assembly=" + typeof(AverageSalaryJob).Assembly.Location
+ };
- Assert.IsTrue(proc.Alive, string.Format("Standalone node stopped unexpectedly: [{0}]",
- proc.GetInfo()));
- }
+ var proc = new IgniteProcess(args.ToArray());
- Ignition.ClientMode = clientMode;
+ Assert.IsTrue(ignite.WaitTopology(2),
+ string.Format("Standalone node failed to join topology: [{0}]", proc.GetInfo()));
+
+ Assert.IsTrue(proc.Alive, string.Format("Standalone node stopped unexpectedly: [{0}]",
+ proc.GetInfo()));
+ }
+
+ _remoteNodeStarted = true;
+ }
- // Run twice to catch issues with standalone node state
- example.Run();
- example.Run();
+ /// <summary>
+ /// Stops standalone nodes.
+ /// </summary>
+ private void StopRemoteNodes()
+ {
+ if (_remoteNodeStarted)
+ {
+ IgniteProcess.KillAll();
+ _remoteNodeStarted = false;
}
}
@@ -127,6 +173,10 @@ namespace Apache.Ignite.Core.Tests.Examples
public void FixtureTearDown()
{
_changedConfig.Dispose();
+
+ Ignition.StopAll(true);
+
+ IgniteProcess.KillAll();
}
/// <summary>
@@ -136,7 +186,6 @@ namespace Apache.Ignite.Core.Tests.Examples
public void TearDown()
{
Ignition.ClientMode = false;
- IgniteProcess.KillAll();
}
/// <summary>
@@ -146,7 +195,7 @@ namespace Apache.Ignite.Core.Tests.Examples
// ReSharper disable once MemberCanBeMadeStatic.Global
public IEnumerable<Example> TestCasesLocal
{
- get { return Example.GetExamples().Where(x => x.Name != "NearCacheExample"); }
+ get { return AllExamples.Where(x => x.Name != "NearCacheExample"); }
}
/// <summary>
@@ -158,9 +207,7 @@ namespace Apache.Ignite.Core.Tests.Examples
{
get
{
- var localOnly = new[] {"LifecycleExample", "ClientReconnectExample", "MultiTieredCacheExample" };
-
- return Example.GetExamples().Where(x => !localOnly.Contains(x.Name));
+ return AllExamples.Where(x => !LocalOnlyExamples.Contains(x.Name));
}
}
}
[6/8] ignite git commit: IGNITE-4367 .NET: Fix flaky tests - add
topology checks to ReconnectTest.TestClusterRestart
Posted by vo...@apache.org.
IGNITE-4367 .NET: Fix flaky tests - add topology checks to ReconnectTest.TestClusterRestart
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/8dd03222
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/8dd03222
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/8dd03222
Branch: refs/heads/ignite-2.0
Commit: 8dd03222f87dc0b0b6b0f0a86adb5ec196592e38
Parents: 10b2b97
Author: Pavel Tupitsyn <pt...@apache.org>
Authored: Tue Dec 27 20:11:37 2016 +0300
Committer: Pavel Tupitsyn <pt...@apache.org>
Committed: Tue Dec 27 20:11:37 2016 +0300
----------------------------------------------------------------------
.../platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs | 5 +++++
1 file changed, 5 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/8dd03222/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
index 253a10f..5a2d2d0 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ReconnectTest.cs
@@ -53,8 +53,13 @@ namespace Apache.Ignite.Core.Tests
};
var server = Ignition.Start(serverCfg);
+
+ Assert.AreEqual(1, server.GetCluster().GetNodes().Count);
+
var client = Ignition.Start(clientCfg);
+ Assert.AreEqual(2, client.GetCluster().GetNodes().Count);
+
ClientReconnectEventArgs eventArgs = null;
client.ClientReconnected += (sender, args) => { eventArgs = args; };
[5/8] ignite git commit: 2.0.0-SNAPSHOT
Posted by vo...@apache.org.
2.0.0-SNAPSHOT
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/10b2b97a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/10b2b97a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/10b2b97a
Branch: refs/heads/ignite-2.0
Commit: 10b2b97a38cf52e480785ebb041f51e562666ad6
Parents: 32d2629
Author: Ignite Teamcity <ig...@apache.org>
Authored: Tue Dec 27 14:04:05 2016 +0300
Committer: Ignite Teamcity <ig...@apache.org>
Committed: Tue Dec 27 14:04:05 2016 +0300
----------------------------------------------------------------------
modules/platforms/cpp/configure.ac | 2 +-
modules/platforms/cpp/configure.acrel | 2 +-
modules/platforms/cpp/examples/configure.ac | 2 +-
modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs | 2 +-
modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs | 2 +-
.../dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs | 4 ++--
.../Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs | 4 ++--
.../Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs | 4 ++--
.../Properties/AssemblyInfo.cs | 4 ++--
.../Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs | 4 ++--
.../dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs | 4 ++--
.../platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs | 4 ++--
.../examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs | 4 ++--
.../Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs | 4 ++--
20 files changed, 35 insertions(+), 35 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/cpp/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/configure.ac b/modules/platforms/cpp/configure.ac
index 0c1f731..3c98225 100644
--- a/modules/platforms/cpp/configure.ac
+++ b/modules/platforms/cpp/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++], [2.0.0.16263], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++], [2.0.0.16694], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CANONICAL_HOST
AC_CONFIG_MACRO_DIR([m4])
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/cpp/configure.acrel
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/configure.acrel b/modules/platforms/cpp/configure.acrel
index 9a0d87f..f73b57c 100644
--- a/modules/platforms/cpp/configure.acrel
+++ b/modules/platforms/cpp/configure.acrel
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++], [2.0.0.16263], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
+AC_INIT([Apache Ignite C++], [2.0.0.16694], [dev@ignite.apache.org], [ignite], [ignite.apache.org])
AC_CANONICAL_HOST
AC_CONFIG_MACRO_DIR([m4])
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/cpp/examples/configure.ac
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/examples/configure.ac b/modules/platforms/cpp/examples/configure.ac
index d167cf0..e15d186 100644
--- a/modules/platforms/cpp/examples/configure.ac
+++ b/modules/platforms/cpp/examples/configure.ac
@@ -19,7 +19,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([Apache Ignite C++ Examples], [2.0.0.16263], [dev@ignite.apache.org], [ignite-examples], [ignite.apache.org])
+AC_INIT([Apache Ignite C++ Examples], [2.0.0.16694], [dev@ignite.apache.org], [ignite-examples], [ignite.apache.org])
AC_CANONICAL_HOST
AC_CONFIG_MACRO_DIR([m4])
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs b/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs
index 6ec1c31..eadbe88 100644
--- a/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs
+++ b/modules/platforms/cpp/odbc/install/ignite-odbc-amd64.wxs
@@ -21,7 +21,7 @@
<Product Name='Apache Ignite ODBC 64-bit Driver' Manufacturer='The Apache Software Foundation'
Id='F3E308E4-910C-4AF5-82DE-2ACF4D64830E'
UpgradeCode='1D7AEFDF-6CD2-4FB5-88F2-811A89832D6D'
- Language='1033' Codepage='1252' Version='2.0.0.16263'>
+ Language='1033' Codepage='1252' Version='2.0.0.16694'>
<Package Id='*' Keywords='Installer' Description="Apache Ignite ODBC 64-bit Driver Installer"
Comments='Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are trademarks of The Apache Software Foundation.'
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs b/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs
index c1aeca6..b50b5a3 100644
--- a/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs
+++ b/modules/platforms/cpp/odbc/install/ignite-odbc-x86.wxs
@@ -21,7 +21,7 @@
<Product Name='Apache Ignite ODBC 32-bit Driver' Manufacturer='The Apache Software Foundation'
Id='D39CBABA-1E21-4701-AA5C-91EDA07B383B'
UpgradeCode='743902A4-365C-424E-B226-5B2898A3941E'
- Language='1033' Codepage='1252' Version='2.0.0.16263'>
+ Language='1033' Codepage='1252' Version='2.0.0.16694'>
<Package Id='*' Keywords='Installer' Description="Apache Ignite ODBC 32-bit Driver Installer"
Comments='Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are trademarks of The Apache Software Foundation.'
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
index d152218..1bca0e8 100644
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet.Tests/Properties/AssemblyInfo.cs
@@ -35,8 +35,8 @@ using System.Runtime.InteropServices;
[assembly: Guid("18ea4c71-a11d-4ab1-8042-418f7559d84f")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
[assembly: CLSCompliant(true)]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
index ce5fcbb..0926a46 100644
--- a/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.AspNet/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
[assembly: Guid("13ea96fc-cc83-4164-a7c0-4f30ed797460")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
index 5685f78..7da0a1d 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Benchmarks/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("8fae8395-7e91-411a-a78f-44d6d3fed0fc")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
index cfb16a8..b7d8e09 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.NuGet/Properties/AssemblyInfo.cs
@@ -30,6 +30,6 @@ using System.Runtime.InteropServices;
[assembly: ComVisible(false)]
[assembly: Guid("134707f6-155d-47f6-9eb2-c67abbf3c009")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
index 9c55a10..26caa82 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests.TestDll/Properties/AssemblyInfo.cs
@@ -45,6 +45,6 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
index 8010712..1fc6c59 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("de8dd5cc-7c7f-4a09-80d5-7086d9416a7b")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
index 666c2fc..c0462db 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
[assembly: Guid("97db45a8-f922-456a-a819-7b3c6e5e03ba")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs
index c7fada9..8aeec58 100644
--- a/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.EntityFramework.Tests/Properties/AssemblyInfo.cs
@@ -32,8 +32,8 @@ using System.Runtime.InteropServices;
[assembly: Guid("cda5700e-78f3-4a9e-a9b0-704cbe94651c")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
[assembly: CLSCompliant(true)]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
index 3454f61..5346eba 100644
--- a/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.EntityFramework/Properties/AssemblyInfo.cs
@@ -32,8 +32,8 @@ using System.Runtime.InteropServices;
[assembly: ComVisible(false)]
[assembly: Guid("c558518a-c1a0-4224-aaa9-a8688474b4dc")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
index 29b1620..a1dae5e 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Linq/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("5b571661-17f4-4f29-8c7d-0edb38ca9b55")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
[assembly: CLSCompliant(true)]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
index 9b8eedc..cc37917 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Log4Net/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("6f82d669-382e-4435-8092-68c4440146d8")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
[assembly: CLSCompliant(true)]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
index 943065d..2f0d89f 100644
--- a/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.NLog/Properties/AssemblyInfo.cs
@@ -33,8 +33,8 @@ using System.Runtime.InteropServices;
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("c6b58e4a-a2e9-4554-ad02-68ce6da5cfb7")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
[assembly: CLSCompliant(true)]
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
index d8a8578..97a78d5 100644
--- a/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/Apache.Ignite/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("0f9702ec-da7d-4ce5-b4b7-73310c885355")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
index ed09c6d..a75ee0e 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.Examples/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("41a0cb95-3435-4c78-b867-900b28e2c9ee")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/10b2b97a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
index 1dc3bef..cc78a5c 100644
--- a/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
+++ b/modules/platforms/dotnet/examples/Apache.Ignite.ExamplesDll/Properties/AssemblyInfo.cs
@@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
[assembly: Guid("ce65ec7c-d3cf-41ad-8f45-f90d5af68d77")]
-[assembly: AssemblyVersion("2.0.0.16263")]
-[assembly: AssemblyFileVersion("2.0.0.16263")]
+[assembly: AssemblyVersion("2.0.0.16694")]
+[assembly: AssemblyFileVersion("2.0.0.16694")]
[assembly: AssemblyInformationalVersion("2.0.0")]
\ No newline at end of file
[4/8] ignite git commit: IGNITE-2793 Added support for byte arrays to
ODBC
Posted by vo...@apache.org.
IGNITE-2793 Added support for byte arrays to ODBC
This closes #1371
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/32d2629e
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/32d2629e
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/32d2629e
Branch: refs/heads/ignite-2.0
Commit: 32d2629e1a8f828b0a34e363e793a5add2639f2e
Parents: 300750f
Author: Sergey Kalashnikov <sk...@gridgain.com>
Authored: Tue Dec 27 13:08:34 2016 +0300
Committer: Pavel Tupitsyn <pt...@apache.org>
Committed: Tue Dec 27 13:08:34 2016 +0300
----------------------------------------------------------------------
modules/platforms/cpp/binary/Makefile.am | 2 +-
.../ignite/impl/binary/binary_type_manager.h | 2 +-
.../src/impl/binary/binary_type_manager.cpp | 6 +-
.../binary/src/impl/interop/interop_memory.cpp | 2 +-
modules/platforms/cpp/common/Makefile.am | 2 +-
.../include/ignite/common/dynamic_size_array.h | 2 +-
modules/platforms/cpp/core-test/Makefile.am | 2 +-
.../cpp/core-test/src/cache_query_test.cpp | 8 +-
.../cpp/core-test/src/reference_test.cpp | 14 +-
modules/platforms/cpp/core/Makefile.am | 2 +-
.../cache/query/continuous/continuous_query.h | 8 +-
.../include/ignite/cache/query/query_cursor.h | 4 +-
.../query/continuous/continuous_query_impl.h | 8 +-
.../core/include/ignite/impl/handle_registry.h | 2 +-
.../cpp/core/include/ignite/impl/operations.h | 4 +-
.../cpp/core/src/impl/cache/cache_impl.cpp | 5 +-
.../cpp/core/src/impl/handle_registry.cpp | 2 +-
.../cpp/examples/odbc-example/Makefile.am | 2 +-
.../cpp/examples/putget-example/Makefile.am | 2 +-
.../cpp/examples/query-example/Makefile.am | 2 +-
modules/platforms/cpp/ignite/Makefile.am | 2 +-
modules/platforms/cpp/jni/Makefile.am | 2 +-
modules/platforms/cpp/jni/src/java.cpp | 2 +-
modules/platforms/cpp/odbc-test/Makefile.am | 2 +-
.../cpp/odbc-test/config/queries-default.xml | 1 +
.../odbc-test/include/sql_test_suite_fixture.h | 3 +
.../platforms/cpp/odbc-test/include/test_type.h | 20 +-
.../platforms/cpp/odbc-test/src/column_test.cpp | 189 +++++++++++++++++++
.../odbc-test/src/sql_test_suite_fixture.cpp | 17 ++
.../cpp/odbc-test/src/sql_types_test.cpp | 131 +++++++++++++
modules/platforms/cpp/odbc/Makefile.am | 2 +-
.../cpp/odbc/include/ignite/odbc/utility.h | 9 +-
modules/platforms/cpp/odbc/src/column.cpp | 28 ++-
.../cpp/odbc/src/config/connection_info.cpp | 6 +-
modules/platforms/cpp/odbc/src/connection.cpp | 2 +
modules/platforms/cpp/odbc/src/odbc.cpp | 5 +-
modules/platforms/cpp/odbc/src/utility.cpp | 15 ++
37 files changed, 469 insertions(+), 48 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/binary/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/binary/Makefile.am b/modules/platforms/cpp/binary/Makefile.am
index ca301a6..5ffc4fd 100644
--- a/modules/platforms/cpp/binary/Makefile.am
+++ b/modules/platforms/cpp/binary/Makefile.am
@@ -32,7 +32,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
libignite_binary_la_LIBADD = \
@top_srcdir@/common/libignite-common.la
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/binary/include/ignite/impl/binary/binary_type_manager.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/binary/include/ignite/impl/binary/binary_type_manager.h b/modules/platforms/cpp/binary/include/ignite/impl/binary/binary_type_manager.h
index 8aca1a0..63853f8 100644
--- a/modules/platforms/cpp/binary/include/ignite/impl/binary/binary_type_manager.h
+++ b/modules/platforms/cpp/binary/include/ignite/impl/binary/binary_type_manager.h
@@ -88,7 +88,7 @@ namespace ignite
private:
/** Current snapshots. */
- ignite::common::concurrent::SharedPointer<std::map<int32_t, SPSnap>> snapshots;
+ ignite::common::concurrent::SharedPointer<std::map<int32_t, SPSnap> > snapshots;
/** Pending snapshots. */
std::vector<SPSnap>* pending;
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/binary/src/impl/binary/binary_type_manager.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/binary/src/impl/binary/binary_type_manager.cpp b/modules/platforms/cpp/binary/src/impl/binary/binary_type_manager.cpp
index 9bd115c..8b5dfc1 100644
--- a/modules/platforms/cpp/binary/src/impl/binary/binary_type_manager.cpp
+++ b/modules/platforms/cpp/binary/src/impl/binary/binary_type_manager.cpp
@@ -28,7 +28,7 @@ namespace ignite
namespace binary
{
BinaryTypeManager::BinaryTypeManager() :
- snapshots(SharedPointer<std::map<int32_t, SPSnap>>(new std::map<int32_t, SPSnap>)),
+ snapshots(SharedPointer<std::map<int32_t, SPSnap> >(new std::map<int32_t, SPSnap>)),
pending(new std::vector<SPSnap>()),
cs(new CriticalSection()),
pendingVer(0), ver(0)
@@ -46,7 +46,7 @@ namespace ignite
SharedPointer<BinaryTypeHandler> BinaryTypeManager::GetHandler(int32_t typeId)
{
- SharedPointer<std::map<int32_t, SPSnap>> snapshots0 = snapshots;
+ SharedPointer<std::map<int32_t, SPSnap> > snapshots0 = snapshots;
SPSnap snapshot = (*snapshots0.Get())[typeId];
@@ -156,7 +156,7 @@ namespace ignite
if (!snapshotFound)
(*newSnapshots)[pendingSnap->GetTypeId()] = *it;
- snapshots = SharedPointer<std::map<int32_t, SPSnap>>(newSnapshots);
+ snapshots = SharedPointer<std::map<int32_t, SPSnap> >(newSnapshots);
}
else
{
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/binary/src/impl/interop/interop_memory.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/binary/src/impl/interop/interop_memory.cpp b/modules/platforms/cpp/binary/src/impl/interop/interop_memory.cpp
index 926b7fb..04b27ae 100644
--- a/modules/platforms/cpp/binary/src/impl/interop/interop_memory.cpp
+++ b/modules/platforms/cpp/binary/src/impl/interop/interop_memory.cpp
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
+#include <cstdlib>
#include <ignite/ignite_error.h>
#include "ignite/impl/interop/interop_memory.h"
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/common/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/common/Makefile.am b/modules/platforms/cpp/common/Makefile.am
index 2d16c2d..9c27a57 100644
--- a/modules/platforms/cpp/common/Makefile.am
+++ b/modules/platforms/cpp/common/Makefile.am
@@ -32,7 +32,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
libignite_common_la_LDFLAGS = \
-no-undefined \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/common/include/ignite/common/dynamic_size_array.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/common/include/ignite/common/dynamic_size_array.h b/modules/platforms/cpp/common/include/ignite/common/dynamic_size_array.h
index a6bcc13..d233e44 100644
--- a/modules/platforms/cpp/common/include/ignite/common/dynamic_size_array.h
+++ b/modules/platforms/cpp/common/include/ignite/common/dynamic_size_array.h
@@ -36,7 +36,7 @@ namespace ignite
* This is the analogue of the standard vector. It is needed to be used
* in exported classes as we can't export standard library classes.
*/
- template<typename T, typename A = DefaultAllocator<T>>
+ template<typename T, typename A = DefaultAllocator<T> >
class IGNITE_IMPORT_EXPORT DynamicSizeArray
{
public:
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core-test/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core-test/Makefile.am b/modules/platforms/cpp/core-test/Makefile.am
index 3cf1d0e..a5a60ed 100644
--- a/modules/platforms/cpp/core-test/Makefile.am
+++ b/modules/platforms/cpp/core-test/Makefile.am
@@ -39,7 +39,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
ignite_tests_LDADD = \
@top_srcdir@/core/libignite.la \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core-test/src/cache_query_test.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core-test/src/cache_query_test.cpp b/modules/platforms/cpp/core-test/src/cache_query_test.cpp
index 928d29e..b5bb170 100644
--- a/modules/platforms/cpp/core-test/src/cache_query_test.cpp
+++ b/modules/platforms/cpp/core-test/src/cache_query_test.cpp
@@ -362,7 +362,7 @@ void CheckGetAllFail(QueryCursor<int, QueryPerson>& cur)
{
try
{
- std::vector<CacheEntry<int, QueryPerson>> res;
+ std::vector<CacheEntry<int, QueryPerson> > res;
cur.GetAll(res);
@@ -406,7 +406,7 @@ void CheckEmpty(QueryFieldsCursor& cur)
*/
void CheckEmptyGetAll(QueryCursor<int, QueryPerson>& cur)
{
- std::vector<CacheEntry<int, QueryPerson>> res;
+ std::vector<CacheEntry<int, QueryPerson> > res;
cur.GetAll(res);
@@ -478,7 +478,7 @@ void CheckSingle(QueryFieldsCursor& cur, int key, const std::string& name, int a
*/
void CheckSingleGetAll(QueryCursor<int, QueryPerson>& cur, int key, const std::string& name, int age)
{
- std::vector<CacheEntry<int, QueryPerson>> res;
+ std::vector<CacheEntry<int, QueryPerson> > res;
cur.GetAll(res);
@@ -555,7 +555,7 @@ void CheckMultiple(QueryCursor<int, QueryPerson>& cur, int key1, const std::stri
void CheckMultipleGetAll(QueryCursor<int, QueryPerson>& cur, int key1, const std::string& name1,
int age1, int key2, const std::string& name2, int age2)
{
- std::vector<CacheEntry<int, QueryPerson>> res;
+ std::vector<CacheEntry<int, QueryPerson> > res;
cur.GetAll(res);
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core-test/src/reference_test.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core-test/src/reference_test.cpp b/modules/platforms/cpp/core-test/src/reference_test.cpp
index f5c3e8d..b240e2e 100644
--- a/modules/platforms/cpp/core-test/src/reference_test.cpp
+++ b/modules/platforms/cpp/core-test/src/reference_test.cpp
@@ -148,8 +148,10 @@ void TestFunctionConst3(ConstReference<C3> c3, int expected)
BOOST_AUTO_TEST_SUITE(ReferenceTestSuite)
+
BOOST_AUTO_TEST_CASE(StdSharedPointerTestBefore)
{
+#if !defined(BOOST_NO_CXX11_SMART_PTR)
bool objAlive = false;
std::shared_ptr<LivenessMarker> shared = std::make_shared<LivenessMarker>(objAlive);
@@ -167,10 +169,12 @@ BOOST_AUTO_TEST_CASE(StdSharedPointerTestBefore)
}
BOOST_CHECK(!objAlive);
+#endif
}
BOOST_AUTO_TEST_CASE(StdSharedPointerTestAfter)
{
+#if !defined(BOOST_NO_CXX11_SMART_PTR)
bool objAlive = false;
std::shared_ptr<LivenessMarker> shared = std::make_shared<LivenessMarker>(objAlive);
@@ -188,6 +192,7 @@ BOOST_AUTO_TEST_CASE(StdSharedPointerTestAfter)
shared.reset();
BOOST_CHECK(!objAlive);
+#endif
}
BOOST_AUTO_TEST_CASE(StdAutoPointerTest)
@@ -209,6 +214,7 @@ BOOST_AUTO_TEST_CASE(StdAutoPointerTest)
BOOST_AUTO_TEST_CASE(StdUniquePointerTest)
{
+#if !defined(BOOST_NO_CXX11_SMART_PTR)
bool objAlive = false;
std::unique_ptr<LivenessMarker> unique(new LivenessMarker(objAlive));
@@ -222,13 +228,14 @@ BOOST_AUTO_TEST_CASE(StdUniquePointerTest)
}
BOOST_CHECK(!objAlive);
+#endif
}
BOOST_AUTO_TEST_CASE(BoostSharedPointerTestBefore)
{
bool objAlive = false;
- boost::shared_ptr<LivenessMarker> shared = boost::make_shared<LivenessMarker>(objAlive);
+ boost::shared_ptr<LivenessMarker> shared = boost::make_shared<LivenessMarker>(boost::ref(objAlive));
BOOST_CHECK(objAlive);
@@ -249,7 +256,7 @@ BOOST_AUTO_TEST_CASE(BoostSharedPointerTestAfter)
{
bool objAlive = false;
- boost::shared_ptr<LivenessMarker> shared = boost::make_shared<LivenessMarker>(objAlive);
+ boost::shared_ptr<LivenessMarker> shared = boost::make_shared<LivenessMarker>(boost::ref(objAlive));
BOOST_CHECK(objAlive);
@@ -266,8 +273,10 @@ BOOST_AUTO_TEST_CASE(BoostSharedPointerTestAfter)
BOOST_CHECK(!objAlive);
}
+
BOOST_AUTO_TEST_CASE(PassingToFunction)
{
+#if !defined(BOOST_NO_CXX11_SMART_PTR)
bool objAlive = false;
std::shared_ptr<LivenessMarker> stdShared = std::make_shared<LivenessMarker>(objAlive);
@@ -281,6 +290,7 @@ BOOST_AUTO_TEST_CASE(PassingToFunction)
TestFunction(MakeReferenceFromSmartPointer(stdAuto));
TestFunction(MakeReferenceFromSmartPointer(boostShared));
+#endif
}
BOOST_AUTO_TEST_CASE(CopyTest)
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/Makefile.am b/modules/platforms/cpp/core/Makefile.am
index 758e68d..56e0c0a 100644
--- a/modules/platforms/cpp/core/Makefile.am
+++ b/modules/platforms/cpp/core/Makefile.am
@@ -37,7 +37,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
libignite_la_LIBADD = \
@top_srcdir@/jni/libignite-jni.la \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core/include/ignite/cache/query/continuous/continuous_query.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/include/ignite/cache/query/continuous/continuous_query.h b/modules/platforms/cpp/core/include/ignite/cache/query/continuous/continuous_query.h
index 4bd9c46..781ce2e 100644
--- a/modules/platforms/cpp/core/include/ignite/cache/query/continuous/continuous_query.h
+++ b/modules/platforms/cpp/core/include/ignite/cache/query/continuous/continuous_query.h
@@ -82,7 +82,7 @@ namespace ignite
* @param lsnr Event listener. Invoked on the node where
* continuous query execution has been started.
*/
- ContinuousQuery(Reference<event::CacheEntryEventListener<K, V>> lsnr) :
+ ContinuousQuery(Reference<event::CacheEntryEventListener<K, V> > lsnr) :
impl(new impl::cache::query::continuous::ContinuousQueryImpl<K, V>(lsnr))
{
// No-op.
@@ -95,7 +95,7 @@ namespace ignite
* continuous query execution has been started.
* @param loc Whether query should be executed locally.
*/
- ContinuousQuery(Reference<event::CacheEntryEventListener<K, V>> lsnr, bool loc) :
+ ContinuousQuery(Reference<event::CacheEntryEventListener<K, V> > lsnr, bool loc) :
impl(new impl::cache::query::continuous::ContinuousQueryImpl<K, V>(lsnr, loc))
{
// No-op.
@@ -202,7 +202,7 @@ namespace ignite
* node where continuous query execution has been
* started.
*/
- void SetListener(Reference<event::CacheEntryEventListener<K, V>> lsnr)
+ void SetListener(Reference<event::CacheEntryEventListener<K, V> > lsnr)
{
impl.Get()->SetListener(lsnr);
}
@@ -229,7 +229,7 @@ namespace ignite
private:
/** Implementation. */
- common::concurrent::SharedPointer<impl::cache::query::continuous::ContinuousQueryImpl<K, V>> impl;
+ common::concurrent::SharedPointer<impl::cache::query::continuous::ContinuousQueryImpl<K, V> > impl;
};
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core/include/ignite/cache/query/query_cursor.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/include/ignite/cache/query/query_cursor.h b/modules/platforms/cpp/core/include/ignite/cache/query/query_cursor.h
index 61c6813..9057a03 100644
--- a/modules/platforms/cpp/core/include/ignite/cache/query/query_cursor.h
+++ b/modules/platforms/cpp/core/include/ignite/cache/query/query_cursor.h
@@ -190,7 +190,7 @@ namespace ignite
*
* @throw IgniteError class instance in case of failure.
*/
- void GetAll(std::vector<CacheEntry<K, V>>& res)
+ void GetAll(std::vector<CacheEntry<K, V> >& res)
{
IgniteError err;
@@ -208,7 +208,7 @@ namespace ignite
* @param Vector where query entries will be stored.
* @param err Used to set operation result.
*/
- void GetAll(std::vector<CacheEntry<K, V>>& res, IgniteError& err)
+ void GetAll(std::vector<CacheEntry<K, V> >& res, IgniteError& err)
{
impl::cache::query::QueryCursorImpl* impl0 = impl.Get();
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core/include/ignite/impl/cache/query/continuous/continuous_query_impl.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/include/ignite/impl/cache/query/continuous/continuous_query_impl.h b/modules/platforms/cpp/core/include/ignite/impl/cache/query/continuous/continuous_query_impl.h
index 50ced12..2a24e5f 100644
--- a/modules/platforms/cpp/core/include/ignite/impl/cache/query/continuous/continuous_query_impl.h
+++ b/modules/platforms/cpp/core/include/ignite/impl/cache/query/continuous/continuous_query_impl.h
@@ -255,7 +255,7 @@ namespace ignite
* @param lsnr Event listener. Invoked on the node where
* continuous query execution has been started.
*/
- ContinuousQueryImpl(Reference<ignite::cache::event::CacheEntryEventListener<K, V>>& lsnr) :
+ ContinuousQueryImpl(Reference<ignite::cache::event::CacheEntryEventListener<K, V> >& lsnr) :
ContinuousQueryImplBase(false),
lsnr(lsnr)
{
@@ -269,7 +269,7 @@ namespace ignite
* continuous query execution has been started.
* @param loc Whether query should be executed locally.
*/
- ContinuousQueryImpl(Reference<ignite::cache::event::CacheEntryEventListener<K, V>>& lsnr, bool loc) :
+ ContinuousQueryImpl(Reference<ignite::cache::event::CacheEntryEventListener<K, V> >& lsnr, bool loc) :
ContinuousQueryImplBase(loc),
lsnr(lsnr)
{
@@ -283,7 +283,7 @@ namespace ignite
* node where continuous query execution has been
* started.
*/
- void SetListener(Reference<ignite::cache::event::CacheEntryEventListener<K, V>>& val)
+ void SetListener(Reference<ignite::cache::event::CacheEntryEventListener<K, V> >& val)
{
lsnr = val;
}
@@ -340,7 +340,7 @@ namespace ignite
private:
/** Cache entry event listener. */
- Reference<ignite::cache::event::CacheEntryEventListener<K, V>> lsnr;
+ Reference<ignite::cache::event::CacheEntryEventListener<K, V> > lsnr;
};
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core/include/ignite/impl/handle_registry.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/include/ignite/impl/handle_registry.h b/modules/platforms/cpp/core/include/ignite/impl/handle_registry.h
index 3c4d123..ecaf3ee 100644
--- a/modules/platforms/cpp/core/include/ignite/impl/handle_registry.h
+++ b/modules/platforms/cpp/core/include/ignite/impl/handle_registry.h
@@ -72,7 +72,7 @@ namespace ignite
void Clear();
private:
/** Map with data. */
- std::map<int64_t, common::concurrent::SharedPointer<void>> map;
+ std::map<int64_t, common::concurrent::SharedPointer<void> > map;
/** Mutex. */
common::concurrent::CriticalSection mux;
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core/include/ignite/impl/operations.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/include/ignite/impl/operations.h b/modules/platforms/cpp/core/include/ignite/impl/operations.h
index a8fef93..177529d 100644
--- a/modules/platforms/cpp/core/include/ignite/impl/operations.h
+++ b/modules/platforms/cpp/core/include/ignite/impl/operations.h
@@ -531,7 +531,7 @@ namespace ignite
/**
* Constructor.
*/
- OutQueryGetAllOperation(std::vector<ignite::cache::CacheEntry<K, V>>* res) : res(res)
+ OutQueryGetAllOperation(std::vector<ignite::cache::CacheEntry<K, V> >* res) : res(res)
{
// No-op.
}
@@ -556,7 +556,7 @@ namespace ignite
private:
/** Entries. */
- std::vector<ignite::cache::CacheEntry<K, V>>* res;
+ std::vector<ignite::cache::CacheEntry<K, V> >* res;
IGNITE_NO_COPY_ASSIGNMENT(OutQueryGetAllOperation)
};
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core/src/impl/cache/cache_impl.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/src/impl/cache/cache_impl.cpp b/modules/platforms/cpp/core/src/impl/cache/cache_impl.cpp
index ad69d45..5d09e46 100644
--- a/modules/platforms/cpp/core/src/impl/cache/cache_impl.cpp
+++ b/modules/platforms/cpp/core/src/impl/cache/cache_impl.cpp
@@ -325,11 +325,12 @@ namespace ignite
return QueryContinuous(qry, initialQry, OP_QRY_SCAN, OP_QRY_CONTINUOUS, err);
}
+ struct DummyQry { void Write(BinaryRawWriter&) const { }};
+
ContinuousQueryHandleImpl* CacheImpl::QueryContinuous(const SharedPointer<ContinuousQueryImplBase> qry,
IgniteError& err)
{
- struct { void Write(BinaryRawWriter&) const { }} dummy;
-
+ DummyQry dummy;
return QueryContinuous(qry, dummy, -1, OP_QRY_CONTINUOUS, err);
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/core/src/impl/handle_registry.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/core/src/impl/handle_registry.cpp b/modules/platforms/cpp/core/src/impl/handle_registry.cpp
index 069e996..a279762 100644
--- a/modules/platforms/cpp/core/src/impl/handle_registry.cpp
+++ b/modules/platforms/cpp/core/src/impl/handle_registry.cpp
@@ -37,7 +37,7 @@ namespace ignite
SharedPointer<void> HandleRegistrySegment::Get(int64_t hnd)
{
- typedef std::map<int64_t, SharedPointer<void>> Map;
+ typedef std::map<int64_t, SharedPointer<void> > Map;
CsLockGuard guard(mux);
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/examples/odbc-example/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/examples/odbc-example/Makefile.am b/modules/platforms/cpp/examples/odbc-example/Makefile.am
index 83cc63e..f3c9a50 100644
--- a/modules/platforms/cpp/examples/odbc-example/Makefile.am
+++ b/modules/platforms/cpp/examples/odbc-example/Makefile.am
@@ -36,7 +36,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
ignite_odbcexample_LDADD = \
@top_srcdir@/../core/libignite.la \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/examples/putget-example/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/examples/putget-example/Makefile.am b/modules/platforms/cpp/examples/putget-example/Makefile.am
index cf39002..88edc81 100644
--- a/modules/platforms/cpp/examples/putget-example/Makefile.am
+++ b/modules/platforms/cpp/examples/putget-example/Makefile.am
@@ -36,7 +36,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
ignite_putgetexample_LDADD = \
@top_srcdir@/../core/libignite.la \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/examples/query-example/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/examples/query-example/Makefile.am b/modules/platforms/cpp/examples/query-example/Makefile.am
index 01231ec..1d00bcf 100644
--- a/modules/platforms/cpp/examples/query-example/Makefile.am
+++ b/modules/platforms/cpp/examples/query-example/Makefile.am
@@ -36,7 +36,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
ignite_queryexample_LDADD = \
@top_srcdir@/../core/libignite.la \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/ignite/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/ignite/Makefile.am b/modules/platforms/cpp/ignite/Makefile.am
index 2dbc4d6..9b65f05 100644
--- a/modules/platforms/cpp/ignite/Makefile.am
+++ b/modules/platforms/cpp/ignite/Makefile.am
@@ -36,7 +36,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
ignite_LDADD = \
@top_srcdir@/core/libignite.la \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/jni/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/jni/Makefile.am b/modules/platforms/cpp/jni/Makefile.am
index 2cb4b90..56eaa6c 100644
--- a/modules/platforms/cpp/jni/Makefile.am
+++ b/modules/platforms/cpp/jni/Makefile.am
@@ -35,7 +35,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
libignite_jni_la_LIBADD = \
-L$(JAVA_HOME)/jre/lib/amd64/server \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/jni/src/java.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/jni/src/java.cpp b/modules/platforms/cpp/jni/src/java.cpp
index e6f2f88..2c8c76a 100644
--- a/modules/platforms/cpp/jni/src/java.cpp
+++ b/modules/platforms/cpp/jni/src/java.cpp
@@ -1552,7 +1552,7 @@ namespace ignite
if (consoleWriteHandlers.size() > 0) {
ConsoleWriteHandler consoleWrite = consoleWriteHandlers.at(0);
- const char* strChars = env->GetStringUTFChars(str, nullptr);
+ const char* strChars = env->GetStringUTFChars(str, 0);
const int strCharsLen = env->GetStringUTFLength(str);
consoleWrite(strChars, strCharsLen, isErr);
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc-test/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc-test/Makefile.am b/modules/platforms/cpp/odbc-test/Makefile.am
index e10ef7a..c2f3fa2 100644
--- a/modules/platforms/cpp/odbc-test/Makefile.am
+++ b/modules/platforms/cpp/odbc-test/Makefile.am
@@ -40,7 +40,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
ignite_odbc_tests_LDADD = \
@top_srcdir@/core/libignite.la \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc-test/config/queries-default.xml
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc-test/config/queries-default.xml b/modules/platforms/cpp/odbc-test/config/queries-default.xml
index 6614e93..6dbc4f7 100644
--- a/modules/platforms/cpp/odbc-test/config/queries-default.xml
+++ b/modules/platforms/cpp/odbc-test/config/queries-default.xml
@@ -59,6 +59,7 @@
<entry key="guidField" value="java.util.UUID"/>
<entry key="dateField" value="java.util.Date"/>
<entry key="timestampField" value="java.sql.Timestamp"/>
+ <entry key="i8ArrayField" value="[B"/>
</map>
</property>
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc-test/include/sql_test_suite_fixture.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc-test/include/sql_test_suite_fixture.h b/modules/platforms/cpp/odbc-test/include/sql_test_suite_fixture.h
index 6d26818..55353e5 100644
--- a/modules/platforms/cpp/odbc-test/include/sql_test_suite_fixture.h
+++ b/modules/platforms/cpp/odbc-test/include/sql_test_suite_fixture.h
@@ -192,6 +192,9 @@ namespace ignite
template<>
void SqlTestSuiteFixture::CheckSingleResult<Timestamp>(const char* request);
+
+ template<>
+ void SqlTestSuiteFixture::CheckSingleResult<std::vector<int8_t> >(const char* request, const std::vector<int8_t>& expected);
}
#endif //_IGNITE_ODBC_TEST_SQL_TEST_SUIT_FIXTURE
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc-test/include/test_type.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc-test/include/test_type.h b/modules/platforms/cpp/odbc-test/include/test_type.h
index 0e08251..daeff83 100644
--- a/modules/platforms/cpp/odbc-test/include/test_type.h
+++ b/modules/platforms/cpp/odbc-test/include/test_type.h
@@ -74,6 +74,7 @@ namespace ignite
Guid guidField;
Date dateField;
Timestamp timestampField;
+ std::vector<int8_t> i8ArrayField;
};
}
@@ -107,6 +108,14 @@ namespace ignite
writer.WriteGuid("guidField", obj.guidField);
writer.WriteDate("dateField", obj.dateField);
writer.WriteTimestamp("timestampField", obj.timestampField);
+ if (obj.i8ArrayField.empty())
+ {
+ writer.WriteNull("i8ArrayField");
+ }
+ else
+ {
+ writer.WriteInt8Array("i8ArrayField", &obj.i8ArrayField[0], static_cast<int32_t>(obj.i8ArrayField.size()));
+ }
}
else
{
@@ -121,6 +130,7 @@ namespace ignite
writer.WriteNull("guidField");
writer.WriteNull("dateField");
writer.WriteNull("timestampField");
+ writer.WriteNull("i8ArrayField");
}
}
@@ -138,9 +148,17 @@ namespace ignite
Date dateField = reader.ReadDate("dateField");
Timestamp timestampField = reader.ReadTimestamp("timestampField");
- return TestType(i8Field, i16Field, i32Field, i64Field, strField,
+ TestType result(i8Field, i16Field, i32Field, i64Field, strField,
floatField, doubleField, boolField, guidField, dateField,
timestampField);
+
+ int32_t len = reader.ReadInt8Array("i8ArrayField", 0, 0);
+ if (len > 0)
+ {
+ result.i8ArrayField.resize(len);
+ reader.ReadInt8Array("i8ArrayField", &result.i8ArrayField[0], len);
+ }
+ return result;
}
IGNITE_BINARY_TYPE_END
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc-test/src/column_test.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc-test/src/column_test.cpp b/modules/platforms/cpp/odbc-test/src/column_test.cpp
index 6cbea8b..66d0214 100644
--- a/modules/platforms/cpp/odbc-test/src/column_test.cpp
+++ b/modules/platforms/cpp/odbc-test/src/column_test.cpp
@@ -287,4 +287,193 @@ BOOST_AUTO_TEST_CASE(TestColumnMultiString)
BOOST_REQUIRE(column2.GetUnreadDataLength() == 0);
}
+BOOST_AUTO_TEST_CASE(TestColumnByteArray)
+{
+ ignite::impl::interop::InteropUnpooledMemory mem(4096);
+ ignite::impl::interop::InteropOutputStream outStream(&mem);
+ ignite::impl::binary::BinaryWriterImpl writer(&outStream, 0);
+
+ const int8_t bytes[] = { 'A','B','C','D','E','F','G','H','I','J' };
+ std::vector<int8_t> data(bytes, bytes + sizeof(bytes) / sizeof(bytes[0]));
+ writer.WriteInt8Array(&data[0], static_cast<int32_t>(data.size()));
+
+ outStream.Synchronize();
+
+ ignite::impl::interop::InteropInputStream inStream(&mem);
+ ignite::impl::binary::BinaryReaderImpl reader(&inStream);
+
+ Column column(reader);
+
+ BOOST_REQUIRE(column.IsValid());
+
+ BOOST_REQUIRE(column.GetSize() == data.size());
+
+ BOOST_REQUIRE(column.GetUnreadDataLength() == data.size());
+
+ std::vector<int8_t> buf(data.size());
+ SqlLen reslen = 0;
+ int* offset = 0;
+
+ ApplicationDataBuffer appBuf(type_traits::IGNITE_ODBC_C_TYPE_BINARY, &buf[0], buf.size(), &reslen, &offset);
+
+ BOOST_REQUIRE(column.ReadToBuffer(reader, appBuf) == SQL_RESULT_SUCCESS);
+
+ BOOST_REQUIRE(column.IsValid());
+
+ BOOST_REQUIRE(column.GetSize() == data.size());
+
+ BOOST_REQUIRE(column.GetUnreadDataLength() == 0);
+
+ BOOST_REQUIRE_EQUAL_COLLECTIONS(buf.begin(), buf.end(), data.begin(), data.end());
+
+ BOOST_REQUIRE(column.ReadToBuffer(reader, appBuf) == SQL_RESULT_NO_DATA);
+
+ BOOST_REQUIRE(column.IsValid());
+
+ BOOST_REQUIRE(column.GetSize() == data.size());
+
+ BOOST_REQUIRE(column.GetUnreadDataLength() == 0);
+}
+
+BOOST_AUTO_TEST_CASE(TestColumnByteArrayHalfBuffer)
+{
+ ignite::impl::interop::InteropUnpooledMemory mem(4096);
+ ignite::impl::interop::InteropOutputStream outStream(&mem);
+ ignite::impl::binary::BinaryWriterImpl writer(&outStream, 0);
+
+ const int8_t bytes[] = { 'A','B','C','D','E','F','G','H','I','J' };
+ std::vector<int8_t> data(bytes, bytes + sizeof(bytes)/sizeof(bytes[0]));
+ BOOST_REQUIRE(0 == data.size() % 2);
+
+ writer.WriteInt8Array(&data[0], static_cast<int32_t>(data.size()));
+
+ outStream.Synchronize();
+
+ ignite::impl::interop::InteropInputStream inStream(&mem);
+ ignite::impl::binary::BinaryReaderImpl reader(&inStream);
+
+ Column column(reader);
+
+ BOOST_REQUIRE(column.IsValid());
+
+ BOOST_REQUIRE(column.GetSize() == data.size());
+
+ BOOST_REQUIRE(column.GetUnreadDataLength() == data.size());
+
+ std::vector<int8_t> buf(data.size()/2);
+ SqlLen reslen = 0;
+ int* offset = 0;
+
+ ApplicationDataBuffer appBuf(type_traits::IGNITE_ODBC_C_TYPE_BINARY, &buf[0], buf.size(), &reslen, &offset);
+
+ BOOST_REQUIRE(column.ReadToBuffer(reader, appBuf) == SQL_RESULT_SUCCESS);
+
+ BOOST_REQUIRE(column.IsValid());
+
+ BOOST_REQUIRE(column.GetSize() == data.size());
+
+ BOOST_REQUIRE(column.GetUnreadDataLength() == data.size() - buf.size());
+
+ std::vector<int8_t> result;
+ result.reserve(data.size());
+ std::copy(buf.begin(), buf.end(), std::back_inserter(result));
+
+ BOOST_REQUIRE(column.ReadToBuffer(reader, appBuf) == SQL_RESULT_SUCCESS);
+
+ BOOST_REQUIRE(column.IsValid());
+
+ BOOST_REQUIRE(column.GetSize() == data.size());
+
+ BOOST_REQUIRE(column.GetUnreadDataLength() == 0);
+
+ std::copy(buf.begin(), buf.end(), std::back_inserter(result));
+
+ BOOST_REQUIRE(column.ReadToBuffer(reader, appBuf) == SQL_RESULT_NO_DATA);
+
+ BOOST_REQUIRE(column.IsValid());
+
+ BOOST_REQUIRE(column.GetSize() == data.size());
+
+ BOOST_REQUIRE(column.GetUnreadDataLength() == 0);
+
+ BOOST_REQUIRE_EQUAL_COLLECTIONS(result.begin(), result.end(), data.begin(), data.end());
+}
+
+BOOST_AUTO_TEST_CASE(TestColumnByteArrayTwoColumns)
+{
+ ignite::impl::interop::InteropUnpooledMemory mem(4096);
+ ignite::impl::interop::InteropOutputStream outStream(&mem);
+ ignite::impl::binary::BinaryWriterImpl writer(&outStream, 0);
+
+ const int8_t bytes1[] = { 'A','B','C','D','E','F','G','H','I','J' };
+ const int8_t bytes2[] = { 'a','b','c','d','e','f','g','h','i','j' };
+ std::vector<int8_t> data1(bytes1, bytes1 + sizeof(bytes1)/sizeof(bytes1[0]));
+ std::vector<int8_t> data2(bytes2, bytes2 + sizeof(bytes2)/sizeof(bytes2[0]));
+ writer.WriteInt8Array(&data1[0], static_cast<int32_t>(data1.size()));
+ writer.WriteInt8Array(&data2[0], static_cast<int32_t>(data2.size()));
+
+ outStream.Synchronize();
+
+ ignite::impl::interop::InteropInputStream inStream(&mem);
+ ignite::impl::binary::BinaryReaderImpl reader(&inStream);
+
+ Column column1(reader);
+ inStream.Position(column1.GetEndPosition());
+ Column column2(reader);
+
+ BOOST_REQUIRE(column1.IsValid());
+
+ BOOST_REQUIRE(column1.GetSize() == data1.size());
+
+ BOOST_REQUIRE(column1.GetUnreadDataLength() == data1.size());
+
+ BOOST_REQUIRE(column2.IsValid());
+
+ BOOST_REQUIRE(column2.GetSize() == data2.size());
+
+ BOOST_REQUIRE(column2.GetUnreadDataLength() == data2.size());
+
+ int8_t buf[1024] = {};
+ SqlLen reslen = 0;
+ int* offset = 0;
+
+ ApplicationDataBuffer appBuf(type_traits::IGNITE_ODBC_C_TYPE_BINARY, &buf, sizeof(buf), &reslen, &offset);
+
+ BOOST_REQUIRE(column1.ReadToBuffer(reader, appBuf) == SQL_RESULT_SUCCESS);
+
+ BOOST_REQUIRE(column1.IsValid());
+
+ BOOST_REQUIRE(column1.GetSize() == data1.size());
+
+ BOOST_REQUIRE(column1.GetUnreadDataLength() == 0);
+
+ BOOST_REQUIRE_EQUAL_COLLECTIONS(buf, buf + reslen, data1.begin(), data1.end());
+
+ BOOST_REQUIRE(column1.ReadToBuffer(reader, appBuf) == SQL_RESULT_NO_DATA);
+
+ BOOST_REQUIRE(column1.IsValid());
+
+ BOOST_REQUIRE(column1.GetSize() == data1.size());
+
+ BOOST_REQUIRE(column1.GetUnreadDataLength() == 0);
+
+ BOOST_REQUIRE(column2.ReadToBuffer(reader, appBuf) == SQL_RESULT_SUCCESS);
+
+ BOOST_REQUIRE(column2.IsValid());
+
+ BOOST_REQUIRE(column2.GetSize() == data1.size());
+
+ BOOST_REQUIRE(column2.GetUnreadDataLength() == 0);
+
+ BOOST_REQUIRE_EQUAL_COLLECTIONS(buf, buf + reslen, data2.begin(), data2.end());
+
+ BOOST_REQUIRE(column2.ReadToBuffer(reader, appBuf) == SQL_RESULT_NO_DATA);
+
+ BOOST_REQUIRE(column2.IsValid());
+
+ BOOST_REQUIRE(column2.GetSize() == data1.size());
+
+ BOOST_REQUIRE(column2.GetUnreadDataLength() == 0);
+}
+
BOOST_AUTO_TEST_SUITE_END()
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc-test/src/sql_test_suite_fixture.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc-test/src/sql_test_suite_fixture.cpp b/modules/platforms/cpp/odbc-test/src/sql_test_suite_fixture.cpp
index 29d1d18..b118ff8 100644
--- a/modules/platforms/cpp/odbc-test/src/sql_test_suite_fixture.cpp
+++ b/modules/platforms/cpp/odbc-test/src/sql_test_suite_fixture.cpp
@@ -285,4 +285,21 @@ namespace ignite
CheckSingleResult0(request, SQL_C_TIMESTAMP, &res, 0, 0);
}
+
+ template<>
+ void SqlTestSuiteFixture::CheckSingleResult<std::vector<int8_t> >(const char* request, const std::vector<int8_t>& expected)
+ {
+ SQLCHAR res[ODBC_BUFFER_SIZE] = { 0 };
+ SQLLEN resLen = 0;
+
+ CheckSingleResult0(request, SQL_C_BINARY, res, ODBC_BUFFER_SIZE, &resLen);
+
+ BOOST_REQUIRE_EQUAL(resLen, expected.size());
+
+ if (resLen > 0)
+ {
+ std::vector<int8_t> actual(res, res + resLen);
+ BOOST_REQUIRE_EQUAL_COLLECTIONS(expected.begin(), expected.end(), actual.begin(), actual.end());
+ }
+ }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc-test/src/sql_types_test.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc-test/src/sql_types_test.cpp b/modules/platforms/cpp/odbc-test/src/sql_types_test.cpp
index ccbb917..33797b0 100644
--- a/modules/platforms/cpp/odbc-test/src/sql_types_test.cpp
+++ b/modules/platforms/cpp/odbc-test/src/sql_types_test.cpp
@@ -22,6 +22,7 @@
#include <boost/test/unit_test.hpp>
#include "sql_test_suite_fixture.h"
+#include "test_utils.h"
using namespace ignite;
@@ -56,5 +57,135 @@ BOOST_AUTO_TEST_CASE(TestGuidEqualsToColumn)
"SELECT i32Field FROM TestType WHERE guidField = {guid '04cc382a-0b82-f520-08d0-07a0620c0004'}", in2.i32Field);
}
+BOOST_AUTO_TEST_CASE(TestByteArraySelect)
+{
+ TestType in;
+ const int8_t data[] = { 'A','B','C','D','E','F','G','H','I','J' };
+ in.i8ArrayField.assign(data, data + sizeof(data)/sizeof(data[0]));
+ testCache.Put(1, in);
+
+ TestType out = testCache.Get(1);
+
+ BOOST_REQUIRE(in.i8ArrayField.size() == out.i8ArrayField.size());
+
+ BOOST_REQUIRE_EQUAL_COLLECTIONS(in.i8ArrayField.begin(), in.i8ArrayField.end(), out.i8ArrayField.begin(), out.i8ArrayField.end());
+
+ CheckSingleResult<std::vector<int8_t> >("SELECT i8ArrayField FROM TestType", in.i8ArrayField);
+}
+
+BOOST_AUTO_TEST_CASE(TestByteArrayParam)
+{
+ SQLRETURN ret;
+
+ TestType in;
+ in.i8Field = 101;
+
+ const int8_t data[] = { 'A','B','C','D','E','F','G','H','I','J' };
+ in.i8ArrayField.assign(data, data + sizeof(data) / sizeof(data[0]));
+
+ testCache.Put(1, in);
+
+ SQLLEN colLen = 0;
+ SQLCHAR colData = 0;
+
+ ret = SQLBindCol(stmt, 1, SQL_C_TINYINT, &colData, sizeof(colData), &colLen);
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ SQLCHAR request[] = "SELECT i8Field FROM TestType WHERE i8ArrayField = ?";
+
+ ret = SQLPrepare(stmt, request, SQL_NTS);
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ std::vector<int8_t> paramData(in.i8ArrayField);
+ SQLLEN paramLen = paramData.size();
+ ret = SQLBindParameter(stmt, 1, SQL_PARAM_INPUT, SQL_C_BINARY, SQL_VARBINARY, paramData.size(), 0, ¶mData[0], paramData.size(), ¶mLen);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ ret = SQLExecute(stmt);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ ret = SQLFetch(stmt);
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ BOOST_REQUIRE_EQUAL(colData, in.i8Field);
+ BOOST_REQUIRE_EQUAL(colLen, sizeof(colData));
+
+ ret = SQLFetch(stmt);
+ BOOST_REQUIRE(ret == SQL_NO_DATA);
+}
+
+BOOST_AUTO_TEST_CASE(TestByteArrayParamInsert)
+{
+ SQLRETURN ret;
+
+ const int8_t data[] = { 'A','B','C','D','E','F','G','H','I','J' };
+ std::vector<int8_t> paramData(data, data + sizeof(data) / sizeof(data[0]));
+ SQLCHAR request[] = "INSERT INTO TestType(_key, i8ArrayField) VALUES(?, ?)";;
+
+ ret = SQLPrepare(stmt, request, SQL_NTS);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ int64_t key = 1;
+ ret = SQLBindParameter(stmt, 1, SQL_PARAM_INPUT, SQL_C_SLONG, SQL_BIGINT, 0, 0, &key, 0, 0);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ SQLLEN paramLen = paramData.size();
+
+ ret = SQLBindParameter(stmt, 2, SQL_PARAM_INPUT, SQL_C_BINARY, SQL_VARBINARY, paramData.size(), 0, ¶mData[0], paramData.size(), ¶mLen);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ ret = SQLExecute(stmt);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ TestType out = testCache.Get(key);
+ BOOST_REQUIRE_EQUAL_COLLECTIONS(out.i8ArrayField.begin(), out.i8ArrayField.end(), paramData.begin(), paramData.end());
+}
+
+BOOST_AUTO_TEST_CASE(TestByteParamInsert)
+{
+ SQLRETURN ret;
+
+ SQLCHAR request[] = "INSERT INTO TestType(_key, i8Field) VALUES(?, ?)";;
+
+ ret = SQLPrepare(stmt, request, SQL_NTS);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ int64_t key = 1;
+ ret = SQLBindParameter(stmt, 1, SQL_PARAM_INPUT, SQL_C_SLONG, SQL_BIGINT, 0, 0, &key, 0, 0);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ int8_t data = 2;
+ ret = SQLBindParameter(stmt, 2, SQL_PARAM_INPUT, SQL_C_TINYINT, SQL_TINYINT, 0, 0, &data, 0, 0);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ ret = SQLExecute(stmt);
+
+ if (!SQL_SUCCEEDED(ret))
+ BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt));
+
+ TestType out = testCache.Get(key);
+ BOOST_REQUIRE_EQUAL(out.i8Field, data);
+}
BOOST_AUTO_TEST_SUITE_END()
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc/Makefile.am
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/Makefile.am b/modules/platforms/cpp/odbc/Makefile.am
index b0cc5f8..1eb42d1 100644
--- a/modules/platforms/cpp/odbc/Makefile.am
+++ b/modules/platforms/cpp/odbc/Makefile.am
@@ -33,7 +33,7 @@ AM_CPPFLAGS = \
AM_CXXFLAGS = \
-Wall \
- -std=c++0x
+ -std=c++03
libignite_odbc_la_LIBADD = \
@top_srcdir@/binary/libignite-binary.la \
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc/include/ignite/odbc/utility.h
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/include/ignite/odbc/utility.h b/modules/platforms/cpp/odbc/include/ignite/odbc/utility.h
index 37daa50..590e97c 100644
--- a/modules/platforms/cpp/odbc/include/ignite/odbc/utility.h
+++ b/modules/platforms/cpp/odbc/include/ignite/odbc/utility.h
@@ -46,7 +46,6 @@ void logInit(const char*);
fprintf(log_file, "%s: " fmt, __FUNCTION__, ##__VA_ARGS__); \
fflush(log_file); \
} while (false)
-
#else
# define LOG_MSG(...)
#endif
@@ -181,6 +180,14 @@ namespace ignite
* @return Standard string containing the same data.
*/
std::string SqlStringToString(const unsigned char* sqlStr, int32_t sqlStrLen);
+
+ /**
+ * Convert binary data to hex dump form
+ * @param data pointer to data
+ * @param count data length
+ * @return standard string containing the formated hex dump
+ */
+ std::string HexDump(const char* data, size_t count);
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc/src/column.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/src/column.cpp b/modules/platforms/cpp/odbc/src/column.cpp
index 3e6bbca..0ec8078 100644
--- a/modules/platforms/cpp/odbc/src/column.cpp
+++ b/modules/platforms/cpp/odbc/src/column.cpp
@@ -40,7 +40,7 @@ namespace
break;
}
-
+
case IGNITE_TYPE_OBJECT:
{
int8_t protoVer = stream.ReadInt8();
@@ -88,6 +88,7 @@ namespace
case IGNITE_TYPE_DOUBLE:
case IGNITE_TYPE_BOOL:
case IGNITE_HDR_NULL:
+ case IGNITE_TYPE_ARRAY_BYTE:
{
// No-op.
break;
@@ -290,6 +291,17 @@ namespace ignite
break;
}
+ case IGNITE_TYPE_ARRAY_BYTE:
+ {
+ sizeTmp = reader.ReadInt32();
+ assert(sizeTmp >= 0);
+
+ startPosTmp = stream->Position();
+ stream->Position(stream->Position() + sizeTmp);
+
+ break;
+ }
+
default:
{
// This is a fail case.
@@ -473,6 +485,20 @@ namespace ignite
break;
}
+ case IGNITE_TYPE_ARRAY_BYTE:
+ {
+ stream->Position(startPos + offset);
+ int32_t maxRead = std::min(GetUnreadDataLength(), static_cast<int32_t>(dataBuf.GetSize()));
+ std::vector<int8_t> data(maxRead);
+
+ stream->ReadInt8Array(&data[0], static_cast<int32_t>(data.size()));
+
+ int32_t written = dataBuf.PutBinaryData(data.data(), data.size());
+
+ IncreaseOffset(written);
+ break;
+ }
+
default:
{
// This is a fail case. Return false.
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc/src/config/connection_info.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/src/config/connection_info.cpp b/modules/platforms/cpp/odbc/src/config/connection_info.cpp
index 341ab7f..7c612bc 100644
--- a/modules/platforms/cpp/odbc/src/config/connection_info.cpp
+++ b/modules/platforms/cpp/odbc/src/config/connection_info.cpp
@@ -412,7 +412,7 @@ namespace ignite
StringInfoMap::const_iterator itStr = strParams.find(type);
- if (itStr != strParams.cend())
+ if (itStr != strParams.end())
{
unsigned short strlen = static_cast<short>(
utility::CopyStringToBuffer(itStr->second,
@@ -426,7 +426,7 @@ namespace ignite
UintInfoMap::const_iterator itInt = intParams.find(type);
- if (itInt != intParams.cend())
+ if (itInt != intParams.end())
{
unsigned int *res = reinterpret_cast<unsigned int*>(buf);
@@ -437,7 +437,7 @@ namespace ignite
UshortInfoMap::const_iterator itShort = shortParams.find(type);
- if (itShort != shortParams.cend())
+ if (itShort != shortParams.end())
{
unsigned short *res = reinterpret_cast<unsigned short*>(buf);
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc/src/connection.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/src/connection.cpp b/modules/platforms/cpp/odbc/src/connection.cpp
index 38f8cba..2afa42d 100644
--- a/modules/platforms/cpp/odbc/src/connection.cpp
+++ b/modules/platforms/cpp/odbc/src/connection.cpp
@@ -194,6 +194,8 @@ namespace ignite
if (sent != len + sizeof(OdbcProtocolHeader))
IGNITE_ERROR_1(IgniteError::IGNITE_ERR_GENERIC, "Can not send message");
+
+ LOG_MSG("message sent: (%d bytes)%s\n", msg.GetSize(), utility::HexDump((char*)msg.GetData(), msg.GetSize()).c_str());
}
size_t Connection::SendAll(const int8_t* data, size_t len)
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc/src/odbc.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/src/odbc.cpp b/modules/platforms/cpp/odbc/src/odbc.cpp
index 0b18a11..dbec55f 100644
--- a/modules/platforms/cpp/odbc/src/odbc.cpp
+++ b/modules/platforms/cpp/odbc/src/odbc.cpp
@@ -512,9 +512,10 @@ namespace ignite
int32_t res = statement->GetColumnNumber();
if (columnNum)
+ {
*columnNum = static_cast<SQLSMALLINT>(res);
-
- LOG_MSG("columnNum: %d\n", *columnNum);
+ LOG_MSG("columnNum: %d\n", *columnNum);
+ }
return statement->GetDiagnosticRecords().GetReturnCode();
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/32d2629e/modules/platforms/cpp/odbc/src/utility.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/src/utility.cpp b/modules/platforms/cpp/odbc/src/utility.cpp
index 756ab36..c15c23c 100644
--- a/modules/platforms/cpp/odbc/src/utility.cpp
+++ b/modules/platforms/cpp/odbc/src/utility.cpp
@@ -154,6 +154,21 @@ namespace ignite
else
res.clear();
}
+
+ std::string HexDump(const char* data, size_t count)
+ {
+ std::stringstream dump;
+ size_t cnt = 0;
+ for(const char* p = data, *e = data + count; p != e; ++p)
+ {
+ if (cnt++ % 16 == 0)
+ {
+ dump << std::endl;
+ }
+ dump << std::hex << std::setfill('0') << std::setw(2) << (int)*p << " ";
+ }
+ return dump.str();
+ }
}
}