| gjournal_journal_addn#(NDLIST, DOSYNC, PRI, PFI, PSTORE0, PMAXINO, P_OS; ADRLIST, JVALID, SQNUM, PINVAL, PSTORE, PNL, ISYNCED; ERR) {let GNDLIST = ?, SIZE = ? in {gjournal_journal_transaction#(NDLIST, SQNUM; ; GNDLIST, SIZE); gjournal_journal_allocate#(SIZE, PRI, PFI, PSTORE0, PMAXINO, P_OS; JVALID, PINVAL, PSTORE, PNL, ISYNCED; ERR); if ERR = ESUCCESS then index_add_gnds#(GNDLIST, PRI, PFI, PINVAL, PSTORE0, PNL, PMAXINO, P_OS; ADRLIST, PSTORE; ISYNCED, ERR); if ERR = ESUCCESS then {SQNUM := SQNUM + # NDLIST; if DOSYNC then let ERR0 = ? in index_sync#(PRI, PFI, PINVAL, PSTORE, PSTORE0, PNL, PMAXINO, P_OS; ; ISYNCED, ERR0)} else JVALID := false} } |