config files problem

Added by Hialmar over 7 years ago

Hello,

I have recently done an
hg pull && hg update

And now I have the following errors when starting admin_service:

mkdir: cannot create `ras': The file already exists

---------------------------------------------------------------------------------
Starting service launcher
---------------------------------------------------------------------------------
CMDLINE          = src/ryzom_admin_service/ryzom_admin_service --fulladminname=admin_service --shortadminname=AS -C. -L. --nobreak --writepid
CTRL_FILE        = ras/ras.launch_ctrl
NEXT_CTRL_FILE   = ras/ras.deferred_launch_ctrl
STATE_FILE       = ras/ras.state
---------------------------------------------------------------------------------

Press ENTER to launch program
cp: target `welcome_service_default.cfg' is not a directory
-----------------------------------------------------------------------
Launching ...

INF b4b2e710 command.cpp 145 registerNamedCommandHandler <Unknown> : CCommandRegistry : adding commands handler for class 'CModuleManager'
INF b4b2e710 module_manager.cpp 228 addModuleFactoryRegistry <Unknown> : Adding module 'AdminExecutorService' factory
INF b4b2e710 module_manager.cpp 228 addModuleFactoryRegistry <Unknown> : Adding module 'AdminExecutorServiceClient' factory
INF b4b2e710 module_manager.cpp 228 addModuleFactoryRegistry <Unknown> : Adding module 'AdminService' factory
INF b4b2e710 module_manager.cpp 228 addModuleFactoryRegistry <Unknown> : Adding module 'LocalGateway' factory
INF b4b2e710 module_manager.cpp 228 addModuleFactoryRegistry <Unknown> : Adding module 'StandardGateway' factory
INF b4b2e710 service.cpp 252 cbDirectoryChanged AS : SERVICE: 'ConfigDirectory' changed to '/export/home/vortex/USERS/torguet/ryzom/code/ryzom/server/'
INF b4b2e710 service.cpp 252 cbDirectoryChanged AS : SERVICE: 'LogDirectory' changed to '/export/home/vortex/USERS/torguet/ryzom/code/ryzom/server/'
INF b4b2e710 service.cpp 252 cbDirectoryChanged AS : SERVICE: 'ConfigDirectory' changed to '/export/home/vortex/USERS/torguet/ryzom/code/ryzom/server/'
DBG b4b2e710 config_file.cpp 392 reparse AS : CF: Adding config file '/export/home/vortex/USERS/torguet/ryzom/code/ryzom/server/admin_service.cfg' in the config file
INF b4b2e710 i18n.cpp 592 _readTextFile AS : Preprocess: In file /export/home/vortex/USERS/torguet/ryzom/code/ryzom/server/admin_service.cfg(8) : Including 'admin_service_default.cfg'
INF b4b2e710 i18n.cpp 592 _readTextFile AS : Preprocess: In file admin_service_default.cfg(1) : Including 'common.cfg'
WRN b4b2e710 config_file.cpp 426 reparse AS : CF: Parsing error in file (null) line 0, look in 'debug_admin_service.cfg' for a preprocessed version of the config file
INF b4b2e710 config_file.h 337 EParseError AS : CF: Exception will be launched: Parse error on the "/export/home/vortex/USERS/torguet/ryzom/code/ryzom/server/admin_service.cfg" file, line 0
terminate called after throwing an instance of 'NLMISC::EParseError'
  what():  Parse error on the "/export/home/vortex/USERS/torguet/ryzom/code/ryzom/server/admin_service.cfg" file, line 0
/home/torguet/home-vortex/ryzom/code/ryzom/tools/scripts/linux/service_launcher.sh: line 102: 24834 Abandon                 (core dumped) $CTRL_CMDLINE
-----------------------------------------------------------------------
Press ENTER to relaunch

I have looked in the config files but everything seems logical and exactly the same as in mercurial.

Here is the debug_admin_service.cfg:

#fileline "/export/home/vortex/USERS/torguet/ryzom/code/ryzom/server/admin_service.cfg" 1
// Use with commandline: ryzom_admin_service --fulladminname=ryzom_admin_service --shortadminname=AS -C. -L. --nobreak --writepid

// ---- config local variables

ASWebPort="46700";
ASPort="46701";

#fileline "admin_service_default.cfg" 1
#fileline "common.cfg" 1
// ---- config local variables

// Used by ConfigFile in EGS and WS
ShardId = 302; 

// Used by CVariable in WS
PlayerLimit = 5000; 

// Used to connect to AES (this file) and to set up AES service (admin_executor_service.cfg)
AESPort="46702";
AESHost="localhost";

// ---- service NeL variables (used by ConfigFile class)

WindowStyle = "WIN";

// don't connect to the old NeLNS AES
DontUseAES = 1;

// Configure module gateway for layer 5 module comm
StartCommands +=
{
    // Create a gateway module
    "moduleManager.createModule StandardGateway gw",
    // add a layer 5 transport
    "gw.transportAdd L5Transport l5",
    // open the transport
    "gw.transportCmd l5(open)",

    /// Create default connection with admin executor service
    // Create a gateway module
    "moduleManager.createModule StandardGateway gw_aes",
    // create the admin executor service module
    "moduleManager.createModule AdminExecutorServiceClient aes_client",
    "aes_client.plug gw_aes",

    // create a layer 3 client to connect to aes gateway
    "gw_aes.transportAdd L3Client aes_l3c",
    "gw_aes.transportCmd aes_l3c(connect addr="+AESHost+":"+AESPort+")",
};

NSHost = "localhost";

// A list of vars to graph for any service
GraphVars +=
{
    "ProcessUsedMemory", "60000",    // every minute
};

IgnoredFiles = { "continent.cfg", "__read_me.txt", "bandit.html", "flora_primr.primitive" };

// Set a mainland SessionId.
// Live: Must be 0 for ring shards, non-zero (usually ShardId) for mainland shards
// Dev: Can be non-zero to initially connect a client to a ring shard
NoWSShardId = ShardId;

// ---- service NeL variables (used by CVariable class)

// Disable generation / display of nldebug messages
DisableNLDebug = 1;

// Disable nel net verbose logging
VerboseNETTC = 0;
VerboseLNETL0 = 0;
VerboseLNETL1 = 0;
VerboseLNETL2 = 0;
VerboseLNETL3 = 0;
VerboseLNETL4 = 0;
VerboseLNETL5 = 0;
VerboseLNETL6 = 0;

// If the update loop is too slow, a thread will produce an assertion.
// By default, the value is set to 10 minutes.
// Set to 0 for no assertion.
UpdateAssertionThreadTimeout = 6000000;

// how to sleep between 2 network updates
// 0 = pipe
// 1 = usleep
// 2 = nanosleep
// 3 = sched_yield
// 4 = nothing
UseYieldMethod = 0;

DefaultMaxExpectedBlockSize = 200000000; // 200 M !
DefaultMaxSentBlockSize = 200000000; // 200 M !

// Will SaveFilesDirectory will be converted to a full path?
ConvertSaveFilesDirectoryToFullPath = 0;

// Where to save specific shard data (ie: player backup), relatively to SaveShardRoot
SaveFilesDirectory    = "";

// where to save generic shard data (ie: packed_sheet)
WriteFilesDirectory    = "data_shard";

// ---- service custom variables (used by ConfigFile class)

// ---- service custom variables (used by CVariable class)
#fileline "admin_service_default.cfg" 2

DontUseNS = 1;

RRDToolPath = "rrdtool";

RRDVarPath = "save_shard/rrd_graphs";

// Variables required to be defined by other cfgs

//AESHost="localhost";

//ASWebPort="46700";

//ASPort="46701";

StartCommands +=

{

    // create the admin service module and open the web interface

    "moduleManager.createModule AdminService as webPort="+ASWebPort,

    // create a gateway for aes to connect

    "moduleManager.createModule StandardGateway as_gw",

    // create a layer 3 server

    "as_gw.transportAdd L3Server l3s",

    "as_gw.transportOptions l3s(PeerInvisible)",

    "as_gw.transportCmd l3s(open port="+ASPort+")",

    // plug the as

    "as.plug as_gw",

};

#fileline "/export/home/vortex/USERS/torguet/ryzom/code/ryzom/server/admin_service.cfg" 9

// ---- service NeL variables (used by ConfigFile class)

AESAliasName= "ras";

Paths = {
    ".",
};

// ---- service NeL variables (used by CVariable class)

// ---- service custom variables (used by ConfigFile class)

// ---- service custom variables (used by CVariable class)

Thanks for any advice,
Patrice


Replies (4)

RE: config files problem - Added by Hialmar over 7 years ago

Just a note that I have restored from an old backup and everything works.

I have no idea what changed between both except for the "hg update" which doesn't seem related (the config files are exactly the same - I checked with diff).

RE: config files problem - Added by molator over 7 years ago

Looks like the services chain crashing issue.
Didn't you use WITH_STATIC and WITH_STATIC_DRIVERS on the first time ?

Or did you change something in the config of the service ?

RE: config files problem - Added by Hialmar over 7 years ago

I'm 99% sure I used WITH_STATIC.
WITH_STATIC_DRIVERS is for the client only isn't it ?

Edit: that's it. I suppose I forgot the WITH_STATIC in the last server compilation I did :(

Sorry for bothering you.

RE: config files problem - Added by Hialmar over 7 years ago

I think I have found my problem.

While trying to solve a problem with the static client compilation, I have started compiling debug versions of Ryzom.
This apparently acted strangely.

Now each time I compile I end up with two versions of the server executables.
For example for session_browser:
- session_browser_server is a dynamically linked executable;
- session_browser_server_debug which looks like a statically linked debug executable.

The statically linked non debug executable seems to be in the build/bin directory.
Therefore after compiling the servers I need to copy them back to the ryzom/server/src directories.

This last step is described here:
http://dev.ryzom.com/wiki/ryzom/ConfigureForLinux
In the "Running the shard" part.
I completely forgot about it.

Thanks for all the help.

cmake is still quite difficult to understand for me.
I am used to the classical "./configure && make" way of building and need to adapt :)

(1-4/4)