X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/b4193f8dcb043ee338cc7ffb756037bce5c256cd..b77b6baea7aa7e0d4e2fe4772a850af6dbf233d7:/TODO?ds=sidebyside diff --git a/TODO b/TODO index b2e95ff946..b007e4c00b 100644 --- a/TODO +++ b/TODO @@ -2,6 +2,20 @@ ### Ongoing stuff ### +Document the fact that gras processes display the backtrace on sigusr and sigint +Document XBT_LOG_EXTERNAL_DEFAULT_CATEGORY +Document host module + +/* FIXME: better place? */ +int vasprintf (char **ptr, const char *fmt, va_list ap); +char *bprintf(const char*fmt, ...) _XBT_GNUC_PRINTF(1,2); + +Module renamings: + - rename SWAG to RING? + - Rename cursor to iterator + +gras_socket_close should be blocking until all the data sent have been +received by the other side (implemented with an ACK mechanism). ### ### Planned @@ -26,14 +40,14 @@ (errors, logs ; dynars, dicts, hooks, pools; config, rrdb) [portability layer] - * Mallocators and/or memory pool so that we can cleanly kill an actor + * maybe a memory pool so that we can cleanly kill an actor [errors/exception] * Better split casual errors from programing errors. The first ones should be repported to the user, the second should kill the program (or, yet better, only the msg handler) * Allows the use of an error handler depending on the current module (ie, - the same philosophy than log4c using GSL's error functions) + the same philosophy as log4c using GSL's error functions) [logs] * Hijack message from a given category to another for a while (to mask @@ -43,12 +57,8 @@ * Several appenders; fix the setting stuff to change the appender * more logging appenders (take those from Ralf in l2) -[dict] - * speed up the cursors, for example using the contexts when available - [modules] - * better formalisation of what modules are (amok deeply needs it) - configuration + init() + exit() + dependencies + * Add configuration and dependencies to our module definition * allow to load them at runtime check in erlang how they upgrade them without downtime @@ -56,13 +66,14 @@ * we may need a round-robin database module, and a statistical one * a hook module *may* help cleaning up some parts. Not sure yet. * Some of the datacontainer modules seem to overlap. Kill some of them? + - replace fifo with dynars + - replace set with SWAG * * GRAS ****** [doc] - * add the token ring as official example * implement the P2P protocols that macedon does. They constitute great examples, too @@ -114,13 +125,6 @@ Depends on the previous item; difficult to achieve with firewalls [datadesc] - * Implement gras_datadesc_cpy to speedup things in the simulator - (and allow to have several "actors" within the same unix process). - For now, we mimick closely the RL even in SG. It was easier to do - since the datadesc layer is unchanged, but it is not needed and - hinders performance. - gras_datadesc_cpy needs to provide the size of the corresponding messages, so - that we can report it into the simulator. * Add a XML wire protocol alongside to the binary one (for SOAP/HTTP) * cbps: - Error handling @@ -135,7 +139,8 @@ * Parsing macro - Cleanup the code (bison?) - Factorize code in union/struct field adding - - Handle typedefs (needs love from DataDesc/) + - Handle typedefs (gras_datatype_copy can be usefull, but only if + main type is already defined) - Handle unions with annotate - Handle enum - Handle long long and long double @@ -151,18 +156,8 @@ * gras_datadesc_import_nws? [Messaging] - * A proper RPC mecanism - - gras_rpctype_declare_v (name,ver, payload_request, payload_answer) - (or gras_msgtype_declare_rpc_v). - - Attaching a cb works the same way. - - gras_msg_rpc(peer, &request, &answer) - - On the wire, a byte indicate the message type: - - 0: one-way message (what we have for now) - - 1: method call (answer expected; sessionID attached) - - 2: successful return (usual datatype attached, with sessionID) - - 3: error return (payload = exception) - - other message types are possible (forwarding request, group - communication) + * Other message types than oneway & RPC are possible: + - forwarding request, group communication * Message priority * Message forwarding * Group communication @@ -195,10 +190,9 @@ ****** [bandwidth] - * finish this module (still missing the saturate part) * add a version guessing the appropriate datasizes automatically [other modules] * provide a way to retrieve the host load as in NWS * log control, management, dynamic token ring * a way using SSH to ask a remote host to open a socket back on me - + \ No newline at end of file