@@ -9,11 +9,10 @@ import ProjectM36.Server.Config (ServerConfig(..))
9import Control.Monad.IO.Class (liftIO)
9import Control.Monad.IO.Class (liftIO)
10import Network.Transport.TCP (createTransport, defaultTCPParameters)
10import Network.Transport.TCP (createTransport, defaultTCPParameters)
11import Network.Transport (EndPointAddress(..), newEndPoint, address)
11import Network.Transport (EndPointAddress(..), newEndPoint, address)
12−import Control.Distributed.Process.Node (initRemoteTable, runProcess, newLocalNode)
12+import Control.Distributed.Process.Node (initRemoteTable, runProcess, newLocalNode, initRemoteTable)
13import Control.Distributed.Process.Extras.Time (Delay(..))
13import Control.Distributed.Process.Extras.Time (Delay(..))
14−import Control.Distributed.Process (Process, register, RemoteTable, getSelfPid)
14+import Control.Distributed.Process (Process, register, getSelfPid)
15import Control.Distributed.Process.ManagedProcess (defaultProcess, UnhandledMessagePolicy(..), ProcessDefinition(..), handleCall, serve, InitHandler, InitResult(..))
15import Control.Distributed.Process.ManagedProcess (defaultProcess, UnhandledMessagePolicy(..), ProcessDefinition(..), handleCall, serve, InitHandler, InitResult(..))
16−import qualified Control.Distributed.Process.Extras.Internal.Types as DIT
17import Control.Concurrent.MVar (putMVar, MVar)
16import Control.Concurrent.MVar (putMVar, MVar)
18import System.IO (stderr, hPutStrLn)
17import System.IO (stderr, hPutStrLn)
@@ -62,9 +61,6 @@ initServer (conn, dbname, mAddressMVar, saddress) = do
62 --traceShowM ("server started on " ++ show saddress)
61 --traceShowM ("server started on " ++ show saddress)
63 pure $ InitOk conn Infinity
62 pure $ InitOk conn Infinity
65−remoteTable :: RemoteTable
66−remoteTable = DIT.__remoteTable initRemoteTable
68registerDB :: DatabaseName -> Process ()
64registerDB :: DatabaseName -> Process ()
69registerDB dbname = do
65registerDB dbname = do
70 self <- getSelfPid
66 self <- getSelfPid
@@ -95,7 +91,7 @@ launchServer daemonConfig mAddressMVar = do
95 case eEndpoint of
91 case eEndpoint of
96 Left err -> hPutStrLn stderr ("Failed to create transport: " ++ show err) >> pure False
92 Left err -> hPutStrLn stderr ("Failed to create transport: " ++ show err) >> pure False
97 Right endpoint -> do
93 Right endpoint -> do
98− localTCPNode <- newLocalNode transport remoteTable
94+ localTCPNode <- newLocalNode transport initRemoteTable
99 --traceShowM ("newLocalNode in Server " ++ show (localNodeId localTCPNode))
95 --traceShowM ("newLocalNode in Server " ++ show (localNodeId localTCPNode))
100 runProcess localTCPNode $ do
96 runProcess localTCPNode $ do
101 let testBool = testMode daemonConfig
97 let testBool = testMode daemonConfig