ING_DB
This commit is contained in:
parent
ffc49bb459
commit
b6ab8936a7
|
|
@ -0,0 +1,90 @@
|
|||
# include "AA_liba.h"
|
||||
|
||||
AAappend(p, rel, ptup)
|
||||
register DESCXX *p;
|
||||
register char *rel;
|
||||
register char *ptup;
|
||||
{
|
||||
# ifdef AMX_TRACE
|
||||
AAtTfp(3, 0,
|
||||
# ifdef MSDOS
|
||||
"append rel\t`%.10s'\n",
|
||||
# else
|
||||
"append rel\t`%.14s'\n",
|
||||
# endif
|
||||
rel);
|
||||
# endif
|
||||
|
||||
errno = 0;
|
||||
|
||||
if (!AA_DESC)
|
||||
AAerror(111, "append");
|
||||
|
||||
if (!p)
|
||||
AAerror(106, rel);
|
||||
|
||||
if (!AA_NOLOCKS && !(p->xx_excl & M_EXCL))
|
||||
AAerror(20, rel);
|
||||
|
||||
AArefresh(p);
|
||||
AA_on();
|
||||
AA = AAam_insert(p, &AA_TID, ptup, 1);
|
||||
|
||||
# ifdef AM_TRACE
|
||||
AAtTfp(3, 10, "##AM_INSERT\t%d\n", AA);
|
||||
if (AAtTfp(3, 11, "##\t\tnew"))
|
||||
AAdumptid(&AA_TID);
|
||||
if (AAtTfp(3, 12, "##\t\tnewtup"))
|
||||
AAprtup(p, ptup);
|
||||
# endif
|
||||
|
||||
if (AA < 0)
|
||||
AAerror(2, rel);
|
||||
|
||||
if (ctoi(p->xx_desc.reldum.relindxd) == SECBASE)
|
||||
{
|
||||
AAp_desc = p;
|
||||
AAold_tuple = ptup;
|
||||
while (p = p->xx_index)
|
||||
AAsecappend(p);
|
||||
}
|
||||
|
||||
AA_off();
|
||||
}
|
||||
|
||||
|
||||
AAsecappend(i)
|
||||
register DESCXX *i;
|
||||
{
|
||||
char itup[MAXTUP];
|
||||
long tid;
|
||||
|
||||
# ifdef AMX_TRACE
|
||||
AAtTfp(4, 0,
|
||||
# ifdef MSDOS
|
||||
"append index\t`%.10s'\n",
|
||||
# else
|
||||
"append index\t`%.14s'\n",
|
||||
# endif
|
||||
i->xx_desc.reldum.relid);
|
||||
# endif
|
||||
|
||||
errno = 0;
|
||||
AArefresh(i);
|
||||
AAsectup(itup, i->xx_indom, &AA_TID);
|
||||
/* set all keys on index descriptor */
|
||||
AAbmove(AA_SET_ALL_KEYS, &i->xx_desc.relgiven[1], MAXKEYS + 1);
|
||||
|
||||
AA = AAam_insert(i, &tid, itup, 1);
|
||||
|
||||
# ifdef AM_TRACE
|
||||
AAtTfp(4, 10, "##AM_INSERT\t%d\n", AA);
|
||||
if (AAtTfp(4, 11, "##\t\tnew"))
|
||||
AAdumptid(&tid);
|
||||
if (AAtTfp(4, 12, "##\t\tnewtup"))
|
||||
AAprtup(i, itup);
|
||||
# endif
|
||||
|
||||
if (AA < 0)
|
||||
AAerror(2, i->xx_desc.reldum.relid);
|
||||
}
|
||||
Loading…
Reference in New Issue