inpop.h
上传用户:dgyhgb
上传日期:2007-01-07
资源大小:676k
文件大小:4k
源码类别:

SQL Server

开发平台:

Unix_Linux

  1. /*
  2.  *  inpop.h  - Internal operation names of Kernel of GNU SQL-server 
  3.  *
  4.  * This file is a part of GNU SQL Server
  5.  *
  6.  *  Copyright (c) 1996, 1997, Free Software Foundation, Inc
  7.  *  Developed at the Institute of System Programming
  8.  *  This file is written by  Vera Ponomarenko
  9.  *
  10.  *  This program is free software; you can redistribute it and/or modify
  11.  *  it under the terms of the GNU General Public License as published by
  12.  *  the Free Software Foundation; either version 2 of the License, or
  13.  *  (at your option) any later version.
  14.  *
  15.  *  This program is distributed in the hope that it will be useful,
  16.  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  17.  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  18.  *  GNU General Public License for more details.
  19.  *
  20.  *  You should have received a copy of the GNU General Public License
  21.  *  along with this program; if not, write to the Free Software
  22.  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  23.  *
  24.  *  Contacts:   gss@ispras.ru
  25.  *
  26.  */
  27. #ifndef __inpop_h__
  28. #define __inpop_h__
  29. #include "pupsi.h"
  30. #define     SZMSGBUF    (2*BD_PAGESIZE)
  31. enum {
  32.   /* Administrator */
  33.   PUTEXT    =1,    /* TRN->ADM */
  34.   IAMMOD    =2,    /* TRN->ADM */
  35.   WLJET     =3,    /* TRN->ADM */
  36.   ENDOTR    =4,    /* TRN->ADM */
  37.   COPY      =5,    /* LJ->ADM */
  38.   NOBUF     =6,    /* BUF->ADM */
  39.   ERRFU     =7,    /* all->ADM */
  40.   UNIQNM    =8,    /* TRN->ADM */
  41.   RES_READY =9,    /* TRN->ADM */
  42.   GETEXT   =10,    /* TRN->ADM */
  43.   /* Answers for Administrator */
  44.   ANSADM  =9,    /* ADM->all */
  45.   READY  =11,    /* TRN ready for message receiving */
  46.   /* Transaction */
  47.   GETMIT  =1,    /* ADM->TRN: Get min transaction identifier */
  48.   /* LJ */
  49.   RENEW   =1,    /* ADM->LJ: Update */
  50.   FIX     =2,    /* ADM->LJ: Fixation */
  51.   PUTOUT  =3,    /* ADM->LJ: Record with push */
  52.   STATE   =4,    /* ADM->LJ: Information about state LJ */
  53.   PUTREC  =5,    /* TRN->LJ: Record */
  54.   PUTHREC =6,    /* TRN->LJ: Record */
  55.   GETREC  =7,    /* TRN->LJ: Get record */
  56.   BEGFIX  =8,    /* ADM->LJ: Do fixation */
  57.   INILJ   =9,    /* MCR->LJ: Do initialization */
  58.   OVFLMJ  =10,   /* MJ->LJ: Get next record */
  59.   /* Answers for LJ */
  60.   ANSLJ   =15,    /* LJ->all */
  61.   /* MJ */
  62.   STATEMJ =1,    /* ADM->MJ: Information about state MJ */
  63.   PUTBL   =2,    /* TRN->MJ */
  64.   GETBL   =3,    /* TRN->MJ */
  65.   OUTDISK =4,    /* BUF->MJ */
  66.   DOFIX   =5,    /* BUF->MJ */
  67.   INIMJ   =6,    /* ADM->MJ: Do initialisation */
  68.   /* Answres for MJ */
  69.   ANSMJ   =15,    /* MJ->all */
  70.   /* Buffer */
  71.   BEGTACT  =1,   /* ADM->BUF */
  72.   INIFIXB  =2,   /* LJ->BUF: Start fixation */
  73.   GETPAGE  =3,   /* TRN->BUF */
  74.   PUTPAGE  =4,   /* TRN->BUF */
  75.   UNLKPG   =5,   /* TRN->BUF */
  76.   LOCKPAGE =6,   /* TRN->BUF */
  77.   ENFORCE  =7,   /* TRN->BUF */
  78.   ENDOP    =8,   /* TRN->BUF */
  79.   OPTNUM   =9,   /* ADM->BUF */
  80.   NEWGET  =10,   /* TRN->BUF */
  81.   LOCKGET =11,   /* TRN->BUF */
  82.   PUTUNL  =12,   /* TRN->BUF */
  83.   /* Answers for BUF */
  84.   ANSBUF  =15,   /* BUF->all: Answer message from BUF */
  85.   /* Synchronizator */
  86.   START  =1,  /* TRN->SYN */
  87.   LOCK   =2,  /* TRN->SYN */
  88.   SVPNT  =3,  /* TRN->SYN */
  89.   UNLTSP =4,  /* TRN->SYN */
  90.   COMMIT =5,  /* TRN->SYN */
  91.   ANSSYN =15,  /* SYN->all: Answer message from SYN */
  92.   /* Sorter */
  93.   TRSORT  =1, /* TRN->SRT */
  94.   FLSORT  =2, /* TRN->SRT */
  95.   TIDSRT  =3, /* TRN->SRT */
  96.   CRTRN   =4, /* ADM->SRT */
  97.   ANSSRT =15, /* SRT->all: Answer message from SRT */
  98.   FINIT   =14,   /* ADM->all */
  99.   CONSTTR =51,   /* Constant for transaction number within SSTMS */
  100.   NO_LOCK =0,
  101.   WEAK    =1,     /* page lock types */            
  102.   STRONG  =2,
  103.   
  104.   BACKUP  = -1,   /* page has locked */
  105.   PRMOD  =1,
  106.   PRNMOD =0
  107. };
  108. struct msg_buf
  109. {
  110.   int  mtype;
  111.   char mtext[SZMSGBUF];
  112. };
  113. /* For administrator */
  114. enum {
  115.   
  116. NUM_LJ       =1,
  117. NUM_SRT      =2,
  118. FIR_TRN_NUM  =3
  119. };
  120. #endif