diff options
author | Michi Henning <michi@zeroc.com> | 2004-04-08 00:56:34 +0000 |
---|---|---|
committer | Michi Henning <michi@zeroc.com> | 2004-04-08 00:56:34 +0000 |
commit | 174b86bff0dccadb83a890b47f51e0316ffcdd1d (patch) | |
tree | cca0c832955eed053dd0d502be1b4632c0bb6a4a | |
parent | facet changes (diff) | |
download | ice-174b86bff0dccadb83a890b47f51e0316ffcdd1d.tar.bz2 ice-174b86bff0dccadb83a890b47f51e0316ffcdd1d.tar.xz ice-174b86bff0dccadb83a890b47f51e0316ffcdd1d.zip |
*** empty log message ***
-rwxr-xr-x | cs/All.sln | 8 | ||||
-rwxr-xr-x | cs/allTests.py | 4 | ||||
-rw-r--r-- | cs/config/TestUtil.py | 278 | ||||
-rwxr-xr-x | cs/src/Ice/Connection.cs | 2 | ||||
-rwxr-xr-x | cs/src/Ice/Network.cs | 2 | ||||
-rwxr-xr-x | cs/src/Ice/ObjectAdapterI.cs | 2 | ||||
-rwxr-xr-x | cs/src/Ice/Patcher.cs | 4 | ||||
-rwxr-xr-x | cs/src/Ice/Reference.cs | 2 | ||||
-rwxr-xr-x | cs/src/Ice/ThreadPool.cs | 73 | ||||
-rwxr-xr-x | cs/test/Ice/adapterDeactivation/Client.cs | 7 | ||||
-rwxr-xr-x | cs/test/Ice/adapterDeactivation/Collocated.cs | 56 | ||||
-rwxr-xr-x | cs/test/Ice/adapterDeactivation/adapterDeactivationCOL.csproj | 115 | ||||
-rwxr-xr-x | cs/test/Ice/faultTolerance/AllTests.cs | 2 | ||||
-rwxr-xr-x | cs/test/Ice/faultTolerance/run.py | 1 | ||||
-rwxr-xr-x | cs/test/Ice/location/ServerLocator.cs | 3 | ||||
-rwxr-xr-x | cs/test/Ice/operations/Client.cs | 1 |
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);
|