* $Header$
*
* Copyright (C) 1987, 1988 by the Massachusetts Institute of Technology
+ * For copying and distribution information, please see the file
+ * <mit-copyright.h>.
*
*/
static char *rcsid_qrtn_qc = "$Header$";
#endif lint
+#include <mit-copyright.h>
#include "query.h"
#include "sms_server.h"
ingres_errno = SMS_DATE;
break;
case INGRES_DEADLOCK:
+ com_err(whoami, 0, "INGRES deadlock detected");
ingres_errno = SMS_DEADLOCK;
break;
default:
if (q == (struct query *)0) return(SMS_NO_HANDLE);
v = q->validate;
- if (q->type != RETRIEVE)
+ if (q->type != RETRIEVE) {
+## set lockmode session where readlock = exclusive
## begin transaction
+ }
/* setup argument vector, verify access and arguments */
if ((status = sms_verify_query(cl, q, argc, argv_ro)) != SMS_SUCCESS)
if (q->type != RETRIEVE) {
if (status == SMS_SUCCESS) {
## end transaction /* commit to this */
+## set lockmode session where readlock = system
if (journal) {
char buf[1024], *bp;
int i;
fflush(journal);
}
} else {
-## abort /* it never happened */
+ if (status != SMS_DEADLOCK) {
+## abort /* it never happened */
+ }
}
}
register int privileged = 0;
/* copy the arguments into a local argv that we can modify */
+ if (argc >= QMAXARGS)
+ return(SMS_ARGS);
for (i = 0; i < argc; i++) {
if (strlen(argv_ro[i]) < ARGLEN)
strcpy(Argv[i], argv_ro[i]);
exit(1);
}
}
-
-
-/*
- * Local Variables:
- * mode: c
- * c-indent-level: 4
- * c-continued-statement-offset: 4
- * c-brace-offset: -4
- * c-argdecl-indent: 4
- * c-label-offset: -4
- * End:
- */
-