Log of /trunk/proof/proofx/inc/TXProofServ.h
Parent Directory
Revision
29233 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jun 26 08:07:47 2009 UTC (5 years, 6 months ago) by
brun
File length: 2564 byte(s)
Diff to
previous 27034
From Gerri:
there is a obsolete method still defined in TXProofServ.h
without implementation. This was only detected at runtime and only on OpenSolaris.
Revision
27034 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Dec 19 15:30:06 2008 UTC (6 years, 1 month ago) by
ganis
File length: 2616 byte(s)
Diff to
previous 26993
From Jan: prepare for query-enqueing support:
- add new protocol message to resume an enqueued session
- add framework to process enqueued queries after a resume: the processing part on masters
has been moved to a new method ProcessNext which is called also after a resume request.
- remove duplication in the definition of message types for SendCoordinator
(same codes defined in XProofProtocol.h and TXSocket.h)
Revision
26993 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Dec 17 16:01:04 2008 UTC (6 years, 1 month ago) by
rdm
File length: 2512 byte(s)
Diff to
previous 26951
From Gerri:
- Fix a problem with filtering the SvcMsg in TProofMgrLite::GetSessionLogs
- Fix a weird backward-compatibility problem in TProof::SendFile (found
and needed by ALICE)
- Update the release notes
Revision
26951 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Dec 16 12:04:38 2008 UTC (6 years, 1 month ago) by
ganis
File length: 2564 byte(s)
Diff to
previous 26678
- Fix an issue with uploading packages in rapid sequence
- Fix an issue with TProof::Load() in forced compilation mode ('++')
- Fix an issue with grep in log retrieval
- Fix an issue with ownership of the xrootd log file
- Make sure the XrdProofdProofServMgr::fCurrentSessions is always up-to-date
Revision
26678 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Dec 5 14:53:23 2008 UTC (6 years, 1 month ago) by
ganis
File length: 2512 byte(s)
Diff to
previous 24719
Patch to:
- Add the possibility to set upper limits on the virtual memory (changes in TProofPlayer,
TProofServ, TXProofServ and pmain (separate patch)).
If enebled, the session gets firts a warning when it reaches 80% of the limit, and then
processing is stopped whenit exceeds 95% of the limit, sending back the results.
Also, the memory footprint is notified when the session is terminated.
- Make sure the the active valuse in XrdProofWorker are always correct; this was not the
case for dynamic startup as the notification at the end of the query was not done.
This information is crucial or the scheduler.
The way the information is stored in XrdProofdProofServ had to be modified
and a new internal message type (kReleaseWorker) added.
(Changes in several proofd classes, TProof, TXsocket and TXProofServ)
- Fix problem with setting a static upper limit of the sessions that can be started,
and enable this functionality for the dynamic mode (changes in XrdProofSched)
- Remove a deleted worker from all the lists in TProof::MarkBad to avoid later attempts of use.
- Better control the use of the internal pipe for socket readiness notification in TXSocket.
Revision
24719 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jul 9 07:07:25 2008 UTC (6 years, 6 months ago) by
ganis
File length: 2463 byte(s)
Diff to
previous 24574
Patch refactorizing the XrdProofd plugin.
The class XrdProofdProtocol is now in charge only of the operations strctly related
to the XProofd protocol. All auxilliary services have been moved to dedicated service
classes controlled by XrdProofdManager. In particular:
- XrdProofdClientMgr handles the clients (represented by instances of XrdProofdClient)
including login, authentication and access control
- XrdProofdProofServMgr handles the PROOF sessions (represented by instances of
XrdProofdProofServ) including creation, attachment, detachment, destruction and
environment setting
- XrdProofdNetMgr handles connections between instances of XProofd running on different
nodes
- XrdProofdPriorityMgr handles the session priorities
A special effort has been done to get rid of all possible internal dead-lock situations.
Internal actions on clients and sessions are now all asynchronous, governed by internal
pipes.
The new plugin also offers new functionality, among which:
- a XProofd admin area, located under <xrd.admin>/.xproof.<port>, keeps information about
active and terminated sessions, and the minimal state for active clients. This is used
to reguraly check the client and session activity, to cleanup orphalin sessions and
to shutdown inactive client connections.
In particular this allows a more solid implementation of Reset, which now exists in two
flavours: 'soft', TProof::Reset(<masterurl>), (default) asks the sessions to terminate gently;
'hard', TProof::Reset(<masterurl>,kTRUE) schedules all sessions for forced termination.
- support for automatic attempts for reconnection in the case the daemon restarts.
This allows to reconfigure the plugin by xrootd restart w/o affecting the running
sessions.
- support the definition of workers via config file directive, getting de facto rid of
the proof.conf file.
- domain+level control of printout message; the format has been improved: in particular
all information messages contain now the tag 'xpd-I' and all error messages the tag
'xpd-E', so that they can easily be grepped out from the log file.
The Wiki 'XrdProofdDirectives Directives' page has been updated with the new directives.
Revision
24574 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Jun 26 17:06:03 2008 UTC (6 years, 6 months ago) by
ganis
File length: 2534 byte(s)
Diff to
previous 22635
Implement selective sending of logs from workers to master to avoid duplicating
too many text lines on the master log. Logs are now sent only after Exec, Print
requests and in case an error (level >= kError) occured. Of course, the full logs
can always be retrieved via TProofMgr::GetSessionLogs .
Also, remove TXProofServ::SendLogFile, which was reduced to be a duplication of
TProofServ::SendLogFile .
Revision
19008 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jun 12 13:51:41 2007 UTC (7 years, 7 months ago) by
ganis
Original Path:
trunk/proofx/inc/TXProofServ.h
File length: 2677 byte(s)
Diff to
previous 16826
New files:
XrdProofGroup.h, .cxx
- Class describing a group and its properties
XrdProofdClient.h, .cxx
- Class describing a Xpd client (extracted from XrdProofdProtocol.h, .cxx)
XrdROOT.h, .cxx
- Class describing a ROOT version (extracted from XrdProofdProtocol.h, .cxx)
XrdProofdAux.h, .cxx
- Utility tools (extracted from XrdProofdProtocol.h, .cxx)
XrdProofdPlatform.h
- Platform-dependent system includes and defines common to all implementation
files (extracted from XrdProofdProtocol.cxx)
Patched files:
XrdProofdProtocol.h, .cxx
- Adapt to file re-organization
- Rationalization fo the way the relevant info is passed to 'proofserv':
a minimal set of environment variables is kept, the remaining parameters
are passed via a rootrc-like file created in the session working dir
- New directive "xpd.groupfile" to read a file defining groups and their
properties.
- New directive "xpd.datasetdir" to define the root path under which the
user data set dirs are created
- New directive "xpd.putrc" to input rootrc-like directives to be passed
straight to proofserv
TProofServ.cxx, TXProofServ.h, .cxx
- Read the session rootrc in the constructor
- Take relevant parameters from the session rootrc file
TProof.h
- Move protocol number up to 14 to be able to handle backward compatibility
issues due to changes in the info transfer mode between xpd and proofserv
pmain.cxx
- Take loglevel from argc #5
- Use logfile path generated by XrdProofdProtocol.cxx
Revision
16557 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Oct 19 12:38:07 2006 UTC (8 years, 3 months ago) by
rdm
Original Path:
trunk/proofx/inc/TXProofServ.h
File length: 2898 byte(s)
Diff to
previous 15930
From Gerri:
Major set of robustness fixes, improving error reporting and reducing the
startup failures especially observed on AMD64. Summary of changes:
- XrdProofdProtocol.cxx, .h
- Remove zombie treatment: done by XrdScheduler::Reaper()
- Check the modification date of the PROOF config file so that changes
can be picked up on the fly
- Fix problem with the definition of the image
- Improved tracing (see etc/proof/xpd.cf.sample)
- Several bug fixes
- XrdProofConn
- fix problem with marshalling in case of retries.
- TProofServ, TXProofServ
- Add return codes to CreateServer() and Setup() for proper termination
in case of errors
- TProof
- Make sure that TXProofMgr is the last one in the list of sockets for proper
cleaning
Revision
15930 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Sat Aug 5 20:04:47 2006 UTC (8 years, 5 months ago) by
brun
Original Path:
trunk/proofx/inc/TXProofServ.h
File length: 2897 byte(s)
Diff to
previous 15507
From Gerri:
I have realized that the new tarball requires the mods to the XrdProofd plugin
that I wanted to keep separated. This explains the problem on Mac (and also
everywhere the plug-in is build).
It also contains the fix of the problem mention by Fons with selectors from a library.
Revision
15507 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jun 21 16:18:27 2006 UTC (8 years, 7 months ago) by
rdm
Original Path:
trunk/proofx/inc/TXProofServ.h
File length: 2748 byte(s)
Diff to
previous 15338
From Gerri:
The patch implements the following new functionality:
- Shutdown of idle sessions when quitting ROOT; if not idle the session
is shutdown as soon as processing terminates; it is possible to delay
the automatic shutdown by a tunable amount of time via a new directive
in the xrootd config file 'xpd.shutdown' (see xpd.cf.example).
- New static method TProof::Reset(const char *url) to hard-cleanup an
user area (implemented for Xproofd only); this implied quite some
additions in XrdProofdProtocol.
- Possibility to temporary remove / re-insert a worker from the active list
TProof::DeactivateWorker(const char *ord)
TProof::ActivateWorker(const char *ord)
with 'ord' the ordinal numer, e.g. "0.3" .
- A default url for the disk pool
const char *TVirtualProof::GetDataPoolUrl()
It is set by default to a string send back by the master, but it can
be changed via
void TVirtualProof::SetDataPoolUrl(const char *url)
Jan should then adapt his code to use this as default.
- Posibility to timeout Collect; for now this is only used at forced
termination.
The patch includes many small changes and bug fixes. One of the most important
is in TXNetSystem (a bug preventing correct treatment of multiple request
to the same redirector).
Revision
15338 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Jun 5 22:51:14 2006 UTC (8 years, 7 months ago) by
rdm
Original Path:
trunk/proofx/inc/TXProofServ.h
File length: 2677 byte(s)
Diff to
previous 15320
From Gerri:
base/inc/TVirtualProof.h, proof/inc/TProof.h, proof/src/TProof.cxx
proof/src/TProofProgressDialog.cxx:
- fix a problem with the progress dialog when detaching a session:
a new signal CloseProgressDialog() is introduced, as well as the
possibility to empty the list of submitted queries at once via
TProof::Remove().
proofx/inc/TXHandler.h, .cxx:
- add generic argument to HandleInput() and HandleError().
proofx/inc/TXProofMgr.h, .cxx:
- move to new signature for HandleInput(), HandleError().
proof/inc/TSlave.h:
- add method to flush underlying socket.
proofx/inc/TXSlave.h, .cxx:
- move to new signature for HandleInput(), HandleError().
- implement new method to flush underlying socket.
proofx/inc/TXSocket.h, .cxx:
- Add method to flush socket.
- Handle interrupt messages in the reader thread.
- Remove interrupt semaphore (not needed any more).
- Remove timeout argument from GetInterrupt (not needed any more).
proofx/inc/TXProofServ.h, .cxx:
- move to new signature for HandleInput(), HandleError().
- implement interrupt handling in HandleInput().
- implement dedicated version of LockSession to deal with new format
of session tag (this is a bug fix).
proofd/inc/XrdProofConn.h, .cxx:
- Add mutex protection in the SendRecv method (it can be called from both
the reader and main threads).
proofd/src/XrdProofdProtocol.cxx:
- use an asynchronous message (instead of a signal) for interrupts.
proofx/inc/LinkDef.h, TXSocketHandler.h, .cxx, TXUnixSocket.cxx:
- add TXSocketHandler in the dictionary.
- cosmetics.
Revision
15320 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jun 2 23:38:20 2006 UTC (8 years, 7 months ago) by
rdm
Original Path:
trunk/proofx/inc/TXProofServ.h
File length: 2564 byte(s)
Diff to
previous 15312
From Gerri:
- Get rid of the env to communicate the file descriptor to TProofServ.
Also, get rid of Reads. I had to add an argument to the TProofServ
(and TXProofServ) constructor with the 'FILE *' of the open log file.
Using a global required to link with libProof(x) which we droped recently.
- Drop any (for the time being) unused AFS stuff from TProofServ (this
is postponed).
Revision
15312 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jun 2 15:14:35 2006 UTC (8 years, 7 months ago) by
rdm
Original Path:
trunk/proofx/inc/TXProofServ.h
File length: 2541 byte(s)
Diff to
previous 14752
From Gerri:
large PROOF patch. Main issues addressed:
- Output redirection to log file at 'proofserv' startup (instead of
after Setup())
- Log messages activated at session creation
- Session sandbox restructuring in such a way that the unique session
tag, created by the top master, uniquely identifies the session on
all nodes, for example on top master:
<User_Sandbox>/session-<top_master_session_tag>/
master-0-<top_master_session_tag>/master-0-<top_master_session_tag>.log
On worker 0.0
<User_Sandbox>/session-<top_master_session_tag>/
worker-0.0-<worker_0.0_session_tag>/worker-0.0-<worker_0.0_session_tag>.log
- Automatic creation of the dataset dir
- Improved handling of error conditions
- Reorganization of TProofServ and XrdProofdProtocol
- Several bug fixes, in particular in XrdProofdProtocol
Revision
14752 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Apr 19 10:57:44 2006 UTC (8 years, 9 months ago) by
rdm
Original Path:
trunk/proofx/inc/TXProofServ.h
File length: 2011 byte(s)
Diff to
previous 14110
From Gerri:
This is the big patch.
Comments:
- Client side:
- Remove use of plugin manager to avoid unwanted locks
- Improved treatment of error conditions
- Server side:
- Several new functionalities described in the release notes
Revision
13648 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Added
Mon Dec 12 12:54:27 2005 UTC (9 years, 1 month ago) by
rdm
Original Path:
trunk/proofx/inc/TXProofServ.h
File length: 1688 byte(s)
From Gerri:
- last part of the major PROOF upgrade to support disconnect/reconnect
features using the libXrdProofd.so xrootd plugin.
More on how to configure and run with xrootd/xproofd coming very soon.
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.