Преглед изворни кода

Merge pull request #14785 from richardkchapman/remove-sniffer

HPCC-25657 Sniffer code not completely removed

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
Merged-by: Gavin Halliday <ghalliday@hpccsystems.com>
Gavin Halliday пре 4 година
родитељ
комит
23f0ea0e8e

+ 0 - 12
initfiles/componentfiles/configschema/xsd/roxie.xsd

@@ -336,21 +336,9 @@
                                   hpcc:tooltip="Controls the timeout value agent udp will wait for acknowledgement of a request to send from a Roxie server, in milliseconds"/>
                     <xs:attribute name="udpResendEnabled" type="xs:boolean" hpcc:displayName="Enable UDP Resend"
                                   hpcc:presetValue="false" hpcc:tooltip="UDP transport layer packet resend ability"/>
-                    <xs:attribute name="udpRetryBusySenders" type="xs:nonNegativeInteger"
-                                  hpcc:displayName="UDP Retry Busy Senders" hpcc:presetValue="0"
-                                  hpcc:tooltip="Controls the number of times Roxie server will repeat search for an idle sender when requesting new data"/>
                     <xs:attribute name="udpSendQueueSize" type="xs:nonNegativeInteger"
                                   hpcc:displayName="UDP Send Queue Size" hpcc:presetValue="50"
                                   hpcc:tooltip="UDP transport layer send queue size"/>
-                    <xs:attribute name="udpSnifferEnabled" type="xs:boolean" hpcc:displayName="Enable UDP Sniffer"
-                                  hpcc:presetValue="true"
-                                  hpcc:tooltip="Enable the UDP multicast sniffer for tracking which senders are busy"/>
-                    <xs:attribute name="udpSnifferReadThreadPriority" type="xs:nonNegativeInteger"
-                                  hpcc:displayName="UDP Sniffer Read Thread Priority" hpcc:presetValue="3"
-                                  hpcc:tooltip="If non-zero, run the sniffer read thread at elevated priority level"/>
-                    <xs:attribute name="udpSnifferSendThreadPriority" type="xs:nonNegativeInteger"
-                                  hpcc:displayName="UDP Sniffer Send Thread Priority" hpcc:presetValue="3"
-                                  hpcc:tooltip="If non-zero, run the sniffer send thread at elevated priority level"/>
                     <xs:attribute name="useAeron" type="xs:boolean" hpcc:displayName="Use Aeron"
                                   hpcc:presetValue="false"
                                   hpcc:tooltip="Use Aeron for slave->server communication"/>

+ 0 - 29
initfiles/componentfiles/configxml/roxie.xsd.in

@@ -1146,13 +1146,6 @@
         </xs:appinfo>
       </xs:annotation>
     </xs:attribute>
-    <xs:attribute name="udpRetryBusySenders" type="xs:nonNegativeInteger" use="optional" default="0">
-      <xs:annotation>
-        <xs:appinfo>
-          <tooltip>Controls the number of times Roxie server will repeat search for an idle sender when requesting new data</tooltip>
-        </xs:appinfo>
-      </xs:annotation>
-    </xs:attribute>
     <xs:attribute name="udpSendQueueSize" type="xs:nonNegativeInteger" use="optional" default="50">
       <xs:annotation>
         <xs:appinfo>
@@ -1160,28 +1153,6 @@
         </xs:appinfo>
       </xs:annotation>
     </xs:attribute>
-        <xs:attribute name="udpSnifferEnabled" type="xs:boolean" use="optional" default="true">
-            <xs:annotation>
-                <xs:appinfo>
-                    <tooltip>Enable the UDP multicast sniffer for tracking which senders are busy</tooltip>
-                </xs:appinfo>
-            </xs:annotation>
-        </xs:attribute>
-        <xs:attribute name="udpSnifferReadThreadPriority" type="nonNegativeInteger" use="optional" default="3">
-            <xs:annotation>
-                <xs:appinfo>
-                    <tooltip>If non-zero, run the sniffer read thread at elevated priority level</tooltip>
-                </xs:appinfo>
-            </xs:annotation>
-        </xs:attribute>
-        <xs:attribute name="udpSnifferSendThreadPriority" type="nonNegativeInteger" use="optional" default="3">
-            <xs:annotation>
-                <xs:appinfo>
-                    <tooltip>If non-zero, run the sniffer send thread at elevated priority level</tooltip>
-                </xs:appinfo>
-            </xs:annotation>
-        </xs:attribute>
-    </xs:attributeGroup>
   <xs:attributeGroup name="Cache">
     <xs:attribute name="blobCacheMem" type="xs:nonNegativeInteger" use="optional" default="0">
       <xs:annotation>

+ 0 - 2
initfiles/etc/DIR_NAME/environment.xml.in

@@ -153,10 +153,8 @@
                 udpQueueSize="100"
                 udpRequestToSendTimeout="5"
                 udpResendEnabled="false"
-                udpRetryBusySenders="0"
                 udpSendCompletedInData="false"
                 udpSendQueueSize="50"
-                udpSnifferEnabled="true"
                 udpTraceLevel="1"
                 useHardLink="false"
                 useLogQueue="true"

+ 1 - 11
roxie/ccd/ccdmain.cpp

@@ -939,7 +939,6 @@ int CCD_API roxie_main(int argc, const char *argv[], const char * defaultYaml)
         flushJHtreeCacheOnOOM = topology->getPropBool("@flushJHtreeCacheOnOOM", true);
         fastLaneQueue = topology->getPropBool("@fastLaneQueue", true);
         udpOutQsPriority = topology->getPropInt("@udpOutQsPriority", 0);
-        udpRetryBusySenders = topology->getPropInt("@udpRetryBusySenders", 0);
 
         // Historically, this was specified in seconds. Assume any value <= 10 is a legacy value specified in seconds!
         udpRequestToSendTimeout = topology->getPropInt("@udpRequestToSendTimeout", 0);
@@ -972,20 +971,12 @@ int CCD_API roxie_main(int argc, const char *argv[], const char * defaultYaml)
         }
 #endif
         // MORE: might want to check socket buffer sizes against sys max here instead of udp threads ?
-        udpSnifferReadThreadPriority = topology->getPropInt("@udpSnifferReadThreadPriority", 3);
-        udpSnifferSendThreadPriority = topology->getPropInt("@udpSnifferSendThreadPriority", 3);
 
         udpMulticastBufferSize = topology->getPropInt("@udpMulticastBufferSize", 262142);
         udpFlowSocketsSize = topology->getPropInt("@udpFlowSocketsSize", 131072);
         udpLocalWriteSocketSize = topology->getPropInt("@udpLocalWriteSocketSize", 1024000);
 #ifndef _CONTAINERIZED
         roxieMulticastEnabled = topology->getPropBool("@roxieMulticastEnabled", true) && !useAeron;   // enable use of multicast for sending requests to agents
-        udpSnifferEnabled = topology->getPropBool("@udpSnifferEnabled", roxieMulticastEnabled);
-        if (udpSnifferEnabled && !roxieMulticastEnabled)
-        {
-            DBGLOG("WARNING: ignoring udpSnifferEnabled setting as multicast not enabled");
-            udpSnifferEnabled = false;
-        }
 #endif
 
         udpResendEnabled = topology->getPropBool("@udpResendEnabled", true);
@@ -1248,14 +1239,13 @@ int CCD_API roxie_main(int argc, const char *argv[], const char * defaultYaml)
             queryFileCache().start();
             loadPlugins();
         }
-        unsigned snifferChannel = numChannels+2; // MORE - why +2 not +1??
 #ifdef _CONTAINERIZED
         initializeTopology(topoValues, myRoles);
 #endif
         createDelayedReleaser();
         globalPackageSetManager = createRoxiePackageSetManager(standAloneDll.getClear());
         globalPackageSetManager->load();
-        ROQ = createOutputQueueManager(snifferChannel, numAgentThreads, encryptInTransit);
+        ROQ = createOutputQueueManager(numAgentThreads, encryptInTransit);
         ROQ->setHeadRegionSize(headRegionSize);
         ROQ->start();
         Owned<IPacketDiscarder> packetDiscarder = createPacketDiscarder();

+ 5 - 8
roxie/ccd/ccdqueue.cpp

@@ -2831,7 +2831,7 @@ public:
 class RoxieUdpSocketQueueManager : public RoxieSocketQueueManager
 {
 public:
-    RoxieUdpSocketQueueManager(unsigned snifferChannel, unsigned _numWorkers, bool encryptionInTransit) : RoxieSocketQueueManager(_numWorkers)
+    RoxieUdpSocketQueueManager(unsigned _numWorkers, bool encryptionInTransit) : RoxieSocketQueueManager(_numWorkers)
     {
         unsigned udpQueueSize = topology->getPropInt("@udpQueueSize", UDP_QUEUE_SIZE);
         unsigned udpSendQueueSize = topology->getPropInt("@udpSendQueueSize", UDP_SEND_QUEUE_SIZE);
@@ -2844,8 +2844,6 @@ public:
             throttledPacketSendManager.setown(new RoxieThrottledPacketSender(*bucket, maxPacketSize));
         }
 
-        IpAddress snifferIp;
-        getChannelIp(snifferIp, snifferChannel);
         if (udpMaxSlotsPerClient > udpQueueSize)
             udpMaxSlotsPerClient = udpQueueSize;
         if (udpResendEnabled && udpMaxSlotsPerClient > TRACKER_BITS)
@@ -2853,9 +2851,8 @@ public:
         unsigned serverFlowPort = topology->getPropInt("@serverFlowPort", CCD_SERVER_FLOW_PORT);
         unsigned dataPort = topology->getPropInt("@dataPort", CCD_DATA_PORT);
         unsigned clientFlowPort = topology->getPropInt("@clientFlowPort", CCD_CLIENT_FLOW_PORT);
-        unsigned snifferPort = topology->getPropInt("@snifferPort", CCD_SNIFFER_PORT);
-        receiveManager.setown(createReceiveManager(serverFlowPort, dataPort, clientFlowPort, snifferPort, snifferIp, udpQueueSize, udpMaxSlotsPerClient, encryptionInTransit));
-        sendManager.setown(createSendManager(serverFlowPort, dataPort, clientFlowPort, snifferPort, snifferIp, udpSendQueueSize, fastLaneQueue ? 3 : 2, bucket, encryptionInTransit));
+        receiveManager.setown(createReceiveManager(serverFlowPort, dataPort, clientFlowPort, udpQueueSize, udpMaxSlotsPerClient, encryptionInTransit));
+        sendManager.setown(createSendManager(serverFlowPort, dataPort, clientFlowPort, udpSendQueueSize, fastLaneQueue ? 3 : 2, bucket, encryptionInTransit));
     }
 
 };
@@ -3269,14 +3266,14 @@ public:
 
 IRoxieOutputQueueManager *ROQ;
 
-extern IRoxieOutputQueueManager *createOutputQueueManager(unsigned snifferChannel, unsigned numWorkers, bool encrypted)
+extern IRoxieOutputQueueManager *createOutputQueueManager(unsigned numWorkers, bool encrypted)
 {
     if (localAgent)
         return new RoxieLocalQueueManager(numWorkers);
     else if (useAeron)
         return new RoxieAeronSocketQueueManager(numWorkers, encrypted);
     else
-        return new RoxieUdpSocketQueueManager(snifferChannel, numWorkers, encrypted);
+        return new RoxieUdpSocketQueueManager(numWorkers, encrypted);
 
 }
 

+ 1 - 1
roxie/ccd/ccdqueue.ipp

@@ -106,7 +106,7 @@ interface IPacketDiscarder : public IInterface
 };
 
 extern IRoxieOutputQueueManager *ROQ;
-extern IRoxieOutputQueueManager *createOutputQueueManager(unsigned snifferChannel, unsigned numWorkers, bool encrypted);
+extern IRoxieOutputQueueManager *createOutputQueueManager(unsigned numWorkers, bool encrypted);
 extern IReceiveManager *createLocalReceiveManager();
 extern IPacketDiscarder *createPacketDiscarder();
 extern void startPingTimer();

+ 2 - 7
roxie/udplib/udplib.hpp

@@ -149,8 +149,8 @@ interface ISendManager : extends IInterface
     virtual bool allDone() = 0;
 };
 
-extern UDPLIB_API IReceiveManager *createReceiveManager(int server_flow_port, int data_port, int client_flow_port, int sniffer_port, const IpAddress &sniffer_multicast_ip, int queue_size, unsigned maxSlotsPerSender, bool encrypted);
-extern UDPLIB_API ISendManager *createSendManager(int server_flow_port, int data_port, int client_flow_port, int sniffer_port, const IpAddress &sniffer_multicast_ip, int queue_size_pr_server, int queues_pr_server, TokenBucket *rateLimiter, bool encryptionInTransit);
+extern UDPLIB_API IReceiveManager *createReceiveManager(int server_flow_port, int data_port, int client_flow_port, int queue_size, unsigned maxSlotsPerSender, bool encrypted);
+extern UDPLIB_API ISendManager *createSendManager(int server_flow_port, int data_port, int client_flow_port, int queue_size_pr_server, int queues_pr_server, TokenBucket *rateLimiter, bool encryptionInTransit);
 
 extern UDPLIB_API void setAeronProperties(const IPropertyTree *config);
 extern UDPLIB_API IReceiveManager *createAeronReceiveManager(const SocketEndpoint &ep, bool encrypted);
@@ -176,11 +176,6 @@ extern UDPLIB_API unsigned udpMaxRetryTimedoutReqs;
 extern UDPLIB_API unsigned udpRequestToSendTimeout;
 extern UDPLIB_API unsigned udpRequestToSendAckTimeout;
 
-extern UDPLIB_API unsigned udpRetryBusySenders;
-extern UDPLIB_API bool udpSnifferEnabled;
-extern UDPLIB_API unsigned udpSnifferReadThreadPriority;
-extern UDPLIB_API unsigned udpSnifferSendThreadPriority;
-
 extern UDPLIB_API void stopAeronDriver();
 
 extern UDPLIB_API bool udpResendEnabled;

+ 0 - 2
roxie/udplib/udpsha.cpp

@@ -38,8 +38,6 @@ bool udpTraceTimeouts = false;
 unsigned udpTraceLevel = 0;
 unsigned udpFlowSocketsSize = 131072;
 unsigned udpLocalWriteSocketSize = 1024000;
-unsigned udpSnifferReadThreadPriority = 3;
-unsigned udpSnifferSendThreadPriority = 3;
 unsigned udpStatsReportInterval = 60000;
 
 unsigned multicastTTL = 1;

+ 4 - 14
roxie/udplib/udptrr.cpp

@@ -45,7 +45,6 @@
 using roxiemem::DataBuffer;
 using roxiemem::IRowManager;
 
-unsigned udpRetryBusySenders = 0; // seems faster with 0 than 1 in my testing on small clusters and sustained throughput
 unsigned udpMaxPendingPermits;
 
 RelaxedAtomic<unsigned> flowPermitsSent = {0};
@@ -63,20 +62,14 @@ class CReceiveManager : implements IReceiveManager, public CInterface
      *     - waits for packets on flow port
      *     - maintains list of nodes that have pending requests
      *     - sends ok_to_send to one sender (or more) at a time
-     * 2. receive_sniffer (default priority 3, configurable)
-     *     - waits for packets on sniffer port
-     *     - updates information about what other node are currently up to
-     *     - idea is to preferentially send "ok_to_send" to nodes that are not currently sending to someone else
-     *     - doesn't run if no multicast
-     *     - can I instead say "If I get a request to send and I'm sending to someone else, send a "later"?
-     * 3. receive_data (priority 4)
+     * 2. receive_data (priority 4)
      *     - reads data packets off data socket
      *     - runs at v. high priority
      *     - used to have an option to perform collation on this thread but a bad idea:
      *        - can block (ends up in memory manager via attachDataBuffer).
      *        - Does not apply back pressure
      *     - Just enqueues them. We don't give permission to send more than the queue can hold, but it's a soft limit
-     * 4. PacketCollator (standard priority)
+     * 3. PacketCollator (standard priority)
      *     - dequeues packets
      *     - collates packets
      *
@@ -96,7 +89,6 @@ class CReceiveManager : implements IReceiveManager, public CInterface
      *    The requestToSend retry mechanism would then make sure retried.
      *    MORE - if I don't get a response from OkToSend I should assume lost and requeue it.
      * 4. complete - covered by same timeout as okToSend. A lost complete will mean incoming data to that node stalls for the duration of this timeout,
-     * 4. Sniffers - expire anyway
      *
      */
     class UdpSenderEntry  // one per node in the system
@@ -731,7 +723,6 @@ class CReceiveManager : implements IReceiveManager, public CInterface
     friend class receive_send_flow;
     friend class receive_data;
     friend class ReceiveFlowManager;
-    friend class receive_sniffer;
     
     queue_t              *input_queue;
     int                  input_queue_size;
@@ -750,7 +741,7 @@ class CReceiveManager : implements IReceiveManager, public CInterface
 
   public:
     IMPLEMENT_IINTERFACE;
-    CReceiveManager(int server_flow_port, int d_port, int client_flow_port, int snif_port, const IpAddress &multicast_ip, int queue_size, int m_slot_pr_client, bool _encrypted)
+    CReceiveManager(int server_flow_port, int d_port, int client_flow_port, int queue_size, int m_slot_pr_client, bool _encrypted)
         : collatorThread(*this), sendersTable([client_flow_port](const ServerIdentifier ip) { return new UdpSenderEntry(ip.getIpAddress(), client_flow_port);})
     {
 #ifndef _WIN32
@@ -886,13 +877,12 @@ class CReceiveManager : implements IReceiveManager, public CInterface
 };
 
 IReceiveManager *createReceiveManager(int server_flow_port, int data_port, int client_flow_port,
-                                      int sniffer_port, const IpAddress &sniffer_multicast_ip,
                                       int udpQueueSize, unsigned maxSlotsPerSender,
                                       bool encrypted)
 {
     assertex (maxSlotsPerSender <= (unsigned) udpQueueSize);
     assertex (maxSlotsPerSender <= (unsigned) TRACKER_BITS);
-    return new CReceiveManager(server_flow_port, data_port, client_flow_port, sniffer_port, sniffer_multicast_ip, udpQueueSize, maxSlotsPerSender, encrypted);
+    return new CReceiveManager(server_flow_port, data_port, client_flow_port, udpQueueSize, maxSlotsPerSender, encrypted);
 }
 
 /*

+ 6 - 53
roxie/udplib/udptrs.cpp

@@ -38,7 +38,6 @@ unsigned udpOutQsPriority = 0;
 unsigned udpMaxRetryTimedoutReqs = 0; // 0 means off (keep retrying forever)
 unsigned udpRequestToSendTimeout = 0; // value in milliseconds - 0 means calculate from query timeouts
 unsigned udpRequestToSendAckTimeout = 10; // value in milliseconds
-bool udpSnifferEnabled = false;
 
 #ifdef _DEBUG
 //#define TEST_DROPPED_PACKETS
@@ -840,53 +839,13 @@ class CSendManager : implements ISendManager, public CInterface
     class send_data : public StartedThread 
     {
         CSendManager &parent;
-        ISocket     *sniffer_socket;
-        SocketEndpoint ep;
         simple_queue<UdpPermitToSendMsg> send_queue;
         Linked<TokenBucket> bucket;
 
-        void send_sniff(sniffType::sniffCmd busy)
-        {
-            sniff_msg msg = { busy, parent.myIP};
-            try 
-            {
-                if (!sniffer_socket) 
-                {
-                    sniffer_socket = ISocket::multicast_connect(ep, multicastTTL);
-                    if (udpTraceLevel > 2)
-                    {
-                        StringBuffer url;
-                        DBGLOG("UdpSender: multicast_connect ok to %s", ep.getUrlStr(url).str());
-                    }
-                }
-                sniffer_socket->write(&msg, sizeof(msg));
-                if (udpTraceLevel > 2)
-                    DBGLOG("UdpSender: sent busy=%d multicast msg", busy);
-            }
-            catch(IException *e) 
-            {
-                StringBuffer s;
-                StringBuffer url;
-                DBGLOG("UdpSender: multicast_connect or write failed ep=%s - %s", ep.getUrlStr(url).str(), e->errorMessage(s).str());
-                e->Release();
-            }
-            catch(...) 
-            {
-                StringBuffer url;
-                DBGLOG("UdpSender: multicast_connect or write unknown exception - ep=%s", ep.getUrlStr(url).str());
-                if (sniffer_socket) 
-                {
-                    sniffer_socket->Release();
-                    sniffer_socket = NULL;
-                }
-            }
-        }
-
     public:
-        send_data(CSendManager &_parent, int s_port, const IpAddress &snif_ip, TokenBucket *_bucket)
-            : StartedThread("UdpLib::send_data"), parent(_parent), bucket(_bucket), ep(s_port, snif_ip), send_queue(100) // MORE - send q size should be configurable and/or related to size of cluster?
+        send_data(CSendManager &_parent, TokenBucket *_bucket)
+            : StartedThread("UdpLib::send_data"), parent(_parent), bucket(_bucket), send_queue(100) // MORE - send q size should be configurable and/or related to size of cluster?
         {
-            sniffer_socket = NULL;
             if (check_max_socket_write_buffer(udpLocalWriteSocketSize) < 0) 
                 throw MakeStringException(ROXIE_UDP_ERROR, "System Socket max write buffer is less than %i", udpLocalWriteSocketSize);
             start();
@@ -898,8 +857,6 @@ class CSendManager : implements ISendManager, public CInterface
             UdpPermitToSendMsg dummy = {};
             send_queue.push(dummy);
             join();
-            if (sniffer_socket) 
-                sniffer_socket->Release();
         }   
 
         bool ok_to_send(const UdpPermitToSendMsg &msg) 
@@ -928,12 +885,8 @@ class CSendManager : implements ISendManager, public CInterface
                 if (!running)
                     return 0;
 
-                if (udpSnifferEnabled)
-                    send_sniff(sniffType::busy);
                 UdpReceiverEntry &receiverInfo = parent.receiversTable[permit.destNode];
                 unsigned payload = receiverInfo.sendData(permit, bucket);
-                if (udpSnifferEnabled)
-                    send_sniff(sniffType::idle);
                 
                 if (udpTraceLevel > 2)
                 {
@@ -976,7 +929,7 @@ class CSendManager : implements ISendManager, public CInterface
 public:
     IMPLEMENT_IINTERFACE;
 
-    CSendManager(int server_flow_port, int data_port, int client_flow_port, int sniffer_port, const IpAddress &sniffer_multicast_ip, int q_size, int _numQueues, const IpAddress &_myIP, TokenBucket *_bucket, bool _encrypted)
+    CSendManager(int server_flow_port, int data_port, int client_flow_port, int q_size, int _numQueues, const IpAddress &_myIP, TokenBucket *_bucket, bool _encrypted)
         : bucket(_bucket),
           myIP(_myIP),
           receiversTable([_numQueues, q_size, server_flow_port, data_port, _encrypted](const ServerIdentifier ip) { return new UdpReceiverEntry(ip.getIpAddress(), _numQueues, q_size, server_flow_port, data_port, _encrypted);}),
@@ -986,7 +939,7 @@ public:
         setpriority(PRIO_PROCESS, 0, -3);
 #endif
         numQueues = _numQueues;
-        data = new send_data(*this, sniffer_port, sniffer_multicast_ip, bucket);
+        data = new send_data(*this, bucket);
         resend_flow = new send_resend_flow(*this);
         receive_flow = new send_receive_flow(*this, client_flow_port);
     }
@@ -1043,10 +996,10 @@ public:
 
 };
 
-ISendManager *createSendManager(int server_flow_port, int data_port, int client_flow_port, int sniffer_port, const IpAddress &sniffer_multicast_ip, int queue_size_pr_server, int queues_pr_server, TokenBucket *rateLimiter, bool encryptionInTransit)
+ISendManager *createSendManager(int server_flow_port, int data_port, int client_flow_port, int queue_size_pr_server, int queues_pr_server, TokenBucket *rateLimiter, bool encryptionInTransit)
 {
     assertex(!myNode.getIpAddress().isNull());
-    return new CSendManager(server_flow_port, data_port, client_flow_port, sniffer_port, sniffer_multicast_ip, queue_size_pr_server, queues_pr_server, myNode.getIpAddress(), rateLimiter, encryptionInTransit);
+    return new CSendManager(server_flow_port, data_port, client_flow_port, queue_size_pr_server, queues_pr_server, myNode.getIpAddress(), rateLimiter, encryptionInTransit);
 }
 
 class CMessagePacker : implements IMessagePacker, public CInterface

+ 2 - 16
roxie/udplib/uttest.cpp

@@ -183,7 +183,7 @@ public:
             rcvMgr.setown(createAeronReceiveManager(myEP, false));
         }
         else
-            rcvMgr.setown(createReceiveManager(7000, 7001, 7002, 7003, multicastIP, udpQueueSize, maxPacketsPerSender, false));
+            rcvMgr.setown(createReceiveManager(7000, 7001, 7002, udpQueueSize, maxPacketsPerSender, false));
         Owned<roxiemem::IRowManager> rowMgr = roxiemem::createRowManager(0, NULL, queryDummyContextLogger(), NULL, false);
         Owned<IMessageCollator> collator = rcvMgr->createMessageCollator(rowMgr, 1);
         unsigned lastReport = 0;
@@ -293,7 +293,7 @@ void testNxN()
     if (useAeron)
         sendMgr.setown(createAeronSendManager(7000, udpNumQs, myNode.getIpAddress(), false));
     else
-        sendMgr.setown(createSendManager(7000, 7001, 7002, 7003, multicastIP, 100, udpNumQs, NULL, false));
+        sendMgr.setown(createSendManager(7000, 7001, 7002, 100, udpNumQs, NULL, false));
     Receiver receiver;
 
     IMessagePacker **packers = new IMessagePacker *[numNodes];
@@ -681,13 +681,6 @@ int main(int argc, char * argv[] )
                     usage();
                 udpLocalWriteSocketSize = atoi(argv[c]);
             }
-            else if (strcmp(ip, "--udpRetryBusySenders")==0)
-            {
-                c++;
-                if (c==argc)
-                    usage();
-                udpRetryBusySenders = atoi(argv[c]);
-            }
             else if (strcmp(ip, "--maxPacketsPerSender")==0)
             {
                 c++;
@@ -695,13 +688,6 @@ int main(int argc, char * argv[] )
                     usage();
                 maxPacketsPerSender = atoi(argv[c]);
             }
-            else if (strcmp(ip, "--udpSnifferEnabled")==0)
-            {
-                c++;
-                if (c==argc)
-                    usage();
-                udpSnifferEnabled = atoi(argv[c]) != 0;
-            }
             else if (strcmp(ip, "--udpTraceLevel")==0)
             {
                 c++;

+ 0 - 2
testing/regress/environment.xml.in

@@ -152,10 +152,8 @@
                 udpQueueSize="100"
                 udpRequestToSendTimeout="5"
                 udpResendEnabled="false"
-                udpRetryBusySenders="0"
                 udpSendCompletedInData="false"
                 udpSendQueueSize="50"
-                udpSnifferEnabled="true"
                 udpTraceLevel="1"
                 useHardLink="false"
                 useLogQueue="true"