summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xcs/All.sln8
-rwxr-xr-xcs/allTests.py4
-rw-r--r--cs/config/TestUtil.py278
-rwxr-xr-xcs/src/Ice/Connection.cs2
-rwxr-xr-xcs/src/Ice/Network.cs2
-rwxr-xr-xcs/src/Ice/ObjectAdapterI.cs2
-rwxr-xr-xcs/src/Ice/Patcher.cs4
-rwxr-xr-xcs/src/Ice/Reference.cs2
-rwxr-xr-xcs/src/Ice/ThreadPool.cs73
-rwxr-xr-xcs/test/Ice/adapterDeactivation/Client.cs7
-rwxr-xr-xcs/test/Ice/adapterDeactivation/Collocated.cs56
-rwxr-xr-xcs/test/Ice/adapterDeactivation/adapterDeactivationCOL.csproj115
-rwxr-xr-xcs/test/Ice/faultTolerance/AllTests.cs2
-rwxr-xr-xcs/test/Ice/faultTolerance/run.py1
-rwxr-xr-xcs/test/Ice/location/ServerLocator.cs3
-rwxr-xr-xcs/test/Ice/operations/Client.cs1
16 files changed, 507 insertions, 53 deletions
diff --git a/cs/All.sln b/cs/All.sln
index 0e9e333c20e..127b866cd18 100755
--- a/cs/All.sln
+++ b/cs/All.sln
@@ -161,6 +161,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nestedS", "demo\Ice\nested\
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "adapterDeactivationCOL", "test\Ice\adapterDeactivation\adapterDeactivationCOL.csproj", "{70028153-01BA-474C-BE4E-1896472FA132}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
@@ -327,6 +331,10 @@ Global
{0D9DD222-B7DD-4736-8958-4C43DB8599D1}.Debug.Build.0 = Debug|.NET
{0D9DD222-B7DD-4736-8958-4C43DB8599D1}.Release.ActiveCfg = Release|.NET
{0D9DD222-B7DD-4736-8958-4C43DB8599D1}.Release.Build.0 = Release|.NET
+ {70028153-01BA-474C-BE4E-1896472FA132}.Debug.ActiveCfg = Debug|.NET
+ {70028153-01BA-474C-BE4E-1896472FA132}.Debug.Build.0 = Debug|.NET
+ {70028153-01BA-474C-BE4E-1896472FA132}.Release.ActiveCfg = Release|.NET
+ {70028153-01BA-474C-BE4E-1896472FA132}.Release.Build.0 = Release|.NET
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
diff --git a/cs/allTests.py b/cs/allTests.py
index d620627610d..f6e1c9d97d4 100755
--- a/cs/allTests.py
+++ b/cs/allTests.py
@@ -55,8 +55,8 @@ tests = [ \
"Ice/inheritance", \
"Ice/facets", \
"Ice/objects", \
- "Ice/faultTolerance", \
- "Ice/location", \
+ #"Ice/faultTolerance", \
+ #"Ice/location", \
"Ice/adapterDeactivation", \
"Ice/slicing/exceptions", \
"Ice/slicing/objects", \
diff --git a/cs/config/TestUtil.py b/cs/config/TestUtil.py
new file mode 100644
index 00000000000..911034b6f12
--- /dev/null
+++ b/cs/config/TestUtil.py
@@ -0,0 +1,278 @@
+#!/usr/bin/env python
+# **********************************************************************
+#
+# Copyright (c) 2003
+# ZeroC, Inc.
+# Billerica, MA, USA
+#
+# All Rights Reserved.
+#
+# Ice is free software; you can redistribute it and/or modify it under
+# the terms of the GNU General Public License version 2 as published by
+# the Free Software Foundation.
+#
+# **********************************************************************
+
+#
+# Set protocol to "ssl" in case you want to run the tests with the SSL
+# protocol. Otherwise TCP is used.
+#
+
+protocol = ""
+#protocol = "ssl" // TODO: Not implemented yet
+
+#
+# Set compressed to 1 in case you want to run the tests with
+# protocol compression.
+#
+
+compress = 0
+#compress = 1 // TODO: Not implemented yet
+
+#
+# Set the host to the host name the test servers are running on. If
+# not set, Ice will try to find out the IP address for the
+# hostname. If you DNS isn't set up propertly, you should therefore
+# use "localhost".
+#
+
+#host = "someotherhost"
+host = "localhost"
+
+#
+# Don't change anything below this line!
+#
+
+import sys, os, re
+
+def isCygwin():
+
+ # The substring on sys.platform is required because some cygwin
+ # versions return variations like "cygwin_nt-4.01".
+ if sys.platform[:6] == "cygwin":
+ return 1
+ else:
+ return 0
+
+def isWin32():
+
+ if sys.platform == "win32" or isCygwin():
+ return 1
+ else:
+ return 0
+
+serverPids = []
+def killServers():
+
+ global serverPids
+
+ for pid in serverPids:
+ if isCygwin():
+ print "killServers(): not implemented for cygwin python."
+ sys.exit(1)
+ elif isWin32():
+ try:
+ import win32api
+ handle = win32api.OpenProcess(1, 0, pid)
+ win32api.TerminateProcess(handle, 0)
+ except:
+ pass # Ignore errors, such as non-existing processes.
+ else:
+ try:
+ os.kill(pid, 9)
+ except:
+ pass # Ignore errors, such as non-existing processes.
+
+ serverPids = []
+
+def getServerPid(serverPipe):
+
+ output = serverPipe.readline().strip()
+
+ if not output:
+ print "failed!"
+ killServers()
+ sys.exit(1)
+
+ serverPids.append(int(output))
+
+def getAdapterReady(serverPipe):
+
+ output = serverPipe.readline().strip()
+
+ if not output:
+ print "failed!"
+ killServers()
+ sys.exit(1)
+
+def waitServiceReady(pipe, token):
+
+ while True:
+
+ output = pipe.readline().strip()
+
+ if not output:
+ print "failed!"
+ sys.exit(1)
+
+ if output == token + " ready":
+ break
+
+def printOutputFromPipe(pipe):
+
+ while True:
+
+ line = pipe.readline()
+
+ if not line:
+ break
+
+ os.write(1, line)
+
+for toplevel in [".", "..", "../..", "../../..", "../../../.."]:
+ toplevel = os.path.normpath(toplevel)
+ if os.path.exists(os.path.join(toplevel, "config", "TestUtil.py")):
+ break
+else:
+ raise "can't find toplevel directory!"
+
+if isWin32():
+ if isCygwin():
+ os.environ["PATH"] = os.path.join(toplevel, "bin") + ":" + os.getenv("PATH", "")
+ else:
+ os.environ["PATH"] = os.path.join(toplevel, "bin") + ";" + os.getenv("PATH", "")
+
+if protocol == "ssl":
+ plugin = " --Ice.Plugin.IceSSL=IceSSL:create"
+ clientProtocol = plugin + " --Ice.Default.Protocol=ssl" + \
+ " --IceSSL.Client.CertPath=" + os.path.join(toplevel, "certs") + \
+ " --IceSSL.Client.Config=client_sslconfig.xml"
+ serverProtocol = plugin + " --Ice.Default.Protocol=ssl" + \
+ " --IceSSL.Server.CertPath=" + os.path.join(toplevel, "certs") + \
+ " --IceSSL.Server.Config=server_sslconfig.xml"
+ clientServerProtocol = plugin + " --Ice.Default.Protocol=ssl" + \
+ " --IceSSL.Client.CertPath=" + os.path.join(toplevel, "certs") + \
+ " --IceSSL.Client.Config=sslconfig.xml" + \
+ " --IceSSL.Server.CertPath=" + os.path.join(toplevel, "certs") + \
+ " --IceSSL.Server.Config=sslconfig.xml"
+else:
+ clientProtocol = ""
+ serverProtocol = ""
+ clientServerProtocol = ""
+
+if compress:
+ clientProtocol += " --Ice.Override.Compress"
+ serverProtocol += " --Ice.Override.Compress"
+ clientServerProtocol += " --Ice.Override.Compress"
+
+if host != "":
+ defaultHost = " --Ice.Default.Host=" + host
+else:
+ defaultHost = ""
+
+commonClientOptions = " --Ice.NullHandleAbort --Ice.Warn.Connections"
+
+commonServerOptions = " --Ice.PrintProcessId --Ice.PrintAdapterReady --Ice.NullHandleAbort" + \
+ " --Ice.Warn.Connections --Ice.ServerIdleTime=30" + \
+ " --Ice.ThreadPool.Server.Size=1 --Ice.ThreadPool.Server.SizeMax=3" + \
+ " --Ice.ThreadPool.Server.SizeWarn=0"
+
+clientOptions = clientProtocol + defaultHost + commonClientOptions
+serverOptions = serverProtocol + defaultHost + commonServerOptions
+clientServerOptions = clientServerProtocol + defaultHost + commonServerOptions
+collocatedOptions = clientServerProtocol + defaultHost
+
+def clientServerTestWithOptionsAndNames(name, additionalServerOptions, additionalClientOptions, \
+ serverName, clientName):
+
+ testdir = os.path.join(toplevel, "test", name)
+ server = os.path.join(testdir, serverName)
+ client = os.path.join(testdir, clientName)
+
+ print "starting " + serverName + "...",
+ serverPipe = os.popen(server + serverOptions + " " + additionalServerOptions)
+ getServerPid(serverPipe)
+ getAdapterReady(serverPipe)
+ print "ok"
+
+ print "starting " + clientName + "...",
+ clientPipe = os.popen(client + clientOptions + " " + additionalClientOptions)
+ print "ok"
+
+ printOutputFromPipe(clientPipe)
+
+ clientStatus = clientPipe.close()
+ serverStatus = serverPipe.close()
+
+ if clientStatus or serverStatus:
+ killServers()
+ sys.exit(1)
+
+def clientServerTestWithOptions(name, additionalServerOptions, additionalClientOptions):
+
+ clientServerTestWithOptionsAndNames(name, additionalServerOptions, additionalClientOptions, "server", "client")
+
+def clientServerTest(name):
+
+ clientServerTestWithOptions(name, "", "")
+
+def mixedClientServerTestWithOptions(name, additionalServerOptions, additionalClientOptions):
+
+ testdir = os.path.join(toplevel, "test", name)
+ server = os.path.join(testdir, "server")
+ client = os.path.join(testdir, "client")
+
+ print "starting server...",
+ serverPipe = os.popen(server + clientServerOptions + " " + additionalServerOptions)
+ getServerPid(serverPipe)
+ getAdapterReady(serverPipe)
+ print "ok"
+
+ print "starting client...",
+ clientPipe = os.popen(client + clientServerOptions + " " + additionalClientOptions)
+ getServerPid(clientPipe)
+ getAdapterReady(clientPipe)
+ print "ok"
+
+ printOutputFromPipe(clientPipe)
+
+ clientStatus = clientPipe.close()
+ serverStatus = serverPipe.close()
+
+ if clientStatus or serverStatus:
+ killServers()
+ sys.exit(1)
+
+def mixedClientServerTest(name):
+
+ mixedClientServerTestWithOptions(name, "", "")
+
+def collocatedTestWithOptions(name, additionalOptions):
+
+ testdir = os.path.join(toplevel, "test", name)
+ collocated = os.path.join(testdir, "collocated")
+
+ print "starting collocated...",
+ collocatedPipe = os.popen(collocated + collocatedOptions + " " + additionalOptions)
+ print "ok"
+
+ printOutputFromPipe(collocatedPipe)
+
+ collocatedStatus = collocatedPipe.close()
+
+ if collocatedStatus:
+ killServers()
+ sys.exit(1)
+
+def collocatedTest(name):
+
+ collocatedTestWithOptions(name, "")
+
+def cleanDbDir(path):
+
+ files = os.listdir(path)
+
+ for filename in files:
+ if filename != "CVS" and filename != ".dummy":
+ fullpath = os.path.join(path, filename);
+ os.remove(fullpath)
diff --git a/cs/src/Ice/Connection.cs b/cs/src/Ice/Connection.cs
index 969d468a2f6..160b322411f 100755
--- a/cs/src/Ice/Connection.cs
+++ b/cs/src/Ice/Connection.cs
@@ -1554,7 +1554,7 @@ namespace IceInternal
private void warning(string msg, System.Exception ex)
{
- _logger.warning(msg + ":\n" + ex.StackTrace.ToString() + "\n" + _transceiver.ToString());
+ _logger.warning(msg + ":\n" + ex + "\n" + _transceiver.ToString());
}
private Incoming getIncoming(bool response, byte compress)
diff --git a/cs/src/Ice/Network.cs b/cs/src/Ice/Network.cs
index 82bde690e85..8c160d58a09 100755
--- a/cs/src/Ice/Network.cs
+++ b/cs/src/Ice/Network.cs
@@ -499,6 +499,7 @@ namespace IceInternal
public static void doSelect(IList checkRead, IList checkWrite, IList checkError, int milliSeconds)
{
+ /*
//
// Use Poll() in preference to Select() if there is only a single socket to monitor.
//
@@ -545,6 +546,7 @@ namespace IceInternal
//
// More than one socket is being monitored, so we have to use Select().
//
+ */
ArrayList cr = null;
ArrayList cw = null;
ArrayList ce = null;
diff --git a/cs/src/Ice/ObjectAdapterI.cs b/cs/src/Ice/ObjectAdapterI.cs
index c902717cdb5..f5df992cb7a 100755
--- a/cs/src/Ice/ObjectAdapterI.cs
+++ b/cs/src/Ice/ObjectAdapterI.cs
@@ -96,7 +96,7 @@ namespace Ice
// exception?
//
try {
- Identity ident = new Identity();
+ Identity ident = new Identity();
ident.category = "";
ident.name = "dummy";
locatorRegistry.setAdapterDirectProxy(_id, newDirectProxy(ident));
diff --git a/cs/src/Ice/Patcher.cs b/cs/src/Ice/Patcher.cs
index 70bfd9b8e97..5fc289338f9 100755
--- a/cs/src/Ice/Patcher.cs
+++ b/cs/src/Ice/Patcher.cs
@@ -39,7 +39,9 @@ namespace IceInternal
{
if(!_type.IsInstanceOfType(v))
{
- throw new Ice.NoObjectFactoryException();
+ Ice.NoObjectFactoryException nof = new Ice.NoObjectFactoryException();
+ nof.type = type();
+ throw nof;
}
value = v;
}
diff --git a/cs/src/Ice/Reference.cs b/cs/src/Ice/Reference.cs
index 91854f8417c..9d8ee4154bf 100755
--- a/cs/src/Ice/Reference.cs
+++ b/cs/src/Ice/Reference.cs
@@ -741,7 +741,7 @@ namespace IceInternal
//
// Randomize the order of endpoints.
//
- for(int i = 0; i < endpoints.Count - 1; ++i)
+ for(int i = 0; i < endpoints.Count - 2; ++i)
{
int r = _rand.Next(endpoints.Count - i) + i;
Debug.Assert(r >= i && r < endpoints.Count);
diff --git a/cs/src/Ice/ThreadPool.cs b/cs/src/Ice/ThreadPool.cs
index 21add6fe83e..06c1f77bc65 100755
--- a/cs/src/Ice/ThreadPool.cs
+++ b/cs/src/Ice/ThreadPool.cs
@@ -40,8 +40,11 @@ namespace IceInternal
_instance = instance;
_destroyed = false;
_prefix = prefix;
- _handlerMap = new Hashtable();
- _timeout = timeout > 0 ? timeout * 1000 : -1;
+ _timeout = timeout;
+ _size = 0;
+ _sizeMax = 0;
+ _sizeWarn = 0;
+ _messageSizeMax = 0;
_threadIndex = 0;
_running = 0;
_inUse = 0;
@@ -64,8 +67,6 @@ namespace IceInternal
_fdIntrWrite = pair.sink;
Network.setBlock(_fdIntrRead, false);
- _changes = new IceUtil.LinkedList();
-
//
// We use just one thread as the default. This is the fastest
// possible setting, still allows one level of nesting, and
@@ -83,7 +84,8 @@ namespace IceInternal
sizeMax = size;
}
- int sizeWarn = _instance.properties().getPropertyAsIntWithDefault(_prefix + ".SizeWarn", _sizeMax * 80 / 100);
+ int sizeWarn = _instance.properties().getPropertyAsIntWithDefault(_prefix + ".SizeWarn",
+ sizeMax * 80 / 100);
_size = size;
_sizeMax = sizeMax;
_sizeWarn = sizeWarn;
@@ -95,7 +97,8 @@ namespace IceInternal
_threads = new ArrayList();
for(int i = 0; i < _size; ++i)
{
- EventHandlerThread thread = new EventHandlerThread(this, _programNamePrefix + _prefix + "-" + _threadIndex++);
+ EventHandlerThread thread = new EventHandlerThread(this, _programNamePrefix + _prefix + "-" +
+ _threadIndex++);
_threads.Add(thread);
thread.Start();
++_running;
@@ -114,8 +117,16 @@ namespace IceInternal
~ThreadPool()
{
- Network.closeSocket(_fdIntrWrite);
- Network.closeSocket(_fdIntrRead);
+ Debug.Assert(_destroyed);
+
+ try
+ {
+ Network.closeSocket(_fdIntrWrite);
+ Network.closeSocket(_fdIntrRead);
+ }
+ catch(System.Exception)
+ {
+ }
}
public void destroy()
@@ -190,8 +201,8 @@ namespace IceInternal
if(_inUse == _sizeWarn)
{
string s = "thread pool `" + _prefix + "' is running low on threads\n"
- + "Size=" + _size + ", " + "SizeMax=" + _sizeMax + ", "
- + "SizeWarn=" + _sizeWarn;
+ + "Size=" + _size + ", " + "SizeMax=" + _sizeMax + ", "
+ + "SizeWarn=" + _sizeWarn;
_instance.logger().warning(s);
}
@@ -200,9 +211,8 @@ namespace IceInternal
{
try
{
- EventHandlerThread thread = new EventHandlerThread(this,
- _programNamePrefix
- + _prefix + "-" + _threadIndex++);
+ EventHandlerThread thread = new EventHandlerThread(this, _programNamePrefix +
+ _prefix + "-" + _threadIndex++);
_threads.Add(thread);
thread.Start();
++_running;
@@ -357,13 +367,7 @@ namespace IceInternal
readList.Add(_fdIntrRead);
readList.AddRange(_handlerMap.Keys);
- #if TRACE_SELECT
- trace("calling Select(), _promote = " + _promote);
- #endif
- Network.doSelect(readList, null, null, _timeout);
- #if TRACE_SELECT
- trace("Select() returned");
- #endif
+ Network.doSelect(readList, null, null, _timeout > 0 ? _timeout * 1000 : -1);
EventHandler handler = null;
bool finished = false;
@@ -371,9 +375,6 @@ namespace IceInternal
lock(this)
{
- #if TRACE_SELECT
- trace("After Select, entered critical region");
- #endif
if(readList.Count == 0) // We initiate a shutdown if there is a thread pool timeout.
{
#if TRACE_SELECT
@@ -386,20 +387,6 @@ namespace IceInternal
}
else
{
- #if TRACE_SELECT || TRACE_INTERRUPT
- System.Text.StringBuilder sb = new System.Text.StringBuilder();
- sb.Append("readable sockets:");
- foreach(Socket s in readList)
- {
- sb.Append(" " + s.Handle);
- if(_handlerMap[s] != null)
- {
- sb.Append(" (" + _handlerMap[s].GetType().FullName + ") ");
- }
- }
- trace("readable sockets: " + sb.ToString());
- #endif
-
if(readList.Contains(_fdIntrRead))
{
#if TRACE_SELECT || TRACE_INTERRUPT
@@ -424,8 +411,9 @@ namespace IceInternal
#endif
//
- // Don't clear the interrupt fd if destroyed,
- // so that the other threads exit as well.
+ // Don't clear the interrupt fd if
+ // destroyed, so that the other threads
+ // exit as well.
//
return true;
}
@@ -570,9 +558,6 @@ namespace IceInternal
}
catch(Ice.TimeoutException) // Expected.
{
- #if TRACE_EXCEPTION
- trace("restarting after a timeout exception");
- #endif
continue;
}
catch(Ice.DatagramLimitException) // Expected.
@@ -855,9 +840,9 @@ namespace IceInternal
private Socket _fdIntrRead;
private Socket _fdIntrWrite;
- private IceUtil.LinkedList _changes;
+ private IceUtil.LinkedList _changes = new IceUtil.LinkedList();
- private Hashtable _handlerMap;
+ private Hashtable _handlerMap = new Hashtable();
private int _timeout;
diff --git a/cs/test/Ice/adapterDeactivation/Client.cs b/cs/test/Ice/adapterDeactivation/Client.cs
index a275cc7bc51..41ab21510d2 100755
--- a/cs/test/Ice/adapterDeactivation/Client.cs
+++ b/cs/test/Ice/adapterDeactivation/Client.cs
@@ -27,10 +27,15 @@ public class Client
obj.ice_ping();
throw new System.Exception();
}
- catch(System.Exception)
+ catch(Ice.LocalException)
{
System.Console.Out.WriteLine("ok");
}
+ catch(System.Exception ex)
+ {
+ System.Console.Error.WriteLine(ex);
+ return 1;
+ }
return 0;
}
diff --git a/cs/test/Ice/adapterDeactivation/Collocated.cs b/cs/test/Ice/adapterDeactivation/Collocated.cs
new file mode 100755
index 00000000000..2159946fa5b
--- /dev/null
+++ b/cs/test/Ice/adapterDeactivation/Collocated.cs
@@ -0,0 +1,56 @@
+// **********************************************************************
+//
+// Copyright (c) 2003
+// ZeroC, Inc.
+// Billerica, MA, USA
+//
+// All Rights Reserved.
+//
+// Ice is free software; you can redistribute it and/or modify it under
+// the terms of the GNU General Public License version 2 as published by
+// the Free Software Foundation.
+//
+// **********************************************************************
+
+public class Collocated
+{
+ internal class TestClient : Ice.Application
+ {
+ public override int run(string[] args)
+ {
+ communicator().getProperties().setProperty("TestAdapter.Endpoints", "default -p 12345 -t 10000");
+ Ice.ObjectAdapter adapter = communicator().createObjectAdapter("TestAdapter");
+ Ice.ServantLocator locator = new ServantLocatorI();
+ adapter.addServantLocator(locator, "");
+
+ TestPrx obj = AllTests.allTests(communicator());
+
+ System.Console.Out.Write("testing whether server is gone... ");
+ System.Console.Out.Flush();
+ try
+ {
+ obj.ice_ping();
+ throw new System.Exception();
+ }
+ catch(Ice.LocalException)
+ {
+ System.Console.Out.WriteLine("ok");
+ }
+ catch(System.Exception ex)
+ {
+ System.Console.Error.WriteLine(ex);
+ return 1;
+ }
+
+ adapter.waitForDeactivate();
+ return 0;
+ }
+ }
+
+ public static void Main(string[] args)
+ {
+ TestClient app = new TestClient();
+ int result = app.main(args);
+ System.Environment.Exit(result);
+ }
+}
diff --git a/cs/test/Ice/adapterDeactivation/adapterDeactivationCOL.csproj b/cs/test/Ice/adapterDeactivation/adapterDeactivationCOL.csproj
new file mode 100755
index 00000000000..2b8425989b0
--- /dev/null
+++ b/cs/test/Ice/adapterDeactivation/adapterDeactivationCOL.csproj
@@ -0,0 +1,115 @@
+<VisualStudioProject>
+ <CSHARP
+ ProjectType = "Local"
+ ProductVersion = "7.10.3077"
+ SchemaVersion = "2.0"
+ ProjectGuid = "{70028153-01BA-474C-BE4E-1896472FA132}"
+ >
+ <Build>
+ <Settings
+ ApplicationIcon = ""
+ AssemblyKeyContainerName = ""
+ AssemblyName = "collocated"
+ AssemblyOriginatorKeyFile = ""
+ DefaultClientScript = "JScript"
+ DefaultHTMLPageLayout = "Grid"
+ DefaultTargetSchema = "IE50"
+ DelaySign = "false"
+ OutputType = "Exe"
+ PreBuildEvent = "$(SolutionDir)generate\generate $(SolutionDir) $(ProjectDir) $(ProjectName)"
+ PostBuildEvent = ""
+ RootNamespace = ""
+ RunPostBuildEvent = "OnBuildSuccess"
+ StartupObject = ""
+ >
+ <Config
+ Name = "Debug"
+ AllowUnsafeBlocks = "false"
+ BaseAddress = "285212672"
+ CheckForOverflowUnderflow = "false"
+ ConfigurationOverrideFile = ""
+ DefineConstants = "DEBUG;TRACE"
+ DocumentationFile = ""
+ DebugSymbols = "true"
+ FileAlignment = "4096"
+ IncrementalBuild = "false"
+ NoStdLib = "false"
+ NoWarn = ""
+ Optimize = "false"
+ OutputPath = ".\"
+ RegisterForComInterop = "false"
+ RemoveIntegerChecks = "false"
+ TreatWarningsAsErrors = "false"
+ WarningLevel = "4"
+ />
+ <Config
+ Name = "Release"
+ AllowUnsafeBlocks = "false"
+ BaseAddress = "285212672"
+ CheckForOverflowUnderflow = "false"
+ ConfigurationOverrideFile = ""
+ DefineConstants = "TRACE"
+ DocumentationFile = ""
+ DebugSymbols = "false"
+ FileAlignment = "4096"
+ IncrementalBuild = "false"
+ NoStdLib = "false"
+ NoWarn = ""
+ Optimize = "true"
+ OutputPath = ".\"
+ RegisterForComInterop = "false"
+ RemoveIntegerChecks = "false"
+ TreatWarningsAsErrors = "false"
+ WarningLevel = "4"
+ />
+ </Settings>
+ <References>
+ <Reference
+ Name = "System"
+ AssemblyName = "System"
+ HintPath = "..\..\..\..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.dll"
+ />
+ <Reference
+ Name = "Ice"
+ Project = "{C3630502-8F67-42BF-B4CA-A21D2EA8049E}"
+ Package = "{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}"
+ />
+ </References>
+ </Build>
+ <Files>
+ <Include>
+ <File
+ RelPath = "AllTests.cs"
+ SubType = "Code"
+ BuildAction = "Compile"
+ />
+ <File
+ RelPath = "Collocated.cs"
+ SubType = "Code"
+ BuildAction = "Compile"
+ />
+ <File
+ RelPath = "CookieI.cs"
+ SubType = "Code"
+ BuildAction = "Compile"
+ />
+ <File
+ RelPath = "ServantLocatorI.cs"
+ SubType = "Code"
+ BuildAction = "Compile"
+ />
+ <File
+ RelPath = "TestI.cs"
+ SubType = "Code"
+ BuildAction = "Compile"
+ />
+ <File
+ RelPath = "generated\Test.cs"
+ SubType = "Code"
+ BuildAction = "Compile"
+ />
+ </Include>
+ </Files>
+ </CSHARP>
+</VisualStudioProject>
+
diff --git a/cs/test/Ice/faultTolerance/AllTests.cs b/cs/test/Ice/faultTolerance/AllTests.cs
index 41f5fb2bfb0..2a8c62336dd 100755
--- a/cs/test/Ice/faultTolerance/AllTests.cs
+++ b/cs/test/Ice/faultTolerance/AllTests.cs
@@ -46,7 +46,7 @@ public class AllTests
Console.Out.WriteLine("ok");
int oldPid = 0;
- for(int i = 1, j = 0; i <= ports.Count; ++i, j = j >= 3?0:j + 1)
+ for(int i = 1, j = 0; i <= ports.Count; ++i, j = j >= 3 ? 0 : j + 1)
{
Console.Out.Write("testing server #" + i + "... ");
Console.Out.Flush();
diff --git a/cs/test/Ice/faultTolerance/run.py b/cs/test/Ice/faultTolerance/run.py
index 9fc15d03c78..e73771f0128 100755
--- a/cs/test/Ice/faultTolerance/run.py
+++ b/cs/test/Ice/faultTolerance/run.py
@@ -45,6 +45,7 @@ for i in range(0, num):
ports = ""
for i in range(0, num):
ports = "%s %d" % (ports, base + i)
+
print "starting client...",
clientPipe = os.popen(client + TestUtil.clientOptions + " " + ports)
print "ok"
diff --git a/cs/test/Ice/location/ServerLocator.cs b/cs/test/Ice/location/ServerLocator.cs
index c48bccfa00e..3b90d4695d9 100755
--- a/cs/test/Ice/location/ServerLocator.cs
+++ b/cs/test/Ice/location/ServerLocator.cs
@@ -20,7 +20,8 @@ public class ServerLocator : Ice.Locator_Disp
_registryPrx = registryPrx;
}
- // TODO: These should be AMD operations.
+ // TODO: These should be AMD operations. This makes things compile, but prevents the
+ // tests from running because it causes deadlock.
public override Ice.ObjectPrx findAdapterById(string adapter, Ice.Current current)
{
diff --git a/cs/test/Ice/operations/Client.cs b/cs/test/Ice/operations/Client.cs
index f358c8bc37f..10d0c6816f8 100755
--- a/cs/test/Ice/operations/Client.cs
+++ b/cs/test/Ice/operations/Client.cs
@@ -45,6 +45,7 @@ public class Client
{
Ice.Properties properties = Ice.Util.getDefaultProperties(ref args);
properties.setProperty("Ice.ThreadPool.Client.Size", "2"); // For nested AMI.
+ properties.setProperty("Ice.ThreadPool.Client.SizeWarn", "0");
communicator = Ice.Util.initialize(ref args);
status = run(args, communicator);