.\" @(#)$RCSfile: lfc_starttrans.man,v $ $Revision: 3515 $ $Date: 2010-04-05 09:51:26 +0200 (Mon, 05 Apr 2010) $ CERN IT-GD/CT Jean-Philippe Baud .\" Copyright (C) 2004-2010 by CERN/IT/GD/CT .\" All rights reserved .\" .TH LFC_STARTTRANS 3 "$Date: 2010-04-05 09:51:26 +0200 (Mon, 05 Apr 2010) $" LFC "LFC Library Functions" .SH NAME lfc_starttrans \- start transaction mode .SH SYNOPSIS .B #include .br \fB#include "lfc_api.h"\fR .sp .BI "int lfc_starttrans (char *" server , .BI "char *" comment ); .SH DESCRIPTION .B lfc_starttrans starts transaction mode. The connection to the Name Server is kept open until one of the DB update operation fails or .B lfc_aborttrans or .B lfc_endtrans is explicitly called. If all the DB update operations between .B lfc_starttrans and .B lfc_endtrans are successful, a COMMIT is done. If any DB update operation fails or if an explicit .B lfc_aborttrans is done, a ROLLBACK is done. The .I comment is logged in the server log. .SH RETURN VALUE This routine returns 0 if the operation was successful or -1 if the operation failed. In the latter case, .B serrno is set appropriately. .SH ERRORS .TP 1.3i .B EINVAL The length of .I comment exceeds .BR CA_MAXCOMMENTLEN . .TP .B SENOSHOST Host unknown. .TP .B SENOSSERV Service unknown. .TP .B SECOMERR Communication error. .TP .B ENSNACT Name server is not running or is being shutdown. .SH SEE ALSO .BR lfc_aborttrans(3) , .BR lfc_endtrans(3)