1
1
/*
2
- Copyright (c) 2003, 2020, Oracle and/or its affiliates. All rights reserved.
2
+ Copyright (c) 2003, 2020, Oracle and/or its affiliates.
3
3
4
4
This program is free software; you can redistribute it and/or modify
5
5
it under the terms of the GNU General Public License, version 2.0,
35
35
#include " Multi_Transporter.hpp"
36
36
#include " Loopback_Transporter.hpp"
37
37
38
- #ifndef WIN32
38
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
39
39
#include " SHM_Transporter.hpp"
40
40
#endif
41
41
@@ -295,7 +295,9 @@ TransporterRegistry::TransporterRegistry(TransporterCallback *callback,
295
295
296
296
allTransporters = new Transporter* [maxTransporters];
297
297
theTCPTransporters = new TCP_Transporter * [maxTransporters];
298
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
298
299
theSHMTransporters = new SHM_Transporter * [maxTransporters];
300
+ #endif
299
301
theTransporterTypes = new TransporterType [MAX_NODES];
300
302
theNodeIdTransporters = new Transporter * [MAX_NODES];
301
303
theMultiTransporters = new Multi_Transporter * [MAX_NODES];
@@ -337,7 +339,9 @@ TransporterRegistry::TransporterRegistry(TransporterCallback *callback,
337
339
{
338
340
allTransporters[i] = NULL ;
339
341
theTCPTransporters[i] = NULL ;
342
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
340
343
theSHMTransporters[i] = NULL ;
344
+ #endif
341
345
}
342
346
theMultiTransporterMutex = NdbMutex_Create ();
343
347
DBUG_VOID_RETURN;
@@ -374,7 +378,9 @@ TransporterRegistry::~TransporterRegistry()
374
378
375
379
delete[] allTransporters;
376
380
delete[] theTCPTransporters;
381
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
377
382
delete[] theSHMTransporters;
383
+ #endif
378
384
delete[] theTransporterTypes;
379
385
delete[] theMultiTransporters;
380
386
delete[] theNodeIdTransporters;
@@ -405,10 +411,12 @@ TransporterRegistry::removeAll()
405
411
{
406
412
delete theTCPTransporters[i];
407
413
}
414
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
408
415
for (Uint32 i = 0 ; i < nSHMTransporters; i++)
409
416
{
410
417
delete theSHMTransporters[i];
411
418
}
419
+ #endif
412
420
for (Uint32 i = 0 ; i < nMultiTransporters; i++)
413
421
{
414
422
delete theMultiTransporters[i];
@@ -427,7 +435,7 @@ TransporterRegistry::disconnectAll(){
427
435
{
428
436
theTCPTransporters[i]->doDisconnect ();
429
437
}
430
- #ifndef WIN32
438
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
431
439
for (Uint32 i = 0 ; i < nSHMTransporters; i++)
432
440
{
433
441
theSHMTransporters[i]->doDisconnect ();
@@ -901,7 +909,7 @@ TransporterRegistry::createMultiTransporter(Uint32 node_id, Uint32 num_trps)
901
909
new_trp->set_multi_transporter_instance (i + 1 );
902
910
theTCPTransporters[nTCPTransporters++] = new_trp;
903
911
}
904
- #ifndef WIN32
912
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
905
913
else if (type == tt_SHM_TRANSPORTER)
906
914
{
907
915
SHM_Transporter *shm_trp = (SHM_Transporter*)base_trp;
@@ -960,7 +968,7 @@ TransporterRegistry::createTCPTransporter(TransporterConfiguration *config) {
960
968
bool
961
969
TransporterRegistry::createSHMTransporter (TransporterConfiguration *config)
962
970
{
963
- #ifndef WIN32
971
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
964
972
DBUG_ENTER (" TransporterRegistry::createTransporter SHM" );
965
973
966
974
/* Don't use index 0, special use case for extra transporters */
@@ -1386,7 +1394,7 @@ TransporterRegistry::poll_SHM(TransporterReceiveHandle& recvdata,
1386
1394
1387
1395
Uint32 retVal = 0 ;
1388
1396
any_connected = false ;
1389
- #ifndef WIN32
1397
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1390
1398
for (Uint32 i = 0 ; i < recvdata.nSHMTransporters ; i++)
1391
1399
{
1392
1400
SHM_Transporter * t = theSHMTransporters[i];
@@ -1415,7 +1423,7 @@ TransporterRegistry::spin_check_transporters(
1415
1423
TransporterReceiveHandle& recvdata)
1416
1424
{
1417
1425
Uint32 res = 0 ;
1418
- #ifndef WIN32
1426
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1419
1427
Uint64 micros_passed = 0 ;
1420
1428
bool any_connected = false ;
1421
1429
Uint64 spintime = Uint64 (recvdata.m_spintime );
@@ -1468,7 +1476,7 @@ TransporterRegistry::pollReceive(Uint32 timeOutMillis,
1468
1476
timeOutMillis = 0 ;
1469
1477
retVal = 1 ;
1470
1478
}
1471
- #ifndef WIN32
1479
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1472
1480
if (recvdata.nSHMTransporters > 0 )
1473
1481
{
1474
1482
/* *
@@ -1532,7 +1540,7 @@ TransporterRegistry::pollReceive(Uint32 timeOutMillis,
1532
1540
}
1533
1541
#endif
1534
1542
retVal |= check_TCP (recvdata, timeOutMillis);
1535
- #ifndef WIN32
1543
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1536
1544
if (recvdata.nSHMTransporters > 0 )
1537
1545
{
1538
1546
/* *
@@ -1580,7 +1588,7 @@ TransporterRegistry::reset_shm_awake_state(TransporterReceiveHandle& recvdata,
1580
1588
bool & sleep_state_set)
1581
1589
{
1582
1590
int res = 0 ;
1583
- #ifndef WIN32
1591
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1584
1592
for (Uint32 i = 0 ; i < recvdata.nSHMTransporters ; i++)
1585
1593
{
1586
1594
SHM_Transporter * t = theSHMTransporters[i];
@@ -1622,7 +1630,7 @@ TransporterRegistry::reset_shm_awake_state(TransporterReceiveHandle& recvdata,
1622
1630
void
1623
1631
TransporterRegistry::set_shm_awake_state (TransporterReceiveHandle& recvdata)
1624
1632
{
1625
- #ifndef WIN32
1633
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1626
1634
for (Uint32 i = 0 ; i < recvdata.nSHMTransporters ; i++)
1627
1635
{
1628
1636
SHM_Transporter * t = theSHMTransporters[i];
@@ -1685,7 +1693,7 @@ TransporterRegistry::poll_TCP(Uint32 timeOutMillis,
1685
1693
}
1686
1694
}
1687
1695
1688
- #ifndef WIN32
1696
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1689
1697
for (Uint32 j = 0 ; j < recvdata.nSHMTransporters ; j++)
1690
1698
{
1691
1699
/* *
@@ -1737,7 +1745,7 @@ TransporterRegistry::poll_TCP(Uint32 timeOutMillis,
1737
1745
}
1738
1746
}
1739
1747
}
1740
- #ifndef WIN32
1748
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1741
1749
for (Uint32 j = 0 ; j < recvdata.nSHMTransporters ; j++)
1742
1750
{
1743
1751
/* *
@@ -1895,7 +1903,7 @@ TransporterRegistry::performReceive(TransporterReceiveHandle& recvdata,
1895
1903
}
1896
1904
else
1897
1905
{
1898
- #ifndef WIN32
1906
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1899
1907
require (transp->getTransporterType () == tt_SHM_TRANSPORTER);
1900
1908
SHM_Transporter * t = (SHM_Transporter*)transp;
1901
1909
assert (recvdata.m_transporters .get (trp_id));
@@ -1980,7 +1988,7 @@ TransporterRegistry::performReceive(TransporterReceiveHandle& recvdata,
1980
1988
}
1981
1989
else
1982
1990
{
1983
- #ifndef WIN32
1991
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
1984
1992
require (t->getTransporterType () == tt_SHM_TRANSPORTER);
1985
1993
SHM_Transporter *t_shm = (SHM_Transporter*)t;
1986
1994
Uint32 * readPtr, * eodPtr, * endPtr;
@@ -3133,7 +3141,7 @@ TransporterRegistry::update_connections(TransporterReceiveHandle& recvdata,
3133
3141
3134
3142
switch (performStates[nodeId]){
3135
3143
case CONNECTED:
3136
- #ifndef WIN32
3144
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
3137
3145
if (t->getTransporterType () == tt_SHM_TRANSPORTER)
3138
3146
{
3139
3147
SHM_Transporter *shm_trp = (SHM_Transporter*)t;
@@ -3482,7 +3490,7 @@ TransporterRegistry::startReceiving()
3482
3490
{
3483
3491
DBUG_ENTER (" TransporterRegistry::startReceiving" );
3484
3492
3485
- #ifndef WIN32
3493
+ #ifdef NDB_SHM_TRANSPORTER_SUPPORTED
3486
3494
m_shm_own_pid = getpid ();
3487
3495
#endif
3488
3496
DBUG_VOID_RETURN;
0 commit comments