Documentation ¶
Overview ¶
Package yottadb provides a Go wrapper for YottaDB - a mature, high performance, transactional NoSQL engine with proven speed and stability.
YottaDB Quick Start ¶
Before starting, consider reading the introduction to YottaDB's data model at https://docs.yottadb.com/MultiLangProgGuide/MultiLangProgGuide.html#concepts
The YottaDB Go wrapper requires a minimum YottaDB version of r1.34 and is tested with a minimum Go version of 1.18. If the Go packages on your operating system are older, and the Go wrapper does not work, please obtain and install a newer Go implementation.
This quickstart assumes that YottaDB has already been installed as described at https://yottadb.com/product/get-started/.
After installing YottaDB, install the Go wrapper:
go get lang.yottadb.com/go/yottadb
Easy API ¶
The Easy API provides a set of functions that are very easy to use at the expense of some additional copies for each operation. These functions all end with the letter 'E', and are available in the yottadb package. They include:
- DataE
- DeleteE
- DeleteExclE
- IncrE
- LockDecrE
- LockIncrE
- LockE
- NodeNextE
- NodePrevE
- SetValE
- SubNextE
- SubPrevE
- TpE
- ValE
Please see the Easy API example below for usage.
Simple API ¶
The simple API provides a better one-to-one mapping to the underlying C API, and provides better performance at the cost of convenience. These functions are mostly encapsulated in the BufferT, BufferTArray, and KeyT data structures, with the only function belonging to this API existing outside of these data types, being LockST.
The structures in the Simple API include anchors for C allocated memory that need to be freed when the structures go out of scope. There are automated "Finalizers" that will perform these frees when the structures are garbage collected but if any really large buffers (or many little ones) are allocated, an application may have better memory performance (i.e. smaller working set) if the structures are intentionally freed by using the struct.Free() methods. These structure frees can be setup in advance using defer statements when the structures are allocated. For example, the Easy API creates these structures and buffers for most calls and specifically releases them at the end of each call for exactly this reason. If the creation of these blocks is infrequent, they can be left to be handled in an automated fashion. Note - freeing a never allocated or already freed structure does NOT cause an error - it is ignored.
Please see the Simple API example below for usage.
Transactions in YottaDB ¶
YottaDB implements strong ACID transactions see https://en.wikipedia.org/wiki/ACID_(computer_science). Please review the documentation related to transactions in YottaDB at https://docs.yottadb.com/MultiLangProgGuide/MultiLangProgGuide.html#transaction-processing
To use YottaDB transactions in Go, please see the Transaction Example below for further information.
Go Error Interface ¶
YottaDB has a comprehensive set of error return codes. Each has a unique number and a mnemonic. Thus, for example, to return an error that a buffer allocated for a return value is not large enough, YottaDB uses the INVSTRLEN error code, which has the value yottadb.YDB_ERR_INVSTRLEN. YottaDB attempts to maintain the stability of the numeric values and mnemonics from release to release, to ensure applications remain compatible when the underlying YottaDB releases are upgraded. The Go "error" interface provides for a call to return an error as a string (with "nil" for a successful return).
Example (EasyAPI) ¶
Example_basic demonstrates the most basic features of YottaDB: setting a value, getting a value, iterating through values, and deleting a value.
It does this using methods from the easy API; if performance is a concern, considering using methods from the simple API (those methods on KeyT, BufferT, and BufferArrayT).
package main import ( "fmt" "lang.yottadb.com/go/yottadb" ) func main() { // Set global node ["^hello", "world"] to "Go World" err := yottadb.SetValE(yottadb.NOTTP, nil, "Go World", "^hello", []string{"world"}) if err != nil { panic(err) } // Retrieve the value that was set r, err := yottadb.ValE(yottadb.NOTTP, nil, "^hello", []string{"world"}) if err != nil { panic(err) } if r != "Go World" { panic("Value not what was expected; did someone else set something?") } // Set a few more nodes so we can iterate through them err = yottadb.SetValE(yottadb.NOTTP, nil, "Go Middle Earth", "^hello", []string{"shire"}) if err != nil { panic(err) } err = yottadb.SetValE(yottadb.NOTTP, nil, "Go Westeros", "^hello", []string{"Winterfell"}) if err != nil { panic(err) } var cur_sub = "" for true { cur_sub, err = yottadb.SubNextE(yottadb.NOTTP, nil, "^hello", []string{cur_sub}) if err != nil { error_code := yottadb.ErrorCode(err) if error_code == yottadb.YDB_ERR_NODEEND { break } else { panic(err) } } fmt.Printf("%s ", cur_sub) } }
Output: Winterfell shire world
Example (SimpleAPI) ¶
Example demonstrating the most basic features of YottaDB using the simple API; setting a value, getting a value, iterating through values, and deleting a value.
The SimpleAPI is somewhat more difficult to use than the EasyAPI, but is more performant. It is recommended to use the SimpleAPI if you are building a performance critical application.
package main import ( "fmt" "lang.yottadb.com/go/yottadb" ) func main() { // Allocate a key to set our value equal too var key1 yottadb.KeyT var buff1, cur_sub yottadb.BufferT var tptoken uint64 var err error // The tptoken argument to many functions is either a value passed into the // callback routine for TP, or yottadb.NOTTP if not in a transaction tptoken = yottadb.NOTTP // Set global node ["^hello", "world"] to "Go World" key1.Alloc(64, 10, 64) err = key1.Varnm.SetValStr(tptoken, nil, "^hello") if err != nil { panic(err) } err = key1.Subary.SetElemUsed(tptoken, nil, 1) if err != nil { panic(err) } err = key1.Subary.SetValStr(tptoken, nil, 0, "world") if err != nil { panic(err) } // Create a buffer which is used to specify the value we will be setting the global to buff1.Alloc(64) err = buff1.SetValStr(tptoken, nil, "Go world") if err != nil { panic(err) } // Set the value err = key1.SetValST(tptoken, nil, &buff1) if err != nil { panic(err) } // Retrieve the value that was set // We can reuse the KeyT we already made for setting the value; hence part // of the performance gain // For the sake of demonstration, we will first clear the buffer we used to set the // value buff1.Alloc(64) val1, err := buff1.ValStr(tptoken, nil) if err != nil { panic(err) } if (val1) != "" { panic("Buffer not empty when it should be!") } err = key1.ValST(tptoken, nil, &buff1) if err != nil { panic(err) } val1, err = buff1.ValStr(tptoken, nil) if (val1) != "Go world" { panic("Value not what was expected; did someone else set something?") } // Set a few more nodes so we can iterate through them err = key1.Subary.SetValStr(tptoken, nil, 0, "shire") if err != nil { panic(err) } err = buff1.SetValStr(tptoken, nil, "Go Middle Earth") if err != nil { panic(err) } err = key1.SetValST(tptoken, nil, &buff1) if err != nil { panic(err) } err = key1.Subary.SetValStr(tptoken, nil, 0, "Winterfell") if err != nil { panic(err) } err = buff1.SetValStr(tptoken, nil, "Go Westeros") if err != nil { panic(err) } err = key1.SetValST(tptoken, nil, &buff1) if err != nil { panic(err) } // Allocate a BufferT for return values cur_sub.Alloc(64) // Start iterating through the list at the start by setting the last subscript // to ""; stop when we get the error code meaning end err = key1.Subary.SetValStr(tptoken, nil, 0, "") for true { err = key1.SubNextST(tptoken, nil, &cur_sub) if err != nil { error_code := yottadb.ErrorCode(err) if error_code == yottadb.YDB_ERR_NODEEND { break } else { panic(err) } } val1, err = cur_sub.ValStr(tptoken, nil) if err != nil { panic(err) } fmt.Printf("%s ", val1) // Move to that key by setting the next node in the key key1.Subary.SetValStr(tptoken, nil, 0, val1) } }
Output: Winterfell shire world
Example (TransactionProcessing) ¶
Example demonstrating how to do transactions in Go
package main import ( "fmt" "lang.yottadb.com/go/yottadb" ) func main() { // Allocate a key to set our value equal too var buffertary1 yottadb.BufferTArray var errstr yottadb.BufferT var tptoken uint64 var err error // The tptoken argument to many functions is either a value passed into the // callback routine for TP, or yottadb.NOTTP if not in a transaction tptoken = yottadb.NOTTP // Restore all YDB local buffers on a TP-restart buffertary1.Alloc(1, 32) errstr.Alloc(1024) err = buffertary1.SetValStr(tptoken, &errstr, 0, "*") if err != nil { panic(err) } err = buffertary1.TpST(tptoken, &errstr, func(tptoken uint64, errstr *yottadb.BufferT) int32 { fmt.Printf("Hello from MyGoCallBack!\n") return 0 }, "TEST") if err != nil { panic(err) } }
Output: Hello from MyGoCallBack!
Index ¶
- Constants
- Variables
- func CallMT(tptoken uint64, errstr *BufferT, retvallen uint32, rtnname string, ...) (string, error)
- func DataE(tptoken uint64, errstr *BufferT, varname string, subary []string) (uint32, error)
- func DeleteE(tptoken uint64, errstr *BufferT, deltype int, varname string, subary []string) error
- func DeleteExclE(tptoken uint64, errstr *BufferT, varnames []string) error
- func ErrorCode(err error) int
- func Exit() error
- func IncrE(tptoken uint64, errstr *BufferT, incr, varname string, subary []string) (string, error)
- func Init()
- func IsLittleEndian() bool
- func LockDecrE(tptoken uint64, errstr *BufferT, varname string, subary []string) error
- func LockE(tptoken uint64, errstr *BufferT, timeoutNsec uint64, namesnsubs ...interface{}) error
- func LockIncrE(tptoken uint64, errstr *BufferT, timeoutNsec uint64, varname string, ...) error
- func LockST(tptoken uint64, errstr *BufferT, timeoutNsec uint64, lockname ...*KeyT) error
- func MessageT(tptoken uint64, errstr *BufferT, status int) (string, error)
- func NewError(tptoken uint64, errstr *BufferT, errnum int) error
- func NodeNextE(tptoken uint64, errstr *BufferT, varname string, subary []string) ([]string, error)
- func NodePrevE(tptoken uint64, errstr *BufferT, varname string, subary []string) ([]string, error)
- func RegisterSignalNotify(sig syscall.Signal, notifyChan, ackChan chan bool, notifyWhen YDBHandlerFlag) error
- func ReleaseT(tptoken uint64, errstr *BufferT) (string, error)
- func SetValE(tptoken uint64, errstr *BufferT, value, varname string, subary []string) error
- func SubNextE(tptoken uint64, errstr *BufferT, varname string, subary []string) (string, error)
- func SubPrevE(tptoken uint64, errstr *BufferT, varname string, subary []string) (string, error)
- func TpE(tptoken uint64, errstr *BufferT, tpfn func(uint64, *BufferT) int32, ...) error
- func UnRegisterSignalNotify(sig syscall.Signal) error
- func ValE(tptoken uint64, errstr *BufferT, varname string, subary []string) (string, error)
- func YDBWrapperPanic(sigNum C.int)
- type BufferT
- func (buft *BufferT) Alloc(nBytes uint32)
- func (buft *BufferT) Dump()
- func (buft *BufferT) DumpToWriter(writer io.Writer)
- func (buft *BufferT) Free()
- func (buft *BufferT) LenAlloc(tptoken uint64, errstr *BufferT) (uint32, error)
- func (buft *BufferT) LenUsed(tptoken uint64, errstr *BufferT) (uint32, error)
- func (buft *BufferT) SetLenUsed(tptoken uint64, errstr *BufferT, newLen uint32) error
- func (buft *BufferT) SetValBAry(tptoken uint64, errstr *BufferT, value []byte) error
- func (buft *BufferT) SetValStr(tptoken uint64, errstr *BufferT, value string) error
- func (buft *BufferT) Str2ZwrST(tptoken uint64, errstr *BufferT, zwr *BufferT) error
- func (buft *BufferT) ValBAry(tptoken uint64, errstr *BufferT) ([]byte, error)
- func (buft *BufferT) ValStr(tptoken uint64, errstr *BufferT) (string, error)
- func (buft *BufferT) Zwr2StrST(tptoken uint64, errstr *BufferT, str *BufferT) error
- type BufferTArray
- func (buftary *BufferTArray) Alloc(numBufs, nBytes uint32)
- func (buftary *BufferTArray) DeleteExclST(tptoken uint64, errstr *BufferT) error
- func (buftary *BufferTArray) Dump()
- func (buftary *BufferTArray) DumpToWriter(writer io.Writer)
- func (buftary *BufferTArray) ElemAlloc() uint32
- func (buftary *BufferTArray) ElemLenAlloc() uint32
- func (buftary *BufferTArray) ElemLenUsed(tptoken uint64, errstr *BufferT, idx uint32) (uint32, error)
- func (buftary *BufferTArray) ElemUsed() uint32
- func (buftary *BufferTArray) Free()
- func (buftary *BufferTArray) SetElemLenUsed(tptoken uint64, errstr *BufferT, idx, newLen uint32) error
- func (buftary *BufferTArray) SetElemUsed(tptoken uint64, errstr *BufferT, newUsed uint32) error
- func (buftary *BufferTArray) SetValBAry(tptoken uint64, errstr *BufferT, idx uint32, value []byte) error
- func (buftary *BufferTArray) SetValStr(tptoken uint64, errstr *BufferT, idx uint32, value string) error
- func (buftary *BufferTArray) TpST(tptoken uint64, errstr *BufferT, tpfn func(uint64, *BufferT) int32, ...) error
- func (buftary *BufferTArray) ValBAry(tptoken uint64, errstr *BufferT, idx uint32) ([]byte, error)
- func (buftary *BufferTArray) ValStr(tptoken uint64, errstr *BufferT, idx uint32) (string, error)
- type CallMDesc
- type CallMTable
- type KeyT
- func (key *KeyT) Alloc(varSiz, numSubs, subSiz uint32)
- func (key *KeyT) DataST(tptoken uint64, errstr *BufferT) (uint32, error)
- func (key *KeyT) DeleteST(tptoken uint64, errstr *BufferT, deltype int) error
- func (key *KeyT) Dump()
- func (key *KeyT) DumpToWriter(writer io.Writer)
- func (key *KeyT) Free()
- func (key *KeyT) IncrST(tptoken uint64, errstr *BufferT, incr, retval *BufferT) error
- func (key *KeyT) LockDecrST(tptoken uint64, errstr *BufferT) error
- func (key *KeyT) LockIncrST(tptoken uint64, errstr *BufferT, timeoutNsec uint64) error
- func (key *KeyT) NodeNextST(tptoken uint64, errstr *BufferT, next *BufferTArray) error
- func (key *KeyT) NodePrevST(tptoken uint64, errstr *BufferT, prev *BufferTArray) error
- func (key *KeyT) SetValST(tptoken uint64, errstr *BufferT, value *BufferT) error
- func (key *KeyT) SubNextST(tptoken uint64, errstr *BufferT, retval *BufferT) error
- func (key *KeyT) SubPrevST(tptoken uint64, errstr *BufferT, retval *BufferT) error
- func (key *KeyT) ValST(tptoken uint64, errstr *BufferT, retval *BufferT) error
- type YDBError
- type YDBHandlerFlag
Examples ¶
Constants ¶
const ( YDB_INT_MAX = 0x7fffffff YDB_ERR_ACK = -150372361 YDB_ERR_BREAKZST = -150372371 YDB_ERR_BADACCMTHD = -150372379 YDB_ERR_BADJPIPARAM = -150372386 YDB_ERR_BADSYIPARAM = -150372394 YDB_ERR_BITMAPSBAD = -150372402 YDB_ERR_BREAK = -150372411 YDB_ERR_BREAKDEA = -150372419 YDB_ERR_BREAKZBA = -150372427 YDB_ERR_STATCNT = -150372435 YDB_ERR_BTFAIL = -150372442 YDB_ERR_MUPRECFLLCK = -150372450 YDB_ERR_CMD = -150372458 YDB_ERR_COLON = -150372466 YDB_ERR_COMMA = -150372474 YDB_ERR_COMMAORRPAREXP = -150372482 YDB_ERR_COMMENT = -150372491 YDB_ERR_CTRAP = -150372498 YDB_ERR_CTRLC = -150372507 YDB_ERR_CTRLY = -150372515 YDB_ERR_DBCCERR = -150372522 YDB_ERR_DUPTOKEN = -150372530 YDB_ERR_DBJNLNOTMATCH = -150372538 YDB_ERR_DBFILERR = -150372546 YDB_ERR_DBNOTGDS = -150372554 YDB_ERR_DBOPNERR = -418808018 YDB_ERR_DBRDERR = -418808026 YDB_ERR_UNUSEDMSG211 = -150372580 YDB_ERR_DEVPARINAP = -150372586 YDB_ERR_RECORDSTAT = -150372595 YDB_ERR_NOTGBL = -150372602 YDB_ERR_DEVPARPROT = -150372610 YDB_ERR_PREMATEOF = -150372618 YDB_ERR_GVINVALID = -150372626 YDB_ERR_DEVPARTOOBIG = -150372634 YDB_ERR_DEVPARUNK = -150372642 YDB_ERR_DEVPARVALREQ = -150372650 YDB_ERR_DEVPARMNEG = -150372658 YDB_ERR_DSEBLKRDFAIL = -150372666 YDB_ERR_DSEFAIL = -150372674 YDB_ERR_NOTALLREPLON = -150372680 YDB_ERR_BADLKIPARAM = -150372690 YDB_ERR_JNLREADBOF = -150372698 YDB_ERR_DVIKEYBAD = -150372706 YDB_ERR_ENQ = -150372713 YDB_ERR_EQUAL = -150372722 YDB_ERR_ERRORSUMMARY = -150372730 YDB_ERR_ERRWEXC = -150372738 YDB_ERR_ERRWIOEXC = -150372746 YDB_ERR_ERRWZBRK = -150372754 YDB_ERR_ERRWZTRAP = -150372762 YDB_ERR_NUMUNXEOR = -150372770 YDB_ERR_EXPR = -150372778 YDB_ERR_STRUNXEOR = -150372786 YDB_ERR_JNLEXTEND = -150372794 YDB_ERR_FCHARMAXARGS = -150372802 YDB_ERR_FCNSVNEXPECTED = -150372810 YDB_ERR_FNARGINC = -150372818 YDB_ERR_JNLACCESS = -418808282 YDB_ERR_TRANSNOSTART = -150372834 YDB_ERR_FNUMARG = -150372842 YDB_ERR_FOROFLOW = -150372850 YDB_ERR_YDIRTSZ = -150372858 YDB_ERR_JNLSUCCESS = -150372865 YDB_ERR_GBLNAME = -150372874 YDB_ERR_GBLOFLOW = -150372882 YDB_ERR_CORRUPT = -150372890 YDB_ERR_GTMCHECK = -150372900 YDB_ERR_GVDATAFAIL = -150372906 YDB_ERR_EORNOTFND = -150372914 YDB_ERR_GVGETFAIL = -150372922 YDB_ERR_GVIS = -150372931 YDB_ERR_GVKILLFAIL = -150372938 YDB_ERR_GVNAKED = -150372946 YDB_ERR_BACKUPDBFILE = -150372955 YDB_ERR_GVORDERFAIL = -150372962 YDB_ERR_GVPUTFAIL = -150372970 YDB_ERR_PATTABSYNTAX = -150372978 YDB_ERR_GVSUBOFLOW = -150372986 YDB_ERR_GVUNDEF = -150372994 YDB_ERR_TRANSNEST = -150373002 YDB_ERR_INDEXTRACHARS = -150373010 YDB_ERR_CORRUPTNODE = -150373018 YDB_ERR_INDRMAXLEN = -150373026 YDB_ERR_UNUSEDMSG268 = -150373034 YDB_ERR_INTEGERRS = -150373042 YDB_ERR_INVCMD = -150373048 YDB_ERR_INVFCN = -150373058 YDB_ERR_INVOBJ = -150373066 YDB_ERR_INVSVN = -150373074 YDB_ERR_IOEOF = -150373082 YDB_ERR_IONOTOPEN = -150373090 YDB_ERR_MUPIPINFO = -150373099 YDB_ERR_UNUSEDMSG277 = -150373106 YDB_ERR_JOBFAIL = -150373114 YDB_ERR_JOBLABOFF = -150373122 YDB_ERR_JOBPARNOVAL = -150373130 YDB_ERR_JOBPARNUM = -150373138 YDB_ERR_JOBPARSTR = -150373146 YDB_ERR_JOBPARUNK = -150373154 YDB_ERR_JOBPARVALREQ = -150373162 YDB_ERR_JUSTFRACT = -150373170 YDB_ERR_KEY2BIG = -150373178 YDB_ERR_LABELEXPECTED = -150373186 YDB_ERR_LABELMISSING = -150373194 YDB_ERR_LABELUNKNOWN = -150373202 YDB_ERR_DIVZERO = -150373210 YDB_ERR_LKNAMEXPECTED = -150373218 YDB_ERR_JNLRDERR = -418808682 YDB_ERR_LOADRUNNING = -150373234 YDB_ERR_LPARENMISSING = -150373242 YDB_ERR_LSEXPECTED = -150373250 YDB_ERR_LVORDERARG = -150373258 YDB_ERR_MAXFORARGS = -150373266 YDB_ERR_TRANSMINUS = -150373274 YDB_ERR_MAXNRSUBSCRIPTS = -150373282 YDB_ERR_MAXSTRLEN = -150373290 YDB_ERR_ENCRYPTCONFLT2 = -150373296 YDB_ERR_JNLFILOPN = -150373306 YDB_ERR_MBXRDONLY = -418808770 YDB_ERR_JNLINVALID = -150373322 YDB_ERR_MBXWRTONLY = -418808786 YDB_ERR_MEMORY = -150373340 YDB_ERR_DONOBLOCK = -150373344 YDB_ERR_ZATRANSCOL = -150373354 YDB_ERR_VIEWREGLIST = -150373360 YDB_ERR_NUMERR = -150373370 YDB_ERR_NUM64ERR = -150373378 YDB_ERR_UNUM64ERR = -150373386 YDB_ERR_HEXERR = -150373394 YDB_ERR_HEX64ERR = -150373402 YDB_ERR_CMDERR = -150373410 YDB_ERR_BACKUPSUCCESS = -150373419 YDB_ERR_JNLTMQUAL3 = -150373426 YDB_ERR_MULTLAB = -150373434 YDB_ERR_GTMCURUNSUPP = -150373442 YDB_ERR_UNUSEDMSG320 = -150373452 YDB_ERR_NOPLACE = -150373458 YDB_ERR_JNLCLOSE = -150373466 YDB_ERR_NOTPRINCIO = -150373472 YDB_ERR_NOTTOEOFONPUT = -150373482 YDB_ERR_NOZBRK = -150373491 YDB_ERR_NULSUBSC = -150373498 YDB_ERR_NUMOFLOW = -150373506 YDB_ERR_PARFILSPC = -150373514 YDB_ERR_PATCLASS = -150373522 YDB_ERR_PATCODE = -150373530 YDB_ERR_PATLIT = -150373538 YDB_ERR_PATMAXLEN = -150373546 YDB_ERR_LPARENREQD = -150373554 YDB_ERR_PATUPPERLIM = -150373562 YDB_ERR_PCONDEXPECTED = -150373570 YDB_ERR_PRCNAMLEN = -150373578 YDB_ERR_RANDARGNEG = -150373586 YDB_ERR_DBPRIVERR = -418809050 YDB_ERR_REC2BIG = -150373602 YDB_ERR_RHMISSING = -150373610 YDB_ERR_DEVICEREADONLY = -150373618 YDB_ERR_COLLDATAEXISTS = -150373626 YDB_ERR_ROUTINEUNKNOWN = -150373634 YDB_ERR_RPARENMISSING = -150373642 YDB_ERR_RTNNAME = -150373650 YDB_ERR_VIEWGVN = -150373658 YDB_ERR_RTSLOC = -150373667 YDB_ERR_RWARG = -150373674 YDB_ERR_RWFORMAT = -150373682 YDB_ERR_JNLWRTDEFER = -150373691 YDB_ERR_SELECTFALSE = -150373698 YDB_ERR_SPOREOL = -150373706 YDB_ERR_SRCLIN = -150373715 YDB_ERR_SRCLOC = -150373723 YDB_ERR_RLNKRECNFL = -150373728 YDB_ERR_STACKCRIT = -150373738 YDB_ERR_STACKOFLOW = -150373748 YDB_ERR_STACKUNDERFLO = -150373754 YDB_ERR_STRINGOFLOW = -150373762 YDB_ERR_SVNOSET = -150373770 YDB_ERR_VIEWFN = -150373778 YDB_ERR_TERMASTQUOTA = -150373786 YDB_ERR_TEXTARG = -150373794 YDB_ERR_TMPSTOREMAX = -150373802 YDB_ERR_VIEWCMD = -150373810 YDB_ERR_JNI = -150373818 YDB_ERR_TXTSRCFMT = -150373826 YDB_ERR_UIDMSG = -150373834 YDB_ERR_UIDSND = -150373842 YDB_ERR_LVUNDEF = -150373850 YDB_ERR_UNIMPLOP = -150373858 YDB_ERR_VAREXPECTED = -150373866 YDB_ERR_BACKUPFAIL = -150373874 YDB_ERR_MAXARGCNT = -150373882 YDB_ERR_GTMSECSHRSEMGET = -150373892 YDB_ERR_VIEWARGCNT = -150373898 YDB_ERR_GTMSECSHRDMNSTARTED = -150373907 YDB_ERR_ZATTACHERR = -150373914 YDB_ERR_ZDATEFMT = -150373922 YDB_ERR_ZEDFILSPEC = -150373930 YDB_ERR_ZFILENMTOOLONG = -150373938 YDB_ERR_ZFILKEYBAD = -150373946 YDB_ERR_ZFILNMBAD = -150373954 YDB_ERR_ZGOTOLTZERO = -150373962 YDB_ERR_ZGOTOTOOBIG = -150373970 YDB_ERR_ZLINKFILE = -150373978 YDB_ERR_ZPARSETYPE = -150373986 YDB_ERR_ZPARSFLDBAD = -150373994 YDB_ERR_ZPIDBADARG = -150374002 YDB_ERR_UNUSEDMSG390 = -150374010 YDB_ERR_UNUSEDMSG391 = -150374018 YDB_ERR_ZPRTLABNOTFND = -150374026 YDB_ERR_VIEWAMBIG = -150374034 YDB_ERR_VIEWNOTFOUND = -150374042 YDB_ERR_UNUSEDMSG395 = -150374050 YDB_ERR_INVSPECREC = -150374058 YDB_ERR_UNUSEDMSG397 = -150374066 YDB_ERR_ZSRCHSTRMCT = -150374074 YDB_ERR_VERSION = -150374082 YDB_ERR_MUNOTALLSEC = -150374088 YDB_ERR_MUSECDEL = -150374099 YDB_ERR_MUSECNOTDEL = -150374107 YDB_ERR_RPARENREQD = -150374114 YDB_ERR_ZGBLDIRACC = -418809578 YDB_ERR_GVNAKEDEXTNM = -150374130 YDB_ERR_EXTGBLDEL = -150374138 YDB_ERR_DSEWCINITCON = -150374147 YDB_ERR_LASTFILCMPLD = -150374155 YDB_ERR_NOEXCNOZTRAP = -150374163 YDB_ERR_UNSDCLASS = -150374170 YDB_ERR_UNSDDTYPE = -150374178 YDB_ERR_ZCUNKTYPE = -150374186 YDB_ERR_ZCUNKMECH = -150374194 YDB_ERR_ZCUNKQUAL = -150374202 YDB_ERR_JNLDBTNNOMATCH = -150374210 YDB_ERR_ZCALLTABLE = -150374218 YDB_ERR_ZCARGMSMTCH = -150374226 YDB_ERR_ZCCONMSMTCH = -150374234 YDB_ERR_ZCOPT0 = -150374242 YDB_ERR_UNUSEDMSG420 = -150374250 YDB_ERR_UNUSEDMSG421 = -150374258 YDB_ERR_ZCPOSOVR = -150374266 YDB_ERR_ZCINPUTREQ = -150374274 YDB_ERR_JNLTNOUTOFSEQ = -150374282 YDB_ERR_ACTRANGE = -150374290 YDB_ERR_ZCCONVERT = -150374298 YDB_ERR_ZCRTENOTF = -150374306 YDB_ERR_GVRUNDOWN = -150374314 YDB_ERR_LKRUNDOWN = -150374322 YDB_ERR_IORUNDOWN = -150374330 YDB_ERR_FILENOTFND = -150374338 YDB_ERR_MUFILRNDWNFL = -150374346 YDB_ERR_JNLTMQUAL1 = -150374354 YDB_ERR_FORCEDHALT = -150374364 YDB_ERR_LOADEOF = -150374370 YDB_ERR_WILLEXPIRE = -150374379 YDB_ERR_LOADEDBG = -150374386 YDB_ERR_LABELONLY = -150374394 YDB_ERR_MUREORGFAIL = -150374402 YDB_ERR_GVZPREVFAIL = -150374410 YDB_ERR_MULTFORMPARM = -150374418 YDB_ERR_QUITARGUSE = -150374426 YDB_ERR_NAMEEXPECTED = -150374434 YDB_ERR_FALLINTOFLST = -150374442 YDB_ERR_NOTEXTRINSIC = -150374450 YDB_ERR_GTMSECSHRREMSEMFAIL = -150374456 YDB_ERR_FMLLSTMISSING = -150374466 YDB_ERR_ACTLSTTOOLONG = -150374474 YDB_ERR_ACTOFFSET = -150374482 YDB_ERR_MAXACTARG = -150374490 YDB_ERR_GTMSECSHRREMSEM = -150374499 YDB_ERR_JNLTMQUAL2 = -150374506 YDB_ERR_GDINVALID = -150374514 YDB_ERR_ASSERT = -150374524 YDB_ERR_MUFILRNDWNSUC = -150374531 YDB_ERR_LOADEDSZ = -150374538 YDB_ERR_QUITARGLST = -150374546 YDB_ERR_QUITARGREQD = -150374554 YDB_ERR_CRITRESET = -150374562 YDB_ERR_UNKNOWNFOREX = -150374572 YDB_ERR_FSEXP = -150374578 YDB_ERR_WILDCARD = -150374586 YDB_ERR_DIRONLY = -150374594 YDB_ERR_FILEPARSE = -150374602 YDB_ERR_QUALEXP = -150374610 YDB_ERR_BADQUAL = -150374618 YDB_ERR_QUALVAL = -150374626 YDB_ERR_ZROSYNTAX = -150374634 YDB_ERR_COMPILEQUALS = -150374642 YDB_ERR_ZLNOOBJECT = -150374650 YDB_ERR_ZLMODULE = -150374658 YDB_ERR_DBBLEVMX = -150374667 YDB_ERR_DBBLEVMN = -150374675 YDB_ERR_DBBSIZMN = -150374682 YDB_ERR_DBBSIZMX = -150374690 YDB_ERR_DBRSIZMN = -150374698 YDB_ERR_DBRSIZMX = -150374706 YDB_ERR_DBCMPNZRO = -150374714 YDB_ERR_DBSTARSIZ = -150374723 YDB_ERR_DBSTARCMP = -150374731 YDB_ERR_DBCMPMX = -150374739 YDB_ERR_DBKEYMX = -150374746 YDB_ERR_DBKEYMN = -150374754 YDB_ERR_DBCMPBAD = -150374760 YDB_ERR_DBKEYORD = -150374770 YDB_ERR_DBPTRNOTPOS = -150374778 YDB_ERR_DBPTRMX = -150374786 YDB_ERR_DBPTRMAP = -150374795 YDB_ERR_IFBADPARM = -150374802 YDB_ERR_IFNOTINIT = -150374810 YDB_ERR_GTMSECSHRSOCKET = -150374818 YDB_ERR_LOADBGSZ = -150374826 YDB_ERR_LOADFMT = -150374834 YDB_ERR_LOADFILERR = -150374842 YDB_ERR_NOREGION = -150374850 YDB_ERR_PATLOAD = -150374858 YDB_ERR_EXTRACTFILERR = -150374866 YDB_ERR_FREEZE = -150374875 YDB_ERR_NOSELECT = -150374880 YDB_ERR_EXTRFAIL = -150374890 YDB_ERR_LDBINFMT = -150374898 YDB_ERR_NOPREVLINK = -150374906 YDB_ERR_UNUSEDMSG503 = -150374916 YDB_ERR_UNUSEDMSG504 = -150374922 YDB_ERR_UNUSEDMSG505 = -150374931 YDB_ERR_UNUSEDMSG506 = -150374939 YDB_ERR_UNUSEDMSG507 = -150374946 YDB_ERR_REQRUNDOWN = -150374954 YDB_ERR_UNUSEDMSG509 = -150374962 YDB_ERR_UNUSEDMSG510 = -150374970 YDB_ERR_CNOTONSYS = -150374978 YDB_ERR_UNUSEDMSG512 = -150374988 YDB_ERR_UNUSEDMSG513 = -150374994 YDB_ERR_OPRCCPSTOP = -150375003 YDB_ERR_SELECTSYNTAX = -150375012 YDB_ERR_LOADABORT = -150375018 YDB_ERR_FNOTONSYS = -150375026 YDB_ERR_AMBISYIPARAM = -150375034 YDB_ERR_PREVJNLNOEOF = -150375042 YDB_ERR_LKSECINIT = -150375050 YDB_ERR_BACKUPREPL = -150375059 YDB_ERR_BACKUPSEQNO = -150375067 YDB_ERR_DIRACCESS = -150375074 YDB_ERR_TXTSRCMAT = -150375082 YDB_ERR_UNUSEDMSG525 = -150375088 YDB_ERR_BADDBVER = -150375098 YDB_ERR_LINKVERSION = -150375108 YDB_ERR_TOTALBLKMAX = -150375114 YDB_ERR_LOADCTRLY = -150375123 YDB_ERR_CLSTCONFLICT = -150375130 YDB_ERR_SRCNAM = -150375139 YDB_ERR_LCKGONE = -150375145 YDB_ERR_SUB2LONG = -150375154 YDB_ERR_EXTRACTCTRLY = -150375163 YDB_ERR_UNUSEDMSG535 = -150375168 YDB_ERR_GVQUERYFAIL = -150375178 YDB_ERR_LCKSCANCELLED = -150375186 YDB_ERR_INVNETFILNM = -150375194 YDB_ERR_NETDBOPNERR = -150375202 YDB_ERR_BADSRVRNETMSG = -150375210 YDB_ERR_BADGTMNETMSG = -150375218 YDB_ERR_SERVERERR = -150375226 YDB_ERR_NETFAIL = -150375234 YDB_ERR_NETLCKFAIL = -150375242 YDB_ERR_TTINVFILTER = -150375251 YDB_ERR_BACKUPTN = -150375259 YDB_ERR_WCSFLUFAIL = -150375266 YDB_ERR_BADTRNPARAM = -150375274 YDB_ERR_DSEONLYBGMM = -150375280 YDB_ERR_DSEINVLCLUSFN = -150375288 YDB_ERR_RDFLTOOSHORT = -150375298 YDB_ERR_TIMRBADVAL = -150375307 YDB_ERR_UNUSEDMSG553 = -150375312 YDB_ERR_UNUSEDMSG554 = -150375324 YDB_ERR_UNSOLCNTERR = -150375330 YDB_ERR_BACKUPCTRL = -150375339 YDB_ERR_NOCCPPID = -150375346 YDB_ERR_UNUSEDMSG558 = -150375354 YDB_ERR_LCKSGONE = -150375361 YDB_ERR_UNUSEDMSG560 = -150375370 YDB_ERR_DBFILOPERR = -150375378 YDB_ERR_UNUSEDMSG562 = -150375386 YDB_ERR_UNUSEDMSG563 = -150375395 YDB_ERR_UNUSEDMSG564 = -150375403 YDB_ERR_UNUSEDMSG565 = -150375410 YDB_ERR_UNUSEDMSG566 = -150375418 YDB_ERR_UNUSEDMSG567 = -150375426 YDB_ERR_UNUSEDMSG568 = -150375435 YDB_ERR_UNUSEDMSG569 = -150375442 YDB_ERR_UNUSEDMSG570 = -150375451 YDB_ERR_UNUSEDMSG571 = -150375459 YDB_ERR_UNUSEDMSG572 = -150375467 YDB_ERR_ZSHOWBADFUNC = -150375474 YDB_ERR_NOTALLJNLEN = -150375480 YDB_ERR_BADLOCKNEST = -150375490 YDB_ERR_NOLBRSRC = -150375498 YDB_ERR_INVZSTEP = -150375506 YDB_ERR_ZSTEPARG = -150375514 YDB_ERR_INVSTRLEN = -150375522 YDB_ERR_RECCNT = -150375531 YDB_ERR_TEXT = -150375539 YDB_ERR_ZWRSPONE = -150375546 YDB_ERR_FILEDEL = -150375555 YDB_ERR_JNLBADLABEL = -150375562 YDB_ERR_JNLREADEOF = -150375570 YDB_ERR_JNLRECFMT = -150375578 YDB_ERR_BLKTOODEEP = -150375584 YDB_ERR_NESTFORMP = -150375594 YDB_ERR_UNUSEDMSG589 = -150375602 YDB_ERR_GOQPREC = -150375611 YDB_ERR_LDGOQFMT = -150375618 YDB_ERR_BEGINST = -150375627 YDB_ERR_INVMVXSZ = -150375636 YDB_ERR_JNLWRTNOWWRTR = -150375642 YDB_ERR_GTMSECSHRSHMCONCPROC = -150375648 YDB_ERR_JNLINVALLOC = -150375656 YDB_ERR_JNLINVEXT = -150375664 YDB_ERR_MUPCLIERR = -150375674 YDB_ERR_JNLTMQUAL4 = -150375682 YDB_ERR_GTMSECSHRREMSHM = -150375691 YDB_ERR_GTMSECSHRREMFILE = -150375699 YDB_ERR_MUNODBNAME = -150375706 YDB_ERR_FILECREATE = -150375715 YDB_ERR_FILENOTCREATE = -150375723 YDB_ERR_JNLPROCSTUCK = -150375728 YDB_ERR_INVGLOBALQUAL = -150375738 YDB_ERR_COLLARGLONG = -150375746 YDB_ERR_NOPINI = -150375754 YDB_ERR_DBNOCRE = -150375762 YDB_ERR_JNLSPACELOW = -150375771 YDB_ERR_DBCOMMITCLNUP = -150375779 YDB_ERR_BFRQUALREQ = -150375786 YDB_ERR_REQDVIEWPARM = -150375794 YDB_ERR_COLLFNMISSING = -150375802 YDB_ERR_JNLACTINCMPLT = -150375808 YDB_ERR_NCTCOLLDIFF = -150375818 YDB_ERR_DLRCUNXEOR = -150375826 YDB_ERR_DLRCTOOBIG = -150375834 YDB_ERR_WCERRNOTCHG = -150375842 YDB_ERR_WCWRNNOTCHG = -150375848 YDB_ERR_ZCWRONGDESC = -150375858 YDB_ERR_MUTNWARN = -150375864 YDB_ERR_GTMSECSHRUPDDBHDR = -150375875 YDB_ERR_LCKSTIMOUT = -150375880 YDB_ERR_CTLMNEMAXLEN = -150375890 YDB_ERR_CTLMNEXPECTED = -150375898 YDB_ERR_USRIOINIT = -150375906 YDB_ERR_CRITSEMFAIL = -150375914 YDB_ERR_TERMWRITE = -150375922 YDB_ERR_COLLTYPVERSION = -150375930 YDB_ERR_LVNULLSUBS = -150375938 YDB_ERR_GVREPLERR = -150375946 YDB_ERR_UNUSEDMSG633 = -150375954 YDB_ERR_RMWIDTHPOS = -150375962 YDB_ERR_OFFSETINV = -150375970 YDB_ERR_JOBPARTOOLONG = -150375978 YDB_ERR_RLNKINTEGINFO = -150375987 YDB_ERR_RUNPARAMERR = -150375994 YDB_ERR_FNNAMENEG = -150376002 YDB_ERR_ORDER2 = -150376010 YDB_ERR_MUNOUPGRD = -150376018 YDB_ERR_REORGCTRLY = -150376027 YDB_ERR_TSTRTPARM = -150376034 YDB_ERR_TRIGNAMENF = -150376042 YDB_ERR_TRIGZBREAKREM = -150376048 YDB_ERR_TLVLZERO = -150376058 YDB_ERR_TRESTNOT = -150376066 YDB_ERR_TPLOCK = -150376074 YDB_ERR_TPQUIT = -150376082 YDB_ERR_TPFAIL = -150376090 YDB_ERR_TPRETRY = -150376098 YDB_ERR_TPTOODEEP = -150376106 YDB_ERR_ZDEFACTIVE = -150376114 YDB_ERR_ZDEFOFLOW = -150376122 YDB_ERR_MUPRESTERR = -150376130 YDB_ERR_MUBCKNODIR = -150376138 YDB_ERR_TRANS2BIG = -150376146 YDB_ERR_INVBITLEN = -150376154 YDB_ERR_INVBITSTR = -150376162 YDB_ERR_INVBITPOS = -150376170 YDB_ERR_PARNORMAL = -150376177 YDB_ERR_FILEPATHTOOLONG = -150376186 YDB_ERR_RMWIDTHTOOBIG = -150376194 YDB_ERR_PATTABNOTFND = -150376202 YDB_ERR_OBJFILERR = -150376210 YDB_ERR_SRCFILERR = -418811674 YDB_ERR_NEGFRACPWR = -150376226 YDB_ERR_MTNOSKIP = -150376234 YDB_ERR_CETOOMANY = -150376242 YDB_ERR_CEUSRERROR = -150376250 YDB_ERR_CEBIGSKIP = -150376258 YDB_ERR_CETOOLONG = -150376266 YDB_ERR_CENOINDIR = -150376274 YDB_ERR_COLLATIONUNDEF = -150376282 YDB_ERR_MSTACKCRIT = -150376290 YDB_ERR_GTMSECSHRSRVF = -150376298 YDB_ERR_FREEZECTRL = -150376307 YDB_ERR_JNLFLUSH = -150376315 YDB_ERR_UNUSEDMSG679 = -150376323 YDB_ERR_NOPRINCIO = -150376332 YDB_ERR_INVPORTSPEC = -150376338 YDB_ERR_INVADDRSPEC = -150376346 YDB_ERR_MUREENCRYPTEND = -150376355 YDB_ERR_CRYPTJNLMISMATCH = -150376362 YDB_ERR_SOCKWAIT = -150376370 YDB_ERR_SOCKACPT = -150376378 YDB_ERR_SOCKINIT = -150376386 YDB_ERR_OPENCONN = -150376394 YDB_ERR_DEVNOTIMP = -150376402 YDB_ERR_PATALTER2LARGE = -150376410 YDB_ERR_DBREMOTE = -150376418 YDB_ERR_JNLREQUIRED = -150376426 YDB_ERR_TPMIXUP = -150376434 YDB_ERR_HTOFLOW = -150376442 YDB_ERR_RMNOBIGRECORD = -150376450 YDB_ERR_DBBMSIZE = -150376459 YDB_ERR_DBBMBARE = -150376467 YDB_ERR_DBBMINV = -150376475 YDB_ERR_DBBMMSTR = -150376483 YDB_ERR_DBROOTBURN = -150376491 YDB_ERR_REPLSTATEERR = -150376498 YDB_ERR_UNUSEDMSG702 = -150376506 YDB_ERR_DBDIRTSUBSC = -150376515 YDB_ERR_TIMEROVFL = -150376522 YDB_ERR_GTMASSERT = -150376532 YDB_ERR_DBFHEADERR4 = -150376539 YDB_ERR_DBADDRANGE = -150376547 YDB_ERR_DBQUELINK = -150376555 YDB_ERR_DBCRERR = -150376563 YDB_ERR_MUSTANDALONE = -150376571 YDB_ERR_MUNOACTION = -150376578 YDB_ERR_RMBIGSHARE = -150376586 YDB_ERR_TPRESTART = -150376595 YDB_ERR_SOCKWRITE = -150376602 YDB_ERR_DBCNTRLERR = -150376611 YDB_ERR_NOTERMENV = -150376619 YDB_ERR_NOTERMENTRY = -150376627 YDB_ERR_NOTERMINFODB = -150376635 YDB_ERR_INVACCMETHOD = -150376642 YDB_ERR_JNLOPNERR = -150376650 YDB_ERR_JNLRECTYPE = -150376658 YDB_ERR_JNLTRANSGTR = -150376666 YDB_ERR_JNLTRANSLSS = -150376674 YDB_ERR_JNLWRERR = -150376682 YDB_ERR_FILEIDMATCH = -150376690 YDB_ERR_EXTSRCLIN = -150376699 YDB_ERR_EXTSRCLOC = -150376707 YDB_ERR_UNUSEDMSG728 = -150376714 YDB_ERR_ERRCALL = -150376722 YDB_ERR_ZCCTENV = -150376730 YDB_ERR_ZCCTOPN = -418812194 YDB_ERR_ZCCTNULLF = -150376746 YDB_ERR_ZCUNAVAIL = -150376754 YDB_ERR_ZCENTNAME = -150376762 YDB_ERR_ZCCOLON = -150376770 YDB_ERR_ZCRTNTYP = -150376778 YDB_ERR_ZCRCALLNAME = -150376786 YDB_ERR_ZCRPARMNAME = -150376794 YDB_ERR_ZCUNTYPE = -150376802 YDB_ERR_UNUSEDMSG740 = -150376810 YDB_ERR_ZCSTATUSRET = -150376818 YDB_ERR_ZCMAXPARAM = -150376826 YDB_ERR_ZCCSQRBR = -150376834 YDB_ERR_ZCPREALLNUMEX = -150376842 YDB_ERR_ZCPREALLVALPAR = -150376850 YDB_ERR_VERMISMATCH = -150376858 YDB_ERR_JNLCNTRL = -150376866 YDB_ERR_TRIGNAMBAD = -150376874 YDB_ERR_BUFRDTIMEOUT = -150376882 YDB_ERR_INVALIDRIP = -150376890 YDB_ERR_BLKSIZ512 = -150376899 YDB_ERR_MUTEXERR = -150376906 YDB_ERR_JNLVSIZE = -150376914 YDB_ERR_MUTEXLCKALERT = -150376920 YDB_ERR_MUTEXFRCDTERM = -150376928 YDB_ERR_GTMSECSHR = -150376938 YDB_ERR_GTMSECSHRSRVFID = -150376944 YDB_ERR_GTMSECSHRSRVFIL = -150376952 YDB_ERR_FREEBLKSLOW = -150376960 YDB_ERR_PROTNOTSUP = -150376970 YDB_ERR_DELIMSIZNA = -150376978 YDB_ERR_INVCTLMNE = -150376986 YDB_ERR_SOCKLISTEN = -150376994 YDB_ERR_RESTORESUCCESS = -150377003 YDB_ERR_ADDRTOOLONG = -150377010 YDB_ERR_GTMSECSHRGETSEMFAIL = -150377016 YDB_ERR_CPBEYALLOC = -150377026 YDB_ERR_DBRDONLY = -418812490 YDB_ERR_DUPTN = -150377040 YDB_ERR_TRESTLOC = -150377050 YDB_ERR_REPLPOOLINST = -150377058 YDB_ERR_ZCVECTORINDX = -150377064 YDB_ERR_REPLNOTON = -150377074 YDB_ERR_JNLMOVED = -150377082 YDB_ERR_EXTRFMT = -150377090 YDB_ERR_CALLERID = -150377099 YDB_ERR_KRNLKILL = -150377108 YDB_ERR_MEMORYRECURSIVE = -150377116 YDB_ERR_FREEZEID = -150377123 YDB_ERR_UNUSEDMSG780 = -150377130 YDB_ERR_DSEINVALBLKID = -150377138 YDB_ERR_PINENTRYERR = -150377146 YDB_ERR_BCKUPBUFLUSH = -150377154 YDB_ERR_NOFORKCORE = -150377160 YDB_ERR_JNLREAD = -150377170 YDB_ERR_JNLMINALIGN = -150377176 YDB_ERR_JOBSTARTCMDFAIL = -150377186 YDB_ERR_JNLPOOLSETUP = -150377194 YDB_ERR_JNLSTATEOFF = -150377202 YDB_ERR_RECVPOOLSETUP = -150377210 YDB_ERR_REPLCOMM = -150377218 YDB_ERR_NOREPLCTDREG = -150377224 YDB_ERR_REPLINFO = -150377235 YDB_ERR_REPLWARN = -150377240 YDB_ERR_REPLERR = -150377250 YDB_ERR_JNLNMBKNOTPRCD = -150377258 YDB_ERR_REPLFILIOERR = -150377266 YDB_ERR_REPLBRKNTRANS = -150377274 YDB_ERR_TTWIDTHTOOBIG = -150377282 YDB_ERR_REPLLOGOPN = -418812746 YDB_ERR_REPLFILTER = -150377298 YDB_ERR_GBLMODFAIL = -150377306 YDB_ERR_TTLENGTHTOOBIG = -150377314 YDB_ERR_TPTIMEOUT = -150377322 YDB_ERR_NORTN = -150377330 YDB_ERR_JNLFILNOTCHG = -150377338 YDB_ERR_EVENTLOGERR = -150377346 YDB_ERR_UPDATEFILEOPEN = -418812810 YDB_ERR_JNLBADRECFMT = -150377362 YDB_ERR_NULLCOLLDIFF = -150377370 YDB_ERR_MUKILLIP = -150377376 YDB_ERR_JNLRDONLY = -418812842 YDB_ERR_ANCOMPTINC = -150377394 YDB_ERR_ABNCOMPTINC = -150377402 YDB_ERR_RECLOAD = -150377410 YDB_ERR_SOCKNOTFND = -150377418 YDB_ERR_CURRSOCKOFR = -150377426 YDB_ERR_SOCKETEXIST = -150377434 YDB_ERR_LISTENPASSBND = -150377442 YDB_ERR_DBCLNUPINFO = -150377451 YDB_ERR_MUNODWNGRD = -150377458 YDB_ERR_REPLTRANS2BIG = -150377466 YDB_ERR_RDFLTOOLONG = -150377474 YDB_ERR_MUNOFINISH = -150377482 YDB_ERR_DBFILEXT = -150377491 YDB_ERR_JNLFSYNCERR = -150377498 YDB_ERR_ICUNOTENABLED = -150377504 YDB_ERR_ZCPREALLVALINV = -150377514 YDB_ERR_NEWJNLFILECREAT = -150377523 YDB_ERR_DSKSPACEFLOW = -150377531 YDB_ERR_GVINCRFAIL = -150377538 YDB_ERR_ISOLATIONSTSCHN = -150377546 YDB_ERR_UNUSEDMSG833 = -150377554 YDB_ERR_TRACEON = -150377562 YDB_ERR_TOOMANYCLIENTS = -150377570 YDB_ERR_NOEXCLUDE = -150377579 YDB_ERR_UNUSEDMSG837 = -150377586 YDB_ERR_EXCLUDEREORG = -150377592 YDB_ERR_REORGINC = -150377600 YDB_ERR_ASC2EBCDICCONV = -150377610 YDB_ERR_GTMSECSHRSTART = -150377618 YDB_ERR_DBVERPERFWARN1 = -150377624 YDB_ERR_FILEIDGBLSEC = -150377634 YDB_ERR_GBLSECNOTGDS = -150377642 YDB_ERR_BADGBLSECVER = -150377650 YDB_ERR_RECSIZENOTEVEN = -150377658 YDB_ERR_BUFFLUFAILED = -150377666 YDB_ERR_MUQUALINCOMP = -150377674 YDB_ERR_DISTPATHMAX = -150377682 YDB_ERR_FILEOPENFAIL = -418813146 YDB_ERR_UNUSEDMSG851 = -150377698 YDB_ERR_GTMSECSHRPERM = -150377706 YDB_ERR_YDBDISTUNDEF = -150377714 YDB_ERR_SYSCALL = -150377722 YDB_ERR_MAXGTMPATH = -150377730 YDB_ERR_TROLLBK2DEEP = -150377738 YDB_ERR_INVROLLBKLVL = -150377746 YDB_ERR_OLDBINEXTRACT = -150377752 YDB_ERR_ACOMPTBINC = -150377762 YDB_ERR_NOTREPLICATED = -150377768 YDB_ERR_DBPREMATEOF = -150377778 YDB_ERR_KILLBYSIG = -150377788 YDB_ERR_KILLBYSIGUINFO = -150377796 YDB_ERR_KILLBYSIGSINFO1 = -150377804 YDB_ERR_KILLBYSIGSINFO2 = -150377812 YDB_ERR_SIGILLOPC = -150377820 YDB_ERR_SIGILLOPN = -150377828 YDB_ERR_SIGILLADR = -150377836 YDB_ERR_SIGILLTRP = -150377844 YDB_ERR_SIGPRVOPC = -150377852 YDB_ERR_SIGPRVREG = -150377860 YDB_ERR_SIGCOPROC = -150377868 YDB_ERR_SIGBADSTK = -150377876 YDB_ERR_SIGADRALN = -150377884 YDB_ERR_SIGADRERR = -150377892 YDB_ERR_SIGOBJERR = -150377900 YDB_ERR_SIGINTDIV = -150377908 YDB_ERR_SIGINTOVF = -150377916 YDB_ERR_SIGFLTDIV = -150377924 YDB_ERR_SIGFLTOVF = -150377932 YDB_ERR_SIGFLTUND = -150377940 YDB_ERR_SIGFLTRES = -150377948 YDB_ERR_SIGFLTINV = -150377956 YDB_ERR_SIGMAPERR = -150377964 YDB_ERR_SIGACCERR = -418813428 YDB_ERR_TRNLOGFAIL = -150377978 YDB_ERR_INVDBGLVL = -150377986 YDB_ERR_DBMAXNRSUBS = -150377995 YDB_ERR_GTMSECSHRSCKSEL = -150378002 YDB_ERR_GTMSECSHRTMOUT = -150378011 YDB_ERR_GTMSECSHRRECVF = -150378018 YDB_ERR_GTMSECSHRSENDF = -150378026 YDB_ERR_SIZENOTVALID8 = -150378034 YDB_ERR_GTMSECSHROPCMP = -150378044 YDB_ERR_GTMSECSHRSUIDF = -150378048 YDB_ERR_GTMSECSHRSGIDF = -150378056 YDB_ERR_GTMSECSHRSSIDF = -150378064 YDB_ERR_GTMSECSHRFORKF = -150378076 YDB_ERR_DBFSYNCERR = -150378082 YDB_ERR_UNUSEDMSG900 = -150378090 YDB_ERR_SCNDDBNOUPD = -150378098 YDB_ERR_MUINFOUINT4 = -150378107 YDB_ERR_NLMISMATCHCALC = -150378114 YDB_ERR_RELINKCTLFULL = -150378122 YDB_ERR_MUPIPSET2BIG = -150378128 YDB_ERR_DBBADNSUB = -150378138 YDB_ERR_DBBADKYNM = -150378146 YDB_ERR_DBBADPNTR = -150378154 YDB_ERR_DBBNPNTR = -150378162 YDB_ERR_DBINCLVL = -150378170 YDB_ERR_DBBFSTAT = -150378178 YDB_ERR_DBBDBALLOC = -150378186 YDB_ERR_DBMRKFREE = -150378194 YDB_ERR_DBMRKBUSY = -150378200 YDB_ERR_DBBSIZZRO = -150378210 YDB_ERR_DBSZGT64K = -150378218 YDB_ERR_DBNOTMLTP = -150378226 YDB_ERR_DBTNTOOLG = -150378235 YDB_ERR_DBBPLMLT512 = -150378242 YDB_ERR_DBBPLMGT2K = -150378250 YDB_ERR_MUINFOUINT8 = -150378259 YDB_ERR_DBBPLNOT512 = -150378266 YDB_ERR_MUINFOSTR = -150378275 YDB_ERR_DBUNDACCMT = -150378283 YDB_ERR_DBTNNEQ = -150378291 YDB_ERR_MUPGRDSUCC = -150378297 YDB_ERR_DBDSRDFMTCHNG = -150378307 YDB_ERR_DBFGTBC = -150378312 YDB_ERR_DBFSTBC = -150378322 YDB_ERR_DBFSTHEAD = -150378330 YDB_ERR_DBCREINCOMP = -150378338 YDB_ERR_DBFLCORRP = -150378346 YDB_ERR_DBHEADINV = -150378354 YDB_ERR_DBINCRVER = -150378362 YDB_ERR_DBINVGBL = -150378370 YDB_ERR_DBKEYGTIND = -150378378 YDB_ERR_DBGTDBMAX = -150378386 YDB_ERR_DBKGTALLW = -150378394 YDB_ERR_DBLTSIBL = -150378402 YDB_ERR_DBLRCINVSZ = -150378410 YDB_ERR_MUREUPDWNGRDEND = -150378419 YDB_ERR_DBLOCMBINC = -150378424 YDB_ERR_DBLVLINC = -150378432 YDB_ERR_DBMBSIZMX = -150378440 YDB_ERR_DBMBSIZMN = -150378450 YDB_ERR_DBMBTNSIZMX = -150378459 YDB_ERR_DBMBMINCFRE = -150378464 YDB_ERR_DBMBPINCFL = -150378472 YDB_ERR_DBMBPFLDLBM = -150378480 YDB_ERR_DBMBPFLINT = -150378488 YDB_ERR_DBMBPFLDIS = -150378496 YDB_ERR_DBMBPFRDLBM = -150378504 YDB_ERR_DBMBPFRINT = -150378512 YDB_ERR_DBMAXKEYEXC = -150378522 YDB_ERR_REPLAHEAD = -150378530 YDB_ERR_MUPIPSET2SML = -150378536 YDB_ERR_DBREADBM = -150378546 YDB_ERR_DBCOMPTOOLRG = -150378554 YDB_ERR_DBVERPERFWARN2 = -150378560 YDB_ERR_DBRBNTOOLRG = -150378570 YDB_ERR_DBRBNLBMN = -150378578 YDB_ERR_DBRBNNEG = -150378586 YDB_ERR_DBRLEVTOOHI = -150378594 YDB_ERR_DBRLEVLTONE = -150378602 YDB_ERR_DBSVBNMIN = -150378610 YDB_ERR_DBTTLBLK0 = -150378618 YDB_ERR_DBNOTDB = -150378626 YDB_ERR_DBTOTBLK = -150378634 YDB_ERR_DBTN = -150378643 YDB_ERR_DBNOREGION = -418814106 YDB_ERR_DBTNRESETINC = -150378656 YDB_ERR_DBTNLTCTN = -150378666 YDB_ERR_DBTNRESET = -150378674 YDB_ERR_MUTEXRSRCCLNUP = -150378683 YDB_ERR_SEMWT2LONG = -150378690 YDB_ERR_REPLINSTOPEN = -418814154 YDB_ERR_REPLINSTCLOSE = -150378706 YDB_ERR_JOBSETUP = -150378714 YDB_ERR_DBCRERR8 = -150378723 YDB_ERR_NUMPROCESSORS = -150378728 YDB_ERR_DBADDRANGE8 = -150378739 YDB_ERR_RNDWNSEMFAIL = -150378747 YDB_ERR_GTMSECSHRSHUTDN = -150378755 YDB_ERR_NOSPACECRE = -150378762 YDB_ERR_LOWSPACECRE = -150378768 YDB_ERR_WAITDSKSPACE = -150378779 YDB_ERR_OUTOFSPACE = -150378788 YDB_ERR_JNLPVTINFO = -150378795 YDB_ERR_NOSPACEEXT = -150378802 YDB_ERR_WCBLOCKED = -150378808 YDB_ERR_REPLJNLCLOSED = -150378818 YDB_ERR_RENAMEFAIL = -150378824 YDB_ERR_FILERENAME = -150378835 YDB_ERR_JNLBUFINFO = -150378843 YDB_ERR_SDSEEKERR = -150378850 YDB_ERR_LOCALSOCKREQ = -150378858 YDB_ERR_TPNOTACID = -150378867 YDB_ERR_JNLSETDATA2LONG = -150378874 YDB_ERR_JNLNEWREC = -150378882 YDB_ERR_REPLFTOKSEM = -150378890 YDB_ERR_SOCKNOTPASSED = -150378898 YDB_ERR_UNUSEDMSG1002 = -150378906 YDB_ERR_UNUSEDMSG1003 = -150378914 YDB_ERR_CONNSOCKREQ = -150378922 YDB_ERR_REPLEXITERR = -150378930 YDB_ERR_MUDESTROYSUC = -150378939 YDB_ERR_DBRNDWN = -150378946 YDB_ERR_MUDESTROYFAIL = -150378955 YDB_ERR_NOTALLDBOPN = -150378964 YDB_ERR_MUSELFBKUP = -150378970 YDB_ERR_DBDANGER = -150378976 YDB_ERR_UNUSEDMSG1012 = -150378986 YDB_ERR_TCGETATTR = -150378994 YDB_ERR_TCSETATTR = -150379002 YDB_ERR_IOWRITERR = -150379010 YDB_ERR_REPLINSTWRITE = -418814474 YDB_ERR_DBBADFREEBLKCTR = -150379024 YDB_ERR_REQ2RESUME = -150379035 YDB_ERR_TIMERHANDLER = -150379040 YDB_ERR_FREEMEMORY = -150379050 YDB_ERR_MUREPLSECDEL = -150379059 YDB_ERR_MUREPLSECNOTDEL = -150379067 YDB_ERR_MUJPOOLRNDWNSUC = -150379075 YDB_ERR_MURPOOLRNDWNSUC = -150379083 YDB_ERR_MUJPOOLRNDWNFL = -150379090 YDB_ERR_MURPOOLRNDWNFL = -150379098 YDB_ERR_MUREPLPOOL = -150379107 YDB_ERR_REPLACCSEM = -150379114 YDB_ERR_JNLFLUSHNOPROG = -150379120 YDB_ERR_REPLINSTCREATE = -150379130 YDB_ERR_SUSPENDING = -150379139 YDB_ERR_SOCKBFNOTEMPTY = -150379146 YDB_ERR_ILLESOCKBFSIZE = -150379154 YDB_ERR_NOSOCKETINDEV = -150379162 YDB_ERR_SETSOCKOPTERR = -150379170 YDB_ERR_GETSOCKOPTERR = -150379178 YDB_ERR_NOSUCHPROC = -150379187 YDB_ERR_DSENOFINISH = -150379194 YDB_ERR_LKENOFINISH = -150379202 YDB_ERR_NOCHLEFT = -150379212 YDB_ERR_MULOGNAMEDEF = -150379218 YDB_ERR_BUFOWNERSTUCK = -150379226 YDB_ERR_ACTIVATEFAIL = -150379234 YDB_ERR_DBRNDWNWRN = -150379240 YDB_ERR_DLLNOOPEN = -150379250 YDB_ERR_DLLNORTN = -150379258 YDB_ERR_DLLNOCLOSE = -150379266 YDB_ERR_FILTERNOTALIVE = -150379274 YDB_ERR_FILTERCOMM = -150379282 YDB_ERR_FILTERBADCONV = -150379290 YDB_ERR_PRIMARYISROOT = -150379298 YDB_ERR_GVQUERYGETFAIL = -150379306 YDB_ERR_UNUSEDMSG1053 = -150379314 YDB_ERR_MERGEDESC = -150379322 YDB_ERR_MERGEINCOMPL = -150379328 YDB_ERR_DBNAMEMISMATCH = -150379338 YDB_ERR_DBIDMISMATCH = -150379346 YDB_ERR_DEVOPENFAIL = -150379354 YDB_ERR_IPCNOTDEL = -150379363 YDB_ERR_XCVOIDRET = -150379370 YDB_ERR_MURAIMGFAIL = -150379378 YDB_ERR_REPLINSTUNDEF = -150379386 YDB_ERR_REPLINSTACC = -150379394 YDB_ERR_NOJNLPOOL = -150379402 YDB_ERR_NORECVPOOL = -150379410 YDB_ERR_FTOKERR = -150379418 YDB_ERR_REPLREQRUNDOWN = -150379426 YDB_ERR_BLKCNTEDITFAIL = -150379435 YDB_ERR_SEMREMOVED = -150379443 YDB_ERR_REPLINSTFMT = -150379450 YDB_ERR_SEMKEYINUSE = -150379458 YDB_ERR_XTRNTRANSERR = -150379466 YDB_ERR_XTRNTRANSDLL = -150379474 YDB_ERR_XTRNRETVAL = -150379482 YDB_ERR_XTRNRETSTR = -150379490 YDB_ERR_INVECODEVAL = -150379498 YDB_ERR_SETECODE = -150379506 YDB_ERR_INVSTACODE = -150379514 YDB_ERR_REPEATERROR = -150379522 YDB_ERR_NOCANONICNAME = -150379530 YDB_ERR_NOSUBSCRIPT = -150379538 YDB_ERR_SYSTEMVALUE = -150379546 YDB_ERR_SIZENOTVALID4 = -150379554 YDB_ERR_STRNOTVALID = -150379562 YDB_ERR_CREDNOTPASSED = -150379570 YDB_ERR_ERRWETRAP = -150379578 YDB_ERR_TRACINGON = -150379587 YDB_ERR_CITABENV = -150379594 YDB_ERR_CITABOPN = -150379602 YDB_ERR_CIENTNAME = -150379610 YDB_ERR_CIRTNTYP = -150379618 YDB_ERR_CIRCALLNAME = -150379626 YDB_ERR_CIRPARMNAME = -150379634 YDB_ERR_CIDIRECTIVE = -150379642 YDB_ERR_CIPARTYPE = -150379650 YDB_ERR_CIUNTYPE = -150379658 YDB_ERR_CINOENTRY = -150379666 YDB_ERR_JNLINVSWITCHLMT = -150379674 YDB_ERR_SETZDIR = -418815138 YDB_ERR_JOBACTREF = -150379690 YDB_ERR_ECLOSTMID = -150379696 YDB_ERR_ZFF2MANY = -150379706 YDB_ERR_JNLFSYNCLSTCK = -150379712 YDB_ERR_DELIMWIDTH = -150379722 YDB_ERR_DBBMLCORRUPT = -150379730 YDB_ERR_DLCKAVOIDANCE = -150379738 YDB_ERR_WRITERSTUCK = -150379746 YDB_ERR_PATNOTFOUND = -150379754 YDB_ERR_INVZDIRFORM = -150379762 YDB_ERR_ZDIROUTOFSYNC = -150379768 YDB_ERR_GBLNOEXIST = -150379779 YDB_ERR_MAXBTLEVEL = -150379786 YDB_ERR_INVMNEMCSPC = -150379794 YDB_ERR_JNLALIGNSZCHG = -150379803 YDB_ERR_SEFCTNEEDSFULLB = -150379810 YDB_ERR_GVFAILCORE = -150379818 YDB_ERR_UNUSEDMSG1117 = -150379826 YDB_ERR_DBFRZRESETSUC = -150379835 YDB_ERR_JNLFILEXTERR = -150379842 YDB_ERR_JOBEXAMDONE = -150379851 YDB_ERR_JOBEXAMFAIL = -150379858 YDB_ERR_JOBINTRRQST = -150379866 YDB_ERR_ERRWZINTR = -150379874 YDB_ERR_CLIERR = -150379882 YDB_ERR_REPLNOBEFORE = -150379888 YDB_ERR_REPLJNLCNFLCT = -150379896 YDB_ERR_JNLDISABLE = -150379904 YDB_ERR_FILEEXISTS = -150379914 YDB_ERR_JNLSTATE = -150379923 YDB_ERR_REPLSTATE = -150379931 YDB_ERR_JNLCREATE = -150379939 YDB_ERR_JNLNOCREATE = -150379946 YDB_ERR_JNLFNF = -150379955 YDB_ERR_PREVJNLLINKCUT = -150379963 YDB_ERR_PREVJNLLINKSET = -150379971 YDB_ERR_FILENAMETOOLONG = -150379978 YDB_ERR_REQRECOV = -150379986 YDB_ERR_JNLTRANS2BIG = -150379994 YDB_ERR_JNLSWITCHTOOSM = -150380002 YDB_ERR_JNLSWITCHSZCHG = -150380011 YDB_ERR_NOTRNDMACC = -150380018 YDB_ERR_TMPFILENOCRE = -150380026 YDB_ERR_DEVICEOPTION = -150380034 YDB_ERR_JNLSENDOPER = -150380043 YDB_ERR_UNUSEDMSG1145 = -150380050 YDB_ERR_UNUSEDMSG1146 = -150380058 YDB_ERR_UNUSEDMSG1147 = -150380066 YDB_ERR_UNUSEDMSG1148 = -150380074 YDB_ERR_UNUSEDMSG1149 = -150380082 YDB_ERR_UNUSEDMSG1150 = -150380090 YDB_ERR_UNUSEDMSG1151 = -150380098 YDB_ERR_UNUSEDMSG1152 = -150380106 YDB_ERR_UNUSEDMSG1153 = -150380113 YDB_ERR_UNUSEDMSG1154 = -150380121 YDB_ERR_UNUSEDMSG1155 = -150380128 YDB_ERR_UNUSEDMSG1156 = -150380138 YDB_ERR_UNUSEDMSG1157 = -150380146 YDB_ERR_UNUSEDMSG1158 = -150380154 YDB_ERR_UNUSEDMSG1159 = -150380162 YDB_ERR_UNUSEDMSG1160 = -150380170 YDB_ERR_UNUSEDMSG1161 = -150380178 YDB_ERR_MUTEXRELEASED = -150380186 YDB_ERR_JNLCRESTATUS = -150380192 YDB_ERR_ZBREAKFAIL = -150380203 YDB_ERR_DLLVERSION = -150380210 YDB_ERR_INVZROENT = -150380218 YDB_ERR_UNUSEDMSG1167 = -150380226 YDB_ERR_GETSOCKNAMERR = -150380234 YDB_ERR_INVYDBEXIT = -150380242 YDB_ERR_CIMAXPARAM = -150380250 YDB_ERR_UNUSEDMSG1171 = -150380258 YDB_ERR_CIMAXLEVELS = -150380266 YDB_ERR_JOBINTRRETHROW = -150380274 YDB_ERR_STARFILE = -150380282 YDB_ERR_NOSTARFILE = -150380290 YDB_ERR_MUJNLSTAT = -150380299 YDB_ERR_JNLTPNEST = -150380304 YDB_ERR_REPLOFFJNLON = -150380314 YDB_ERR_FILEDELFAIL = -150380320 YDB_ERR_INVQUALTIME = -150380330 YDB_ERR_NOTPOSITIVE = -150380338 YDB_ERR_INVREDIRQUAL = -150380346 YDB_ERR_INVERRORLIM = -150380354 YDB_ERR_INVIDQUAL = -150380362 YDB_ERR_INVTRNSQUAL = -150380370 YDB_ERR_JNLNOBIJBACK = -150380378 YDB_ERR_SETREG2RESYNC = -150380387 YDB_ERR_JNLALIGNTOOSM = -150380392 YDB_ERR_JNLFILEOPNERR = -150380402 YDB_ERR_JNLFILECLOSERR = -150380410 YDB_ERR_REPLSTATEOFF = -150380418 YDB_ERR_MUJNLPREVGEN = -150380427 YDB_ERR_MUPJNLINTERRUPT = -150380434 YDB_ERR_ROLLBKINTERRUPT = -150380442 YDB_ERR_RLBKJNSEQ = -150380451 YDB_ERR_REPLRECFMT = -150380460 YDB_ERR_PRIMARYNOTROOT = -150380466 YDB_ERR_DBFRZRESETFL = -150380474 YDB_ERR_JNLCYCLE = -150380482 YDB_ERR_JNLPREVRECOV = -150380490 YDB_ERR_RESOLVESEQNO = -150380499 YDB_ERR_BOVTNGTEOVTN = -150380506 YDB_ERR_BOVTMGTEOVTM = -150380514 YDB_ERR_BEGSEQGTENDSEQ = -150380522 YDB_ERR_DBADDRALIGN = -150380531 YDB_ERR_DBWCVERIFYSTART = -150380539 YDB_ERR_DBWCVERIFYEND = -150380547 YDB_ERR_MUPIPSIG = -150380555 YDB_ERR_HTSHRINKFAIL = -150380560 YDB_ERR_STPEXPFAIL = -150380570 YDB_ERR_DBBTUWRNG = -150380576 YDB_ERR_DBBTUFIXED = -150380587 YDB_ERR_DBMAXREC2BIG = -150380594 YDB_ERR_UNUSEDMSG1214 = -150380602 YDB_ERR_UNUSEDMSG1215 = -150380610 YDB_ERR_UNUSEDMSG1216 = -150380618 YDB_ERR_UNUSEDMSG1217 = -150380626 YDB_ERR_DBMINRESBYTES = -150380634 YDB_ERR_UNUSEDMSG1219 = -150380642 YDB_ERR_UNUSEDMSG1220 = -150380651 YDB_ERR_UNUSEDMSG1221 = -150380658 YDB_ERR_UNUSEDMSG1222 = -150380666 YDB_ERR_UNUSEDMSG1223 = -150380674 YDB_ERR_UNUSEDMSG1224 = -150380682 YDB_ERR_UNUSEDMSG1225 = -150380690 YDB_ERR_DYNUPGRDFAIL = -150380698 YDB_ERR_MMNODYNDWNGRD = -150380706 YDB_ERR_MMNODYNUPGRD = -150380714 YDB_ERR_MUDWNGRDNRDY = -150380722 YDB_ERR_MUDWNGRDTN = -150380730 YDB_ERR_MUDWNGRDNOTPOS = -150380738 YDB_ERR_MUUPGRDNRDY = -150380746 YDB_ERR_TNWARN = -150380752 YDB_ERR_TNTOOLARGE = -150380762 YDB_ERR_SHMPLRECOV = -150380771 YDB_ERR_MUNOSTRMBKUP = -150380776 YDB_ERR_EPOCHTNHI = -150380786 YDB_ERR_CHNGTPRSLVTM = -150380795 YDB_ERR_JNLUNXPCTERR = -150380802 YDB_ERR_OMISERVHANG = -150380811 YDB_ERR_RSVDBYTE2HIGH = -150380818 YDB_ERR_BKUPTMPFILOPEN = -418816282 YDB_ERR_BKUPTMPFILWRITE = -418816290 YDB_ERR_SHMHUGETLB = -150380840 YDB_ERR_SHMLOCK = -150380848 YDB_ERR_UNUSEDMSG1246 = -150380858 YDB_ERR_REPLINSTMISMTCH = -150380866 YDB_ERR_REPLINSTREAD = -418816330 YDB_ERR_REPLINSTDBMATCH = -150380882 YDB_ERR_REPLINSTNMSAME = -150380890 YDB_ERR_REPLINSTNMUNDEF = -150380898 YDB_ERR_REPLINSTNMLEN = -150380906 YDB_ERR_REPLINSTNOHIST = -150380914 YDB_ERR_REPLINSTSECLEN = -150380922 YDB_ERR_REPLINSTSECMTCH = -150380930 YDB_ERR_REPLINSTSECNONE = -150380938 YDB_ERR_REPLINSTSECUNDF = -150380946 YDB_ERR_REPLINSTSEQORD = -150380954 YDB_ERR_REPLINSTSTNDALN = -150380962 YDB_ERR_REPLREQROLLBACK = -150380970 YDB_ERR_REQROLLBACK = -150380978 YDB_ERR_INVOBJFILE = -150380986 YDB_ERR_SRCSRVEXISTS = -150380994 YDB_ERR_SRCSRVNOTEXIST = -150381002 YDB_ERR_SRCSRVTOOMANY = -150381010 YDB_ERR_JNLPOOLBADSLOT = -150381016 YDB_ERR_NOENDIANCVT = -150381026 YDB_ERR_ENDIANCVT = -150381035 YDB_ERR_DBENDIAN = -150381042 YDB_ERR_BADCHSET = -150381050 YDB_ERR_BADCASECODE = -150381058 YDB_ERR_BADCHAR = -150381066 YDB_ERR_DLRCILLEGAL = -150381074 YDB_ERR_NONUTF8LOCALE = -150381082 YDB_ERR_INVDLRCVAL = -150381090 YDB_ERR_DBMISALIGN = -150381098 YDB_ERR_LOADINVCHSET = -150381106 YDB_ERR_DLLCHSETM = -150381114 YDB_ERR_DLLCHSETUTF8 = -150381122 YDB_ERR_BOMMISMATCH = -150381130 YDB_ERR_WIDTHTOOSMALL = -150381138 YDB_ERR_SOCKMAX = -150381146 YDB_ERR_PADCHARINVALID = -150381154 YDB_ERR_ZCNOPREALLOUTPAR = -150381162 YDB_ERR_SVNEXPECTED = -150381170 YDB_ERR_SVNONEW = -150381178 YDB_ERR_ZINTDIRECT = -150381186 YDB_ERR_ZINTRECURSEIO = -150381194 YDB_ERR_MRTMAXEXCEEDED = -150381202 YDB_ERR_JNLCLOSED = -150381210 YDB_ERR_RLBKNOBIMG = -150381218 YDB_ERR_RLBKJNLNOBIMG = -150381227 YDB_ERR_RLBKLOSTTNONLY = -150381235 YDB_ERR_KILLBYSIGSINFO3 = -150381244 YDB_ERR_GTMSECSHRTMPPATH = -150381251 YDB_ERR_UNUSEDMSG1296 = -150381258 YDB_ERR_INVMEMRESRV = -150381264 YDB_ERR_OPCOMMISSED = -150381275 YDB_ERR_COMMITWAITSTUCK = -150381282 YDB_ERR_COMMITWAITPID = -150381290 YDB_ERR_UPDREPLSTATEOFF = -150381298 YDB_ERR_LITNONGRAPH = -150381304 YDB_ERR_DBFHEADERR8 = -150381315 YDB_ERR_MMBEFOREJNL = -150381320 YDB_ERR_MMNOBFORRPL = -150381328 YDB_ERR_KILLABANDONED = -150381336 YDB_ERR_BACKUPKILLIP = -150381344 YDB_ERR_LOGTOOLONG = -150381354 YDB_ERR_NOALIASLIST = -150381362 YDB_ERR_ALIASEXPECTED = -150381370 YDB_ERR_VIEWLVN = -150381378 YDB_ERR_DZWRNOPAREN = -150381386 YDB_ERR_DZWRNOALIAS = -150381394 YDB_ERR_FREEZEERR = -150381402 YDB_ERR_CLOSEFAIL = -150381410 YDB_ERR_CRYPTINIT = -150381418 YDB_ERR_CRYPTOPFAILED = -150381426 YDB_ERR_CRYPTDLNOOPEN = -150381434 YDB_ERR_CRYPTNOV4 = -150381442 YDB_ERR_CRYPTNOMM = -150381450 YDB_ERR_READONLYNOBG = -150381458 YDB_ERR_CRYPTKEYFETCHFAILED = -418816922 YDB_ERR_CRYPTKEYFETCHFAILEDNF = -150381474 YDB_ERR_CRYPTHASHGENFAILED = -150381482 YDB_ERR_CRYPTNOKEY = -150381490 YDB_ERR_BADTAG = -150381498 YDB_ERR_ICUVERLT36 = -150381506 YDB_ERR_ICUSYMNOTFOUND = -150381514 YDB_ERR_STUCKACT = -150381523 YDB_ERR_CALLINAFTERXIT = -150381530 YDB_ERR_LOCKSPACEFULL = -150381538 YDB_ERR_IOERROR = -150381546 YDB_ERR_MAXSSREACHED = -150381554 YDB_ERR_SNAPSHOTNOV4 = -150381562 YDB_ERR_SSV4NOALLOW = -150381570 YDB_ERR_SSTMPDIRSTAT = -418817034 YDB_ERR_SSTMPCREATE = -418817042 YDB_ERR_JNLFILEDUP = -150381594 YDB_ERR_SSPREMATEOF = -150381602 YDB_ERR_SSFILOPERR = -150381610 YDB_ERR_REGSSFAIL = -150381618 YDB_ERR_SSSHMCLNUPFAIL = -150381626 YDB_ERR_SSFILCLNUPFAIL = -150381634 YDB_ERR_SETINTRIGONLY = -150381642 YDB_ERR_MAXTRIGNEST = -150381650 YDB_ERR_TRIGCOMPFAIL = -150381658 YDB_ERR_NOZTRAPINTRIG = -150381666 YDB_ERR_ZTWORMHOLE2BIG = -150381674 YDB_ERR_JNLENDIANLITTLE = -150381682 YDB_ERR_JNLENDIANBIG = -150381690 YDB_ERR_TRIGINVCHSET = -150381698 YDB_ERR_TRIGREPLSTATE = -150381706 YDB_ERR_GVDATAGETFAIL = -150381714 YDB_ERR_TRIG2NOTRIG = -150381720 YDB_ERR_ZGOTOINVLVL = -150381730 YDB_ERR_TRIGTCOMMIT = -150381738 YDB_ERR_TRIGTLVLCHNG = -150381746 YDB_ERR_TRIGNAMEUNIQ = -150381754 YDB_ERR_ZTRIGINVACT = -150381762 YDB_ERR_INDRCOMPFAIL = -150381770 YDB_ERR_QUITALSINV = -150381778 YDB_ERR_PROCTERM = -150381784 YDB_ERR_SRCLNNTDSP = -150381795 YDB_ERR_ARROWNTDSP = -150381803 YDB_ERR_TRIGDEFBAD = -150381810 YDB_ERR_TRIGSUBSCRANGE = -150381818 YDB_ERR_TRIGDATAIGNORE = -150381827 YDB_ERR_TRIGIS = -150381835 YDB_ERR_TCOMMITDISALLOW = -150381842 YDB_ERR_SSATTACHSHM = -150381850 YDB_ERR_TRIGDEFNOSYNC = -150381856 YDB_ERR_TRESTMAX = -150381866 YDB_ERR_ZLINKBYPASS = -150381875 YDB_ERR_GBLEXPECTED = -150381882 YDB_ERR_GVZTRIGFAIL = -150381890 YDB_ERR_MUUSERLBK = -150381898 YDB_ERR_SETINSETTRIGONLY = -150381906 YDB_ERR_DZTRIGINTRIG = -150381914 YDB_ERR_LSINSERTED = -150381920 YDB_ERR_BOOLSIDEFFECT = -150381928 YDB_ERR_DBBADUPGRDSTATE = -150381936 YDB_ERR_WRITEWAITPID = -150381946 YDB_ERR_ZGOCALLOUTIN = -150381954 YDB_ERR_UNUSEDMSG1384 = -150381962 YDB_ERR_REPLXENDIANFAIL = -150381970 YDB_ERR_UNUSEDMSG1386 = -150381978 YDB_ERR_GTMSECSHRCHDIRF = -150381986 YDB_ERR_JNLORDBFLU = -418817450 YDB_ERR_ZCCLNUPRTNMISNG = -150382002 YDB_ERR_ZCINVALIDKEYWORD = -150382010 YDB_ERR_REPLMULTINSTUPDATE = -150382018 YDB_ERR_DBSHMNAMEDIFF = -150382026 YDB_ERR_SHMREMOVED = -150382035 YDB_ERR_DEVICEWRITEONLY = -150382042 YDB_ERR_ICUERROR = -150382050 YDB_ERR_ZDATEBADDATE = -150382058 YDB_ERR_ZDATEBADTIME = -150382066 YDB_ERR_COREINPROGRESS = -150382074 YDB_ERR_MAXSEMGETRETRY = -150382082 YDB_ERR_JNLNOREPL = -150382090 YDB_ERR_JNLRECINCMPL = -150382098 YDB_ERR_JNLALLOCGROW = -150382107 YDB_ERR_INVTRCGRP = -150382114 YDB_ERR_MUINFOUINT6 = -150382123 YDB_ERR_NOLOCKMATCH = -150382131 YDB_ERR_BADREGION = -150382138 YDB_ERR_LOCKSPACEUSE = -150382147 YDB_ERR_JIUNHNDINT = -150382154 YDB_ERR_GTMASSERT2 = -150382164 YDB_ERR_ZTRIGNOTRW = -418817626 YDB_ERR_TRIGMODREGNOTRW = -418817634 YDB_ERR_INSNOTJOINED = -150382186 YDB_ERR_INSROLECHANGE = -150382194 YDB_ERR_INSUNKNOWN = -150382202 YDB_ERR_NORESYNCSUPPLONLY = -150382210 YDB_ERR_NORESYNCUPDATERONLY = -150382218 YDB_ERR_NOSUPPLSUPPL = -150382226 YDB_ERR_REPL2OLD = -150382234 YDB_ERR_EXTRFILEXISTS = -150382242 YDB_ERR_MUUSERECOV = -150382250 YDB_ERR_SECNOTSUPPLEMENTARY = -150382258 YDB_ERR_SUPRCVRNEEDSSUPSRC = -150382266 YDB_ERR_PEERPIDMISMATCH = -150382274 YDB_ERR_SETITIMERFAILED = -150382284 YDB_ERR_UPDSYNC2MTINS = -150382290 YDB_ERR_UPDSYNCINSTFILE = -150382298 YDB_ERR_REUSEINSTNAME = -150382306 YDB_ERR_RCVRMANYSTRMS = -150382314 YDB_ERR_RSYNCSTRMVAL = -150382322 YDB_ERR_RLBKSTRMSEQ = -150382331 YDB_ERR_RESOLVESEQSTRM = -150382339 YDB_ERR_REPLINSTDBSTRM = -150382346 YDB_ERR_RESUMESTRMNUM = -150382354 YDB_ERR_ORLBKSTART = -150382363 YDB_ERR_ORLBKTERMNTD = -150382370 YDB_ERR_ORLBKCMPLT = -150382379 YDB_ERR_ORLBKNOSTP = -150382387 YDB_ERR_ORLBKFRZPROG = -150382395 YDB_ERR_ORLBKFRZOVER = -150382403 YDB_ERR_ORLBKNOV4BLK = -150382410 YDB_ERR_DBROLLEDBACK = -150382418 YDB_ERR_DSEWCREINIT = -150382427 YDB_ERR_MURNDWNOVRD = -150382435 YDB_ERR_REPLONLNRLBK = -150382442 YDB_ERR_SRVLCKWT2LNG = -150382450 YDB_ERR_IGNBMPMRKFREE = -150382459 YDB_ERR_PERMGENFAIL = -418817922 YDB_ERR_PERMGENDIAG = -150382475 YDB_ERR_MUTRUNC1ATIME = -150382483 YDB_ERR_MUTRUNCBACKINPROG = -150382491 YDB_ERR_MUTRUNCERROR = -150382498 YDB_ERR_MUTRUNCFAIL = -150382506 YDB_ERR_MUTRUNCNOSPACE = -150382515 YDB_ERR_MUTRUNCNOTBG = -150382522 YDB_ERR_MUTRUNCNOV4 = -150382532 YDB_ERR_MUTRUNCPERCENT = -150382538 YDB_ERR_MUTRUNCSSINPROG = -150382547 YDB_ERR_MUTRUNCSUCCESS = -150382555 YDB_ERR_RSYNCSTRMSUPPLONLY = -150382562 YDB_ERR_STRMNUMIS = -150382571 YDB_ERR_STRMNUMMISMTCH1 = -150382578 YDB_ERR_STRMNUMMISMTCH2 = -150382586 YDB_ERR_STRMSEQMISMTCH = -150382594 YDB_ERR_LOCKSPACEINFO = -150382603 YDB_ERR_JRTNULLFAIL = -150382610 YDB_ERR_LOCKSUB2LONG = -150382618 YDB_ERR_RESRCWAIT = -150382627 YDB_ERR_RESRCINTRLCKBYPAS = -150382635 YDB_ERR_DBFHEADERRANY = -150382643 YDB_ERR_REPLINSTFROZEN = -150382650 YDB_ERR_REPLINSTFREEZECOMMENT = -150382659 YDB_ERR_REPLINSTUNFROZEN = -150382667 YDB_ERR_DSKNOSPCAVAIL = -150382675 YDB_ERR_DSKNOSPCBLOCKED = -150382682 YDB_ERR_DSKSPCAVAILABLE = -150382691 YDB_ERR_ENOSPCQIODEFER = -150382699 YDB_ERR_CUSTOMFILOPERR = -150382706 YDB_ERR_CUSTERRNOTFND = -150382714 YDB_ERR_CUSTERRSYNTAX = -150382722 YDB_ERR_ORLBKINPROG = -150382731 YDB_ERR_DBSPANGLOINCMP = -150382738 YDB_ERR_DBSPANCHUNKORD = -150382746 YDB_ERR_DBDATAMX = -150382754 YDB_ERR_DBIOERR = -150382762 YDB_ERR_INITORRESUME = -150382770 YDB_ERR_GTMSECSHRNOARG0 = -150382780 YDB_ERR_GTMSECSHRISNOT = -150382788 YDB_ERR_GTMSECSHRBADDIR = -150382796 YDB_ERR_JNLBUFFREGUPD = -150382800 YDB_ERR_JNLBUFFDBUPD = -150382808 YDB_ERR_LOCKINCR2HIGH = -150382818 YDB_ERR_LOCKIS = -150382827 YDB_ERR_LDSPANGLOINCMP = -150382834 YDB_ERR_MUFILRNDWNFL2 = -150382842 YDB_ERR_MUINSTFROZEN = -150382851 YDB_ERR_MUINSTUNFROZEN = -150382859 YDB_ERR_GTMEISDIR = -150382866 YDB_ERR_SPCLZMSG = -150382874 YDB_ERR_MUNOTALLINTEG = -150382880 YDB_ERR_BKUPRUNNING = -150382890 YDB_ERR_MUSIZEINVARG = -150382898 YDB_ERR_MUSIZEFAIL = -150382906 YDB_ERR_SIDEEFFECTEVAL = -150382912 YDB_ERR_CRYPTINIT2 = -150382922 YDB_ERR_CRYPTDLNOOPEN2 = -150382930 YDB_ERR_CRYPTBADCONFIG = -418818394 YDB_ERR_DBCOLLREQ = -150382944 YDB_ERR_SETEXTRENV = -150382954 YDB_ERR_NOTALLDBRNDWN = -150382962 YDB_ERR_TPRESTNESTERR = -150382970 YDB_ERR_JNLFILRDOPN = -150382978 YDB_ERR_UNUSEDMSG1514 = -150382986 YDB_ERR_FTOKKEY = -150382995 YDB_ERR_SEMID = -150383003 YDB_ERR_JNLQIOSALVAGE = -150383011 YDB_ERR_FAKENOSPCLEARED = -150383019 YDB_ERR_MMFILETOOLARGE = -150383026 YDB_ERR_BADZPEEKARG = -150383034 YDB_ERR_BADZPEEKRANGE = -150383042 YDB_ERR_BADZPEEKFMT = -150383050 YDB_ERR_DBMBMINCFREFIXED = -150383056 YDB_ERR_NULLENTRYREF = -150383066 YDB_ERR_ZPEEKNORPLINFO = -150383074 YDB_ERR_MMREGNOACCESS = -150383082 YDB_ERR_UNUSEDMSG1527 = -150383090 YDB_ERR_MALLOCCRIT = -150383096 YDB_ERR_HOSTCONFLICT = -150383106 YDB_ERR_GETADDRINFO = -150383114 YDB_ERR_GETNAMEINFO = -150383122 YDB_ERR_SOCKBIND = -150383130 YDB_ERR_INSTFRZDEFER = -150383139 YDB_ERR_VIEWARGTOOLONG = -150383146 YDB_ERR_REGOPENFAIL = -150383154 YDB_ERR_REPLINSTNOSHM = -150383162 YDB_ERR_DEVPARMTOOSMALL = -150383170 YDB_ERR_REMOTEDBNOSPGBL = -150383178 YDB_ERR_NCTCOLLSPGBL = -150383186 YDB_ERR_ACTCOLLMISMTCH = -150383194 YDB_ERR_GBLNOMAPTOREG = -150383202 YDB_ERR_ISSPANGBL = -150383210 YDB_ERR_TPNOSUPPORT = -150383218 YDB_ERR_EXITSTATUS = -150383226 YDB_ERR_ZATRANSERR = -150383234 YDB_ERR_FILTERTIMEDOUT = -150383242 YDB_ERR_TLSDLLNOOPEN = -150383250 YDB_ERR_TLSINIT = -150383258 YDB_ERR_TLSCONVSOCK = -150383266 YDB_ERR_TLSHANDSHAKE = -150383274 YDB_ERR_TLSCONNINFO = -150383280 YDB_ERR_TLSIOERROR = -150383290 YDB_ERR_TLSRENEGOTIATE = -150383298 YDB_ERR_REPLNOTLS = -150383306 YDB_ERR_COLTRANSSTR2LONG = -150383314 YDB_ERR_SOCKPASS = -150383322 YDB_ERR_SOCKACCEPT = -150383330 YDB_ERR_NOSOCKHANDLE = -150383338 YDB_ERR_TRIGLOADFAIL = -150383346 YDB_ERR_SOCKPASSDATAMIX = -150383354 YDB_ERR_NOGTCMDB = -150383362 YDB_ERR_NOUSERDB = -150383370 YDB_ERR_DSENOTOPEN = -150383378 YDB_ERR_ZSOCKETATTR = -150383386 YDB_ERR_ZSOCKETNOTSOCK = -150383394 YDB_ERR_CHSETALREADY = -150383402 YDB_ERR_DSEMAXBLKSAV = -150383410 YDB_ERR_BLKINVALID = -150383418 YDB_ERR_CANTBITMAP = -150383426 YDB_ERR_AIMGBLKFAIL = -150383434 YDB_ERR_YDBDISTUNVERIF = -150383442 YDB_ERR_CRYPTNOAPPEND = -150383450 YDB_ERR_CRYPTNOSEEK = -150383458 YDB_ERR_CRYPTNOTRUNC = -150383466 YDB_ERR_CRYPTNOKEYSPEC = -150383474 YDB_ERR_CRYPTNOOVERRIDE = -150383482 YDB_ERR_CRYPTKEYTOOBIG = -150383490 YDB_ERR_CRYPTBADWRTPOS = -150383498 YDB_ERR_LABELNOTFND = -150383506 YDB_ERR_RELINKCTLERR = -150383514 YDB_ERR_INVLINKTMPDIR = -150383522 YDB_ERR_NOEDITOR = -150383530 YDB_ERR_UPDPROC = -150383538 YDB_ERR_HLPPROC = -150383546 YDB_ERR_REPLNOHASHTREC = -150383554 YDB_ERR_REMOTEDBNOTRIG = -150383562 YDB_ERR_NEEDTRIGUPGRD = -150383570 YDB_ERR_REQRLNKCTLRNDWN = -150383578 YDB_ERR_RLNKCTLRNDWNSUC = -150383587 YDB_ERR_RLNKCTLRNDWNFL = -150383594 YDB_ERR_MPROFRUNDOWN = -150383602 YDB_ERR_ZPEEKNOJNLINFO = -150383610 YDB_ERR_TLSPARAM = -150383618 YDB_ERR_RLNKRECLATCH = -150383626 YDB_ERR_RLNKSHMLATCH = -150383634 YDB_ERR_JOBLVN2LONG = -150383642 YDB_ERR_NLRESTORE = -150383648 YDB_ERR_PREALLOCATEFAIL = -150383658 YDB_ERR_NODFRALLOCSUPP = -150383664 YDB_ERR_LASTWRITERBYPAS = -150383672 YDB_ERR_TRIGUPBADLABEL = -150383682 YDB_ERR_WEIRDSYSTIME = -150383690 YDB_ERR_REPLSRCEXITERR = -150383696 YDB_ERR_INVZBREAK = -150383706 YDB_ERR_INVTMPDIR = -150383714 YDB_ERR_ARCTLMAXHIGH = -150383720 YDB_ERR_ARCTLMAXLOW = -150383728 YDB_ERR_NONTPRESTART = -150383739 YDB_ERR_PBNPARMREQ = -150383746 YDB_ERR_PBNNOPARM = -150383754 YDB_ERR_PBNUNSUPSTRUCT = -150383762 YDB_ERR_PBNINVALID = -150383770 YDB_ERR_PBNNOFIELD = -150383778 YDB_ERR_JNLDBSEQNOMATCH = -150383786 YDB_ERR_MULTIPROCLATCH = -150383794 YDB_ERR_INVLOCALE = -150383802 YDB_ERR_NOMORESEMCNT = -150383811 YDB_ERR_SETQUALPROB = -150383818 YDB_ERR_EXTRINTEGRITY = -150383826 YDB_ERR_CRYPTKEYRELEASEFAILED = -418819290 YDB_ERR_MUREENCRYPTSTART = -150383843 YDB_ERR_MUREENCRYPTV4NOALLOW = -150383850 YDB_ERR_ENCRYPTCONFLT = -150383858 YDB_ERR_JNLPOOLRECOVERY = -150383866 YDB_ERR_LOCKTIMINGINTP = -150383872 YDB_ERR_PBNUNSUPTYPE = -150383882 YDB_ERR_DBFHEADLRU = -150383891 YDB_ERR_ASYNCIONOV4 = -150383898 YDB_ERR_AIOCANCELTIMEOUT = -150383906 YDB_ERR_DBGLDMISMATCH = -150383914 YDB_ERR_DBBLKSIZEALIGN = -150383922 YDB_ERR_ASYNCIONOMM = -150383930 YDB_ERR_RESYNCSEQLOW = -150383938 YDB_ERR_DBNULCOL = -150383946 YDB_ERR_UTF16ENDIAN = -150383954 YDB_ERR_OFRZACTIVE = -150383960 YDB_ERR_OFRZAUTOREL = -150383968 YDB_ERR_OFRZCRITREL = -150383976 YDB_ERR_OFRZCRITSTUCK = -150383984 YDB_ERR_OFRZNOTHELD = -150383992 YDB_ERR_AIOBUFSTUCK = -150384002 YDB_ERR_DBDUPNULCOL = -150384010 YDB_ERR_CHANGELOGINTERVAL = -150384019 YDB_ERR_DBNONUMSUBS = -150384026 YDB_ERR_AUTODBCREFAIL = -150384034 YDB_ERR_RNDWNSTATSDBFAIL = -150384042 YDB_ERR_STATSDBNOTSUPP = -150384050 YDB_ERR_TPNOSTATSHARE = -150384058 YDB_ERR_FNTRANSERROR = -150384066 YDB_ERR_NOCRENETFILE = -150384074 YDB_ERR_DSKSPCCHK = -150384082 YDB_ERR_NOCREMMBIJ = -150384090 YDB_ERR_FILECREERR = -150384098 YDB_ERR_RAWDEVUNSUP = -150384106 YDB_ERR_DBFILECREATED = -150384115 YDB_ERR_PCTYRESERVED = -150384122 YDB_ERR_REGFILENOTFOUND = -418819587 YDB_ERR_DRVLONGJMP = -150384138 YDB_ERR_INVSTATSDB = -150384146 YDB_ERR_STATSDBERR = -150384154 YDB_ERR_STATSDBINUSE = -150384162 YDB_ERR_STATSDBFNERR = -150384170 YDB_ERR_JNLSWITCHRETRY = -150384179 YDB_ERR_JNLSWITCHFAIL = -150384186 YDB_ERR_CLISTRTOOLONG = -150384194 YDB_ERR_LVMONBADVAL = -150384202 YDB_ERR_RESTRICTEDOP = -418819666 YDB_ERR_RESTRICTSYNTAX = -150384218 YDB_ERR_MUCREFILERR = -418819682 YDB_ERR_JNLBUFFPHS2SALVAGE = -150384235 YDB_ERR_JNLPOOLPHS2SALVAGE = -150384243 YDB_ERR_MURNDWNARGLESS = -150384251 YDB_ERR_DBFREEZEON = -150384259 YDB_ERR_DBFREEZEOFF = -150384267 YDB_ERR_STPCRIT = -150384274 YDB_ERR_STPOFLOW = -150384284 YDB_ERR_SYSUTILCONF = -150384290 YDB_ERR_MSTACKSZNA = -150384299 YDB_ERR_JNLEXTRCTSEQNO = -150384306 YDB_ERR_INVSEQNOQUAL = -150384314 YDB_ERR_LOWSPC = -150384323 YDB_ERR_FAILEDRECCOUNT = -150384330 YDB_ERR_LOADRECCNT = -150384339 YDB_ERR_COMMFILTERERR = -150384346 YDB_ERR_NOFILTERNEST = -150384354 YDB_ERR_MLKHASHTABERR = -150384362 YDB_ERR_LOCKCRITOWNER = -150384371 YDB_ERR_MLKHASHWRONG = -150384378 YDB_ERR_XCRETNULLREF = -150384386 YDB_ERR_EXTCALLBOUNDS = -150384396 YDB_ERR_EXCEEDSPREALLOC = -150384402 YDB_ERR_ZTIMEOUT = -150384408 YDB_ERR_ERRWZTIMEOUT = -150384418 YDB_ERR_MLKHASHRESIZE = -150384427 YDB_ERR_MLKHASHRESIZEFAIL = -150384432 YDB_ERR_MLKCLEANED = -150384443 YDB_ERR_NOTMNAME = -150384450 YDB_ERR_DEVNAMERESERVED = -150384458 YDB_ERR_ORLBKREL = -150384467 YDB_ERR_ORLBKRESTART = -150384475 YDB_ERR_UNIQNAME = -150384482 YDB_ERR_APDINITFAIL = -150384490 YDB_ERR_APDCONNFAIL = -150384498 YDB_ERR_APDLOGFAIL = -150384506 YDB_ERR_STATSDBMEMERR = -150384514 YDB_ERR_BUFSPCDELAY = -150384520 YDB_ERR_AIOQUEUESTUCK = -150384530 YDB_ERR_INVGVPATQUAL = -150384538 YDB_ERR_NULLPATTERN = -150384544 YDB_ERR_MLKREHASH = -150384555 YDB_ERR_MUKEEPPERCENT = -150384562 YDB_ERR_MUKEEPNODEC = -150384570 YDB_ERR_MUKEEPNOTRUNC = -150384578 YDB_ERR_MUTRUNCNOSPKEEP = -150384587 YDB_ERR_TERMHANGUP = -150384594 YDB_ERR_DBFILNOFULLWRT = -150384600 YDB_ERR_BADCONNECTPARAM = -150384610 YDB_ERR_BADPARAMCOUNT = -150384618 YDB_ERR_REPLALERT = -150384624 YDB_ERR_SHUT2QUICK = -150384632 YDB_ERR_REPLNORESP = -150384640 YDB_ERR_REPL0BACKLOG = -150384649 YDB_ERR_REPLBACKLOG = -150384658 YDB_ERR_INVSHUTDOWN = -150384666 YDB_ERR_SOCKBLOCKERR = -150384674 YDB_ERR_SOCKWAITARG = -150384682 YDB_ERR_LASTTRANS = -150384691 YDB_ERR_SRCBACKLOGSTATUS = -150384699 YDB_ERR_BKUPRETRY = -150384707 YDB_ERR_BKUPPROGRESS = -150384715 YDB_ERR_BKUPFILEPERM = -150384722 YDB_ERR_AUDINITFAIL = -150384730 YDB_ERR_AUDCONNFAIL = -150384738 YDB_ERR_AUDLOGFAIL = -150384746 YDB_ERR_SOCKCLOSE = -150384754 YDB_ERR_QUERY2 = -151027722 YDB_ERR_MIXIMAGE = -151027730 YDB_ERR_LIBYOTTAMISMTCH = -151027738 YDB_ERR_READONLYNOSTATS = -151027746 YDB_ERR_READONLYLKFAIL = -151027754 YDB_ERR_INVVARNAME = -151027762 YDB_ERR_PARAMINVALID = -151027770 YDB_ERR_INSUFFSUBS = -151027778 YDB_ERR_MINNRSUBSCRIPTS = -151027786 YDB_ERR_SUBSARRAYNULL = -151027794 YDB_ERR_FATALERROR1 = -151027804 YDB_ERR_NAMECOUNT2HI = -151027810 YDB_ERR_INVNAMECOUNT = -151027818 YDB_ERR_FATALERROR2 = -151027828 YDB_ERR_TIME2LONG = -151027834 YDB_ERR_VARNAME2LONG = -151027842 YDB_ERR_SIMPLEAPINEST = -151027850 YDB_ERR_CALLINTCOMMIT = -151027858 YDB_ERR_CALLINTROLLBACK = -151027866 YDB_ERR_TCPCONNTIMEOUT = -151027874 YDB_ERR_STDERRALREADYOPEN = -151027882 YDB_ERR_SETENVFAIL = -151027890 YDB_ERR_UNSETENVFAIL = -151027898 YDB_ERR_UNKNOWNSYSERR = -151027906 YDB_ERR_READLINEFILEPERM = -151027912 YDB_ERR_NODEEND = -151027922 YDB_ERR_READLINELONGLINE = -151027928 YDB_ERR_INVTPTRANS = -151027938 YDB_ERR_THREADEDAPINOTALLOWED = -151027946 YDB_ERR_SIMPLEAPINOTALLOWED = -151027954 YDB_ERR_STAPIFORKEXEC = -151027962 YDB_ERR_INVVALUE = -151027970 YDB_ERR_INVZCONVERT = -151027978 YDB_ERR_ZYSQLNULLNOTVALID = -151027986 YDB_ERR_BOOLEXPRTOODEEP = -151027994 YDB_ERR_TPCALLBACKINVRETVAL = -151028002 YDB_ERR_INVMAINLANG = -151028010 YDB_ERR_WCSFLUFAILED = -151028019 YDB_ERR_WORDEXPFAILED = -151028026 YDB_ERR_TRANSREPLJNL1GB = -151028034 YDB_ERR_DEVPARPARSE = -151028042 YDB_ERR_SETZDIRTOOLONG = -151028050 YDB_ERR_UTF8NOTINSTALLED = -151028058 YDB_ERR_ISVUNSUPPORTED = -151028066 YDB_ERR_GVNUNSUPPORTED = -151028074 YDB_ERR_ISVSUBSCRIPTED = -151028082 YDB_ERR_ZBRKCNTNEGATIVE = -151028090 YDB_ERR_SECSHRPATHMAX = -151028098 YDB_ERR_MUTRUNCALREADY = -151028107 YDB_ERR_ARGSLONGLINE = -151028112 YDB_ERR_ZGBLDIRUNDEF = -151028122 YDB_ERR_SHEBANGMEXT = -151028130 YDB_TP_RESTART = (YDB_INT_MAX - 1) /* 0x7ffffffe */ YDB_TP_ROLLBACK = (YDB_INT_MAX - 2) /* 0x7ffffffd */ YDB_OK = 0 /* Successful return code */ YDB_NOTOK = (YDB_INT_MAX - 3) /* 0x7ffffffc */ YDB_LOCK_TIMEOUT = (YDB_INT_MAX - 4) /* 0x7ffffffb */ YDB_DEFER_HANDLER = (YDB_INT_MAX - 5) /* 0x7ffffffa - defer this signal handler (used in Go wrapper) */ YDB_MAX_IDENT = 31 /* Maximum size of global/local name (not including '^') */ YDB_MAX_NAMES = 35 /* Maximum number of variable names can be specified in a single ydb_*_s() call */ YDB_MAX_STR = (1 * 1024 * 1024) /* Maximum YottaDB string length */ YDB_MAX_SUBS = 31 /* Maximum subscripts currently supported */ YDB_MAX_M_LINE_LEN = 32766 YDB_MAX_PARMS = 32 /* Maximum parameters to an M call (call-in) */ YDB_MAX_ERRORMSG = 1024 /* Maximum length of error message */ YDB_MAX_TIME_NSEC = (uint64(0x7fffffff) * uint64(1000) * uint64(1000)) /* Max specified time in (long long) nanoseconds */ YDB_DEL_TREE = 1 YDB_DEL_NODE = 2 YDB_SEVERITY_WARNING = 0 YDB_SEVERITY_SUCCESS = 1 YDB_SEVERITY_ERROR = 2 YDB_SEVERITY_INFORMATIONAL = 3 YDB_SEVERITY_FATAL = 4 YDB_DATA_UNDEF = 0 YDB_DATA_VALUE_NODESC = 1 YDB_DATA_NOVALUE_DESC = 10 YDB_DATA_VALUE_DESC = 11 YDB_DATA_ERROR = 0x7fffff00 YDB_MAIN_LANG_C = 0 YDB_MAIN_LANG_GO = 1 )
const ( YDB_ERR_STRUCTUNALLOCD = -151552010 YDB_ERR_INVLKNMPAIRLIST = -151552018 YDB_ERR_DBRNDWNBYPASS = -151552026 YDB_ERR_SIGACKTIMEOUT = -151552034 YDB_ERR_SIGGORTNTIMEOUT = -151552040 )
Global constants containing the error ids
const DefaultMaximumNormalExitWait time.Duration = 60 // wait in seconds
DefaultMaximumNormalExitWait is default/initial value for MaximumNormalExitWait
const DefaultMaximumPanicExitWait time.Duration = 3 // wait in seconds
DefaultMaximumPanicExitWait is default/initial value for MaximumPanicExitWait
const DefaultMaximumSigAckWait time.Duration = 10 // wait in seconds
DefaultMaximumSigAckWait is default/initial value for MaximumSigAckWait
const DefaultMaximumSigShutDownWait time.Duration = 5 // wait in seconds
DefaultMaximumSigShutDownWait is default/initial value for MaximumSigShutDownWait
const MinimumGoRelease string = "go1.18"
MinimumGoRelease - (string) Minimum version of Go to fully support this wrapper (including tests)
const MinimumYDBRelease string = "r1.34"
MinimumYDBRelease - (string) Minimum YottaDB release name required by this wrapper
const MinimumYDBReleaseMajor int = 1
MinimumYDBReleaseMajor - (int) Minimum major release number required by this wrapper of the linked YottaDB
const MinimumYDBReleaseMinor int = 34
MinimumYDBReleaseMinor - (int) Minimum minor release number required by this wrapper of the linked YottaDB
const NOTTP uint64 = 0
NOTTP contains the tptoken value to use when NOT in a TP transaction callback routine.
const WrapperRelease string = "v1.2.6"
WrapperRelease - (string) The Go wrapper release value for YottaDB SimpleAPI. Note the third piece of this version will be even for a production release and odd for a development release (branch develop). When released, depending on new content, either the third piece of the version will be bumped to an even value or the second piece of the version will be bumped by 1 and the third piece of the version set to 0. On rare occasions, we may bump the first piece of the version and zero the others when the changes are significant.
Variables ¶
var MaximumNormalExitWait time.Duration = DefaultMaximumNormalExitWait
MaximumNormalExitWait is maximum wait for a normal shutdown when no system lock hang in Exit() is likely
var MaximumPanicExitWait time.Duration = DefaultMaximumPanicExitWait
MaximumPanicExitWait is the maximum wait when a panic caused by a signal has occured (unlikely able to run Exit()
var MaximumSigAckWait time.Duration = DefaultMaximumSigAckWait
MaximumSigAckWait is maximum wait for notify via acknowledgement channel that a notified signal handler is done handling the signal.
var MaximumSigShutDownWait time.Duration = DefaultMaximumSigShutDownWait
MaximumSigShutDownWait is maximum wait to close down signal handling goroutines (shouldn't take this long)
Functions ¶
func CallMT ¶ added in v1.0.0
func CallMT(tptoken uint64, errstr *BufferT, retvallen uint32, rtnname string, rtnargs ...interface{}) (string, error)
CallMT allows calls to M with string arguments and an optional string return value if the called function returns one and a return value is described in the call-in definition. Else return is nil. This function differs from CallMDescT() in that the name of the routine is specified here and must always be looked up in the routine list. To avoid having two routines nearly identical, this routine is written to invoke CallMDescT().
func DataE ¶
DataE is a STAPI function to return $DATA() value for a given variable subscripted or not.
Matching DataST(), DataE() function wraps and returns the result of ydb_data_st(). In the event of an error, the return value is unspecified.
func DeleteE ¶
DeleteE is a STAPI function to delete a node or a subtree (see DeleteST) given a deletion type and a varname/subscript set.
Matching DeleteST(), DeleteE() wraps ydb_delete_st() to delete a local or global variable node or (sub)tree, with a value of YDB_DEL_NODE for deltype specifying that only the node should be deleted, leaving the (sub)tree untouched, and a value of YDB_DEL_TREE specifying that the node as well as the(sub)tree are to be deleted.
func DeleteExclE ¶
DeleteExclE is a STAPI function to do an exclusive delete by deleting all local variables except those root vars specified in the variable name array. If the varname array is empty, all local variables are deleted.
Matching DeleteExclST(), DeleteExclE() wraps ydb_delete_excl_st() to delete all local variables except those specified. In the event varnames has no elements (i.e.,[]string{}), DeleteExclE() deletes all local variables.
In the event that the number of variable names in varnames exceeds YDB_MAX_NAMES, the error return is ERRNAMECOUNT2HI. Otherwise, if ydb_delete_excl_st() returns an error, the function returns the error.
As M and Go application code cannot be mixed in the same process, the warning in ydb_delete_excl_s() does not apply.
func Exit ¶
func Exit() error
Exit is a function to drive YDB's exit handler in case of panic or other non-normal shutdown that bypasses atexit() that would normally drive the exit handler.
Note this function is guarded with a mutex and has a "exitRun" flag indicating it has been run. This is because we have seen the Exit() routine being run multiple times by multiple goroutines which causes hangs. So it is now controlled with a mutex and the already-been-here global flag "exitRun". Once this routine calls C.ydb_exit(), even if it gets stuck, the goroutine is still active so if the engine lock becomes available prior to process demise, this routine will wake up and complete the rundown
func IncrE ¶
IncrE is a STAPI function to increment the given value by the given amount and return the new value.
Matching IncrST(), IncrE() wraps ydb_incr_st() to atomically increment the referenced global or local variable node coerced to a number with incr coerced to a number, with the result stored in the node and returned by the function.
If ydb_incr_st() returns an error such as NUMOFLOW or INVSTRLEN, the function returns the error. Otherwise, it returns the incremented value of the node.
With a nil value for incr, the default increment is 1. Note that the value of the empty string coerced to an integer is zero.
func Init ¶ added in v1.2.0
func Init()
Init is a function to drive the initialization for this process. This is part wrapper initialization and part YottaDB runtime initialization. This routine is the exterior face of initialization.
func IsLittleEndian ¶
func IsLittleEndian() bool
IsLittleEndian is a function to determine endianness. Exposed in case anyone else wants to know.
func LockDecrE ¶
LockDecrE is a STAPI function to decrement the lock count of the given lock. When the count goes to 0, the lock is considered released.
Matching LockDecrST(), LockDecrE() wraps ydb_lock_decr_st() to decrement the count of the lock name referenced, releasing it if the count goes to zero or ignoring the invocation if the process does not hold the lock.
func LockE ¶
LockE is a STAPI function whose purpose is to release all locks and then lock the locks designated. The variadic list is pairs of arguments with the first being a string containing the variable name and the second being a string array containing the subscripts, if any, for that variable (null list for no subscripts).
Matching LockST(), LockE() releases all lock resources currently held and then attempt to acquire the named lock resources referenced. If no lock resources are specified, it simply releases all lock resources currently held and returns.
interface{} is a series of pairs of varname string and subary []string parameters, where a null subary parameter ([]string{}) specifies the unsubscripted lock resource name.
If lock resources are specified, upon return, the process will have acquired all of the named lock resources or none of the named lock resources.
If timeoutNsec exceeds YDB_MAX_TIME_NSEC, the function returns with an error return of TIME2LONG. If the lock resource names exceeds the maximum number supported (currently eleven), the function returns a PARMOFLOW error. If namesubs is not a series of alternating string and []string parameters, the function returns the INVLKNMPAIRLIST error. If it is able to aquire the lock resource(s) within timeoutNsec nanoseconds, the function returns holding the lock resource(s); otherwise it returns LOCKTIMEOUT. If timeoutNsec is zero, the function makes exactly one attempt to acquire the lock resource(s).
func LockIncrE ¶
func LockIncrE(tptoken uint64, errstr *BufferT, timeoutNsec uint64, varname string, subary []string) error
LockIncrE is a STAPI function to increase the lock count of a given node within the specified timeout in nanoseconds.
Matching LockIncrST(), LockIncrE() wraps ydb_lock_incr_st() to attempt to acquire the referenced lock resource name without releasing any locks the process already holds.
If the process already holds the named lock resource, the function increments its count and returns. If timeoutNsec exceeds YDB_MAX_TIME_NSEC, the function returns with an error return TIME2LONG. If it is able to aquire the lock resource within timeoutNsec nanoseconds, it returns holding the lock, otherwise it returns LOCKTIMEOUT. If timeoutNsec is zero, the function makes exactly one attempt to acquire the lock.
func LockST ¶
LockST is a STAPI function that releases all existing locks then locks the supplied variadic list of lock keys.
func MessageT ¶
MessageT is a STAPI utility function to return the error message (sans argument substitution) of a given error number.
func NewError ¶
NewError is a function to create a new YDBError and return it. Note that we use ydb_zstatus() instead of using (for example) GetE() to fetch $ZSTATUS because ydb_zstatus does not require a tptoken. This means that we don't need to pass tptoken to all the data access methods (For example, ValStr()).
func NodeNextE ¶
NodeNextE is a STAPI function to return a string array of the subscripts that describe the next node.
Matching NodeNextST(), NodeNextE() wraps ydb_node_next_st() to facilitate depth first traversal of a local or global variable tree.
If there is a next node, it returns the subscripts of that next node. If the node is the last in the tree, the function returns the NODEEND error.
func NodePrevE ¶
NodePrevE is a STAPI function to return a string array of the subscripts that describe the next node.
Matching NodePrevST(), NodePrevE() wraps ydb_node_previous_st() to facilitate reverse depth first traversal of a local or global variable tree.
If there is a previous node, it returns the subscripts of that previous node; an empty string array if that previous node is the root. If the node is the first in the tree, the function returns the NODEEND error.
func RegisterSignalNotify ¶ added in v1.2.0
func RegisterSignalNotify(sig syscall.Signal, notifyChan, ackChan chan bool, notifyWhen YDBHandlerFlag) error
RegisterSignalNotify is a function to request notification of a signal occurring on a supplied channel. Additionally, the user should respond to the same channel when they are done. To make sure this happens, the first step in the routine listening for the signal should be a defer statement that sends an acknowledgement back that handling is complete.
func ReleaseT ¶
ReleaseT is a STAPI utility function to return release information for the current underlying YottaDB version
func SetValE ¶
SetValE is a STAPI function to set a value into the given node (varname and subscripts).
Matching SetValST(), at the referenced local or global variable node, or the intrinsic special variable, SetValE() wraps ydb_set_st() to set the value specified.
func SubNextE ¶
SubNextE is a STAPI function to return the next subscript at the current subscript level.
Matching SubNextST(), SubNextE() wraps ydb_subscript_next_st() to facilitate breadth-first traversal of a local or global variable sub-tree.
At the level of the last subscript, if there is a next subscript with a node and/or a subtree, it returns that subscript. If there is no next node or subtree at that level of the subtree, the function returns the NODEEND error.
In the special case where subary is the null array, SubNextE() returns the name of the next global or local variable, and the NODEEND error if varname is the last global or local variable.
func SubPrevE ¶
SubPrevE is a STAPI function to return the previous subscript at the current subscript level.
Matching SubPrevST(), SubPrevE() wraps ydb_subscript_previous_st() to facilitate reverse breadth-first traversal of a local or global variable sub-tree.
At the level of the last subscript, if there is a previous subscript with a node and/or a subtree, it returns that subscript. If there is no previous node or subtree at that level of the subtree, the function returns the NODEEND error.
In the special case where subary is the null array SubNextE() returns the name of the previous global or local variable, and the NODEEND error if varname is the first global or local variable.
func TpE ¶
func TpE(tptoken uint64, errstr *BufferT, tpfn func(uint64, *BufferT) int32, transid string, varnames []string) error
TpE is a Easy API function to drive transactions.
Using TpST(), TpE() wraps ydb_tp_st() to implement transaction processing.
Parameters:
tptoken - the token used to identify nested transaction; start with yottadb.NOTTP. tpfn - the closure which will be run during the transaction. This closure may get invoked multiple times if a
transaction fails for some reason (concurrent changes, for example), so should not change any data outside of the database.
transid - See docs for ydb_tp_s() in the MLPG. varnames - a list of local YottaDB variables to reset should the transaction be restarted; if this is an array of 1 string
with a value of "*" all YDB local variables get reset after a TP_RESTART.
func UnRegisterSignalNotify ¶ added in v1.2.0
UnRegisterSignalNotify removes a notification request for the given signal. No error is raised if the signal did not already have a notification request in effect.
func ValE ¶
ValE is an STAPI function to return the value found for varname(subary...)
Matching ValST(), ValE() wraps ydb_get_st() to return the value at the referenced global or local variable node, or intrinsic special variable.
If ydb_get_s() returns an error such as GVUNDEF, INVSVN, LVUNDEF, the function returns the error. Otherwise, it returns the value at the node.
func YDBWrapperPanic ¶ added in v1.1.0
YDBWrapperPanic is a function called from C code. The C code routine address is passed to YottaDB via the ydb_main_lang_init() call in the below initializeYottaDB() call and is called by YottaDB when it has completed processing a deferred fatal signal and needs to exit in a "Go-ish" manner. The parameter determines the type of panic that gets raised.
Types ¶
type BufferT ¶
type BufferT struct {
// contains filtered or unexported fields
}
BufferT is a Go structure that serves as an anchor point for a C allocated ydb_buffer_t structure used to call the YottaDB C Simple APIs. Because this structure's contents contain pointers to C allocated storage, this structure is NOT safe for concurrent access.
func (*BufferT) Alloc ¶
Alloc is a method to allocate the ydb_buffer_t C storage and allocate or re-allocate the buffer pointed to by that struct.
It allocates a buffer in YottaDB heap space of size nBytes; and a C.ydb_buffer_t structure, also in YottaDB heap space, with its buf_addr referencing the buffer, its len_alloc set to nBytes and its len_used set to zero. Set cbuft in the BufferT structure to reference the C.ydb_buffer_t structure.
func (*BufferT) Dump ¶
func (buft *BufferT) Dump()
Dump is a method to dump the contents of a BufferT block for debugging purposes.
For debugging purposes, dump on stdout:
- cbuft as a hexadecimal address;
- for the C.ydb_buffer_t structure referenced by cbuft: buf_addr as a hexadecimal address, and len_alloc and len_used as integers; and
- at the address buf_addr, the lower of len_used or len_alloc bytes in zwrite format.
func (*BufferT) DumpToWriter ¶
DumpToWriter dumps a textual representation of this buffer to the writer
func (*BufferT) Free ¶
func (buft *BufferT) Free()
Free is a method to release both the buffer and ydb_buffer_t block associated with the BufferT block.
The inverse of the Alloc() method: release the buffer in YottaDB heap space referenced by the C.ydb_buffer_t structure, release the C.ydb_buffer_t, and set cbuft in the BufferT structure to nil.
func (*BufferT) LenAlloc ¶
LenAlloc is a method to fetch the ydb_buffer_t.len_alloc field containing the allocated length of the buffer.
If the C.ydb_buffer_t structure referenced by cbuft has not yet been allocated, return the STRUCTUNALLOCD error. Otherwise, return the len_alloc field of the C.ydb_buffer_t structure referenced by cbuft.
func (*BufferT) LenUsed ¶
LenUsed is a method to fetch the ydb_buffer_t.len_used field containing the used length of the buffer. Note that if len_used > len_alloc, thus indicating a previous issue, an INVSTRLEN error is raised.
If the C.ydb_buffer_t structure referenced by cbuft has not yet been allocated, return the STRUCTUNALLOCD error. Otherwise, return the len_used field of the C.ydb_buffer_t structure referenced by cbuft.
func (*BufferT) SetLenUsed ¶
SetLenUsed is a method to set the used length of buffer in the ydb_buffer_t block (must be <= alloclen).
Use this method to change the length of a used substring of the contents of the buffer referenced by the buf_addr field of the referenced C.ydb_buffer_t.
If the C.ydb_buffer_t structure referenced by cbuft has not yet been allocated, return the STRUCTUNALLOCD error. If newLen is greater than the len_alloc field of the referenced C.ydb_buffer_t, make no changes and return with an error return of INVSTRLEN. Otherwise, set the len_used field of the referenced C.ydb_buffer_t to newLen.
Note that even if newLen is not greater than the value of len_alloc, setting a len_used value greater than the number of meaningful bytes in the buffer will likely lead to hard-to-debug errors.
func (*BufferT) SetValBAry ¶
SetValBAry is a method to set a []byte array into the given buffer.
If the C.ydb_buffer_t structure referenced by cbuft has not yet been allocated, return the STRUCTUNALLOCD error. If the length of value is greater than the len_alloc field of the C.ydb_buffer_t structure referenced by cbuft, make no changes and return INVSTRLEN. Otherwise, copy the bytes of value to the location referenced by the buf_addr field of the C.ydbbuffer_t structure, set the len_used field to the length of value.
func (*BufferT) SetValStr ¶
SetValStr is a method to set a string into the given buffer.
If the C.ydb_buffer_t structure referenced by cbuft has not yet been allocated, return the STRUCTUNALLOCD error. If the length of value is greater than the len_alloc field of the C.ydb_buffer_t structure referenced by cbuft, make no changes and return INVSTRLEN. Otherwise, copy the bytes of value to the location referenced by the buf_addr field of the C.ydbbuffer_t structure, set the len_used field to the length of value.
func (*BufferT) Str2ZwrST ¶
Str2ZwrST is a STAPI method to take the given string and return it in ZWRITE format.
If the C.ydb_buffer_t structure referenced by cbuft has not yet been allocated, return the STRUCTUNALLOCD error. If len_alloc is not large enough, set len_used to the required length, and return an INVSTRLEN error. In this case, len_used will be greater than len_alloc until corrected by application code. Otherwise, set the buffer referenced by buf_addr to the zwrite format string, and set len_used to the length.
func (*BufferT) ValBAry ¶
ValBAry is a method to fetch the buffer contents as a byte array.
If the C.ydb_buffer_t structure referenced by cbuft has not yet been allocated, return the STRUCTUNALLOCD error. If the len_used field of the C.ydb_buffer_t structure is greater than its len_alloc field (owing to a prior INVSTRLEN error), return an INVSTRLEN error. Otherwise, return len_used bytes of the buffer as a byte array.
func (*BufferT) ValStr ¶
ValStr is a method to fetch the buffer contents as a string.
If the C.ydb_buffer_t structure referenced by cbuft has not yet been allocated, return the STRUCTUNALLOCD error. If the len_used field of the C.ydb_buffer_t structure is greater than its len_alloc field (owing to a prior INVSTRLEN error), return an INVSTRLEN error. Otherwise, return len_used bytes of the buffer as a string.
func (*BufferT) Zwr2StrST ¶
Zwr2StrST is a STAPI method to take the given ZWRITE format string and return it as a normal ASCII string.
If the C.ydb_buffer_t structure referenced by cbuft has not yet been allocated, return the STRUCTUNALLOCD error. If len_alloc is not large enough, set len_used to the required length, and return an INVSTRLEN error. In this case, len_used will be greater than len_alloc until corrected by application code. If str has errors and is not in valid zwrite format, set len_used to zero, and return the error code returned by ydb_zwr2str_s() e.g., INVZWRITECHAR. Otherwise, set the buffer referenced by buf_addr to the unencoded string, set len_used to the length.
Note that the length of a string in zwrite format is always greater than or equal to the string in its original, unencoded format.
type BufferTArray ¶
type BufferTArray struct {
// contains filtered or unexported fields
}
BufferTArray is an array of ydb_buffer_t structures. The reason this is not an array of BufferT structures is because we can't pass a pointer to those Go structures to a C routine (cgo restriction) so we have to have this separate array of the C structures instead. Also, cgo doesn't support indexing of C structures so we have to do that ourselves as well. Because this structure's contents contain pointers to C allocated storage, this structure is NOT safe for concurrent access unless those accesses are to different array elements and do not affect the overall structure.
func (*BufferTArray) Alloc ¶
func (buftary *BufferTArray) Alloc(numBufs, nBytes uint32)
Alloc is a method to allocate an array of 'numBufs' ydb_buffer_t structures anchored in this BufferTArray and also for each of those buffers, allocate 'nBytes' byte buffers anchoring them in the ydb_buffer_t structure.
func (*BufferTArray) DeleteExclST ¶
func (buftary *BufferTArray) DeleteExclST(tptoken uint64, errstr *BufferT) error
DeleteExclST is a method to delete all local variables EXCEPT the variables listed in the method BufferTArray. If the input array is empty, then ALL local variables are deleted. DeleteExclST() wraps ydb_delete_excl_st() to delete all local variable trees except those of local variables whose names are specified in the BufferTArray structure. In the special case where elemUsed is zero, the method deletes all local variable trees.
In the event that the elemUsed exceeds YDB_MAX_NAMES, the error return is ERRNAMECOUNT2HI.
As M and Go application code cannot be mixed in the same process, the warning in ydb_delete_excl_s() does not apply.
func (*BufferTArray) Dump ¶
func (buftary *BufferTArray) Dump()
Dump is a STAPI method to dump (print) the contents of this BufferTArray block for debugging purposes. It dumps to stdout
- cbuftary as a hexadecimal address,
- elemAlloc and elemUsed as integers,
- and for each element of the smaller of elemAlloc and elemUsed elements of the ydb_buffer_t array referenced by cbuftary, buf_addr as a hexadecimal address, len_alloc and len_used as integers and the smaller of len_used and len_alloc bytes at the address buf_addr in zwrite format.
func (*BufferTArray) DumpToWriter ¶
func (buftary *BufferTArray) DumpToWriter(writer io.Writer)
DumpToWriter is a writer that allows the tests or user code to dump to other than stdout.
func (*BufferTArray) ElemAlloc ¶
func (buftary *BufferTArray) ElemAlloc() uint32
ElemAlloc is a method to return elemAlloc from a BufferTArray.
func (*BufferTArray) ElemLenAlloc ¶
func (buftary *BufferTArray) ElemLenAlloc() uint32
ElemLenAlloc is a method to retrieve the buffer allocation length associated with our BufferTArray. Since all buffers are the same size in this array, just return the value from the first array entry. If nothing is allocated yet, return 0.
func (*BufferTArray) ElemLenUsed ¶
func (buftary *BufferTArray) ElemLenUsed(tptoken uint64, errstr *BufferT, idx uint32) (uint32, error)
ElemLenUsed is a method to retrieve the buffer used length associated with a given buffer referenced by its index.
func (*BufferTArray) ElemUsed ¶
func (buftary *BufferTArray) ElemUsed() uint32
ElemUsed is a method to return elemUsed from a BufferTArray.
func (*BufferTArray) Free ¶
func (buftary *BufferTArray) Free()
Free is a method to release all allocated C storage in a BufferTArray. It is the inverse of the Alloc() method: release the numSubs buffers and the ydb_buffer_t array. Set cbuftary to nil, and elemAlloc and elemUsed to zero.
func (*BufferTArray) SetElemLenUsed ¶
func (buftary *BufferTArray) SetElemLenUsed(tptoken uint64, errstr *BufferT, idx, newLen uint32) error
SetElemLenUsed is a method to set the len_used field of a given ydb_buffer_t struct in the BufferTArray.
func (*BufferTArray) SetElemUsed ¶
func (buftary *BufferTArray) SetElemUsed(tptoken uint64, errstr *BufferT, newUsed uint32) error
SetElemUsed is a method to set the number of used buffers in the BufferTArray.
func (*BufferTArray) SetValBAry ¶
func (buftary *BufferTArray) SetValBAry(tptoken uint64, errstr *BufferT, idx uint32, value []byte) error
SetValBAry is a method to set a byte array (value) into the buffer at the given index (idx).
func (*BufferTArray) SetValStr ¶
func (buftary *BufferTArray) SetValStr(tptoken uint64, errstr *BufferT, idx uint32, value string) error
SetValStr is a method to set a string (value) into the buffer at the given index (idx).
func (*BufferTArray) TpST ¶
func (buftary *BufferTArray) TpST(tptoken uint64, errstr *BufferT, tpfn func(uint64, *BufferT) int32, transid string) error
TpST wraps ydb_tp_st() to implement transaction processing.
Any function implementing logic for a transaction should return an error code with one of the following:
- A normal return (nil) to indicate that per application logic, the transaction can be committed. The YottaDB database engine will commit the transaction if it is able to, and if not, will call the function again.
- TPRESTART to indicate that the transaction should restart, either because application logic has so determined or because a YottaDB function called by the function has returned TPRESTART.
- ROLLBACK to indicate that TpST() should not commit the transaction, and should return ROLLBACK to the caller.
The BufferTArray receiving the TpST() method is a list of local variables whose values should be saved, and restored to their original values when the transaction restarts. If the cbuftary structures have not been allocated or elemUsed is zero, no local variables are saved and restored; and if elemUsed is 1, and that sole element references the string "*" all local variables are saved and restored.
A case-insensitive value of "BA" or "BATCH" for transid indicates to YottaDB that it need not ensure Durability for this transaction (it continues to ensure Atomicity, Consistency, and Isolation)
Parameters:
tptoken - the token used to identify nested transaction; start with yottadb.NOTTP errstr - Buffer to hold error string that is used to report errors and avoid race conditions with setting $ZSTATUS. tpfn - the closure function which will be run during the transaction. This closure function may get invoked multiple times
if a transaction fails for some reason (concurrent changes, for example), so should not change any data outside of the database.
transid - See docs for ydb_tp_s() in the MLPG.
type CallMDesc ¶ added in v1.0.0
type CallMDesc struct {
// contains filtered or unexported fields
}
CallMDesc is a struct that (ultimately) serves as an anchor point for the C call-in routine descriptor used by CallMDescT() that provides for less call-overhead than CallMT() as the descriptor contains fastpath information filled in by YottaDB after the first call so subsequent calls have minimal overhead. Because this structure's contents contain pointers to C allocated storage, this structure is NOT safe for concurrent access.
func (*CallMDesc) CallMDescT ¶ added in v1.0.0
func (mdesc *CallMDesc) CallMDescT(tptoken uint64, errstr *BufferT, retvallen uint32, rtnargs ...interface{}) (string, error)
CallMDescT allows calls to M with string arguments and an optional string return value if the called function returns one and a return value is described in the call-in definition. Else return is nil.
func (*CallMDesc) Free ¶ added in v1.0.0
func (mdesc *CallMDesc) Free()
Free is a method to release both the routine name buffer and the descriptor block associated with the CallMDesc block.
func (*CallMDesc) SetRtnName ¶ added in v1.0.0
SetRtnName is a method for CallMDesc that sets the routine name into the descriptor.
type CallMTable ¶ added in v1.0.0
type CallMTable struct {
// contains filtered or unexported fields
}
CallMTable is a struct that defines a call table (see https://docs.yottadb.com/ProgrammersGuide/extrout.html#calls-from-external-routines-call-ins). The methods associated with this struct allow call tables to be opened and to switch between them to give access to routines in multiple call tables.
func CallMTableOpenT ¶ added in v1.0.0
func CallMTableOpenT(tptoken uint64, errstr *BufferT, tablename string) (*CallMTable, error)
CallMTableOpenT function opens a new call table or one for which the process had no handle and returns a CallMTable for it.
func (*CallMTable) CallMTableSwitchT ¶ added in v1.0.0
func (newcmtable *CallMTable) CallMTableSwitchT(tptoken uint64, errstr *BufferT) (*CallMTable, error)
CallMTableSwitchT method switches whatever the current call table is (only one active at a time) with the supplied call table and returns the call table that was in effect (or nil if none).
type KeyT ¶
type KeyT struct { Varnm *BufferT Subary *BufferTArray }
KeyT defines a database key including varname and optional subscripts. Because this structure's contents contain pointers to C allocated storage, this structure is NOT safe for concurrent access.
func (*KeyT) Alloc ¶
Alloc is a STAPI method to allocate both pieces of the KeyT according to the supplied parameters.
Invoke Varnm.Alloc(varSiz) and SubAry.Alloc(numSubs, subSiz)
Parameters:
varSiz - Length of buffer for varname (current var max is 31). numSubs - Number of subscripts to supply (current subscript max is 31). subSiz - Length of the buffers for subscript values.
func (*KeyT) DataST ¶
DataST is a STAPI method to determine the status of a given node and its successors.
Matching DataE(), DataST() returns the result of ydb_data_st(). In the event an error is returned, the return value is unspecified.
func (*KeyT) DeleteST ¶
DeleteST is a STAPI method to delete a node and perhaps its successors depending on the value of deltype.
Matching DeleteE(), DeleteST() wraps ydb_delete_st() to delete a local or global variable node or (sub)tree, with a value of YDB_DEL_NODE for deltype specifying that only the node should be deleted, leaving the (sub)tree untouched, and a value of YDB_DEL_TREE specifying that the node as well as the (sub)tree are to be deleted.
func (*KeyT) Dump ¶
func (key *KeyT) Dump()
Dump is a STAPI method to dump the contents of the KeyT structure.
Invoke Varnm.Dump() and SubAry.Dump().
func (*KeyT) DumpToWriter ¶
DumpToWriter dumps a textual representation of this key to the writer.
func (*KeyT) Free ¶
func (key *KeyT) Free()
Free is a STAPI method to free both pieces of the KeyT structure.
Invoke Varnm.Free() and SubAry.Free().
func (*KeyT) IncrST ¶
IncrST is a STAPI method to increment a given node and return the new value.
Matching IncrE(), IncrST() wraps ydb_incr_st() to atomically increment the referenced global or local variable node coerced to a number, with incr coerced to a number. It stores the result in the node and also returns it through the BufferT structure referenced by retval.
If ydb_incr_st() returns an error such as NUMOFLOW, INVSTRLEN, the method makes no changes to the structures under retval and returns the error. If the length of the data to be returned exceeds retval.lenAlloc, the method sets the len_used of the C.ydb_buffer_t referenced by retval to the required length, and returns an INVSTRLEN error. Otherwise, it copies the data to the buffer referenced by the retval.buf_addr, sets retval.lenUsed to its length.
With a nil value for incr, the default increment is 1. Note that the value of the empty string coerced to an integer is zero.
func (*KeyT) LockDecrST ¶
LockDecrST is a STAPI method to decrement the lock-count of a given lock node.
Matching LockDecrE(), LockDecrST() wraps ydb_lock_decr_st() to decrement the count of the lock name referenced, releasing it if the count goes to zero or ignoring the invocation if the process does not hold the lock.
func (*KeyT) LockIncrST ¶
LockIncrST is a STAPI method to increment the lock-count of a given node lock with the given timeout in nano-seconds.
Matching LockIncrE(), LockIncrST() wraps ydb_lock_incr_st() to attempt to acquire the referenced lock resource name without releasing any locks the process already holds.
If the process already holds the named lock resource, the method increments its count and returns. If timeoutNsec exceeds YDB_MAX_TIME_NSEC, the method returns with an error return TIME2LONG. If it is able to aquire the lock resource within timeoutNsec nanoseconds, it returns holding the lock, otherwise it returns LOCK_TIMEOUT. If timeoutNsec is zero, the method makes exactly one attempt to acquire the lock.
func (*KeyT) NodeNextST ¶
func (key *KeyT) NodeNextST(tptoken uint64, errstr *BufferT, next *BufferTArray) error
NodeNextST is a STAPI method to return the next subscripted node for the given global - the node logically following the specified node (returns *BufferTArray).
Matching NodeNextE(), NodeNextST() wraps ydb_node_next_st() to facilitate depth first traversal of a local or global variable tree.
If there is a next node:
If the number of subscripts of that next node exceeds next.elemAlloc, the method sets next.elemUsed to the number of subscripts required, and returns an INSUFFSUBS error. In this case the elemUsed is greater than elemAlloc. If one of the C.ydb_buffer_t structures referenced by next (call the first or only element n) has insufficient space for the corresponding subscript, the method sets next.elemUsed to n, and the len_alloc of that C.ydb_buffer_t structure to the actual space required. The method returns an INVSTRLEN error. In this case the len_used of that structure is greater than its len_alloc. Otherwise, it sets the structure next to reference the subscripts of that next node, and next.elemUsed to the number of subscripts.
If the node is the last in the tree, the method returns the NODEEND error, making no changes to the structures below next.
func (*KeyT) NodePrevST ¶
func (key *KeyT) NodePrevST(tptoken uint64, errstr *BufferT, prev *BufferTArray) error
NodePrevST is a STAPI method to return the previous subscripted node for the given global - the node logically previous to the specified node (returns *BufferTArray).
Matching NodePrevE(), NodePrevST() wraps ydb_node_previous_st() to facilitate reverse depth first traversal of a local or global variable tree.
If there is a previous node:
If the number of subscripts of that previous node exceeds prev.elemAlloc, the method sets prev.elemUsed to the number of subscripts required, and returns an INSUFFSUBS error. In this case the elemUsed is greater than elemAlloc. If one of the C.ydb_buffer_t structures referenced by prev (call the first or only element n) has insufficient space for the corresponding subscript, the method sets prev.elemUsed to n, and the len_alloc of that C.ydb_buffer_t structure to the actual space required. The method returns an INVSTRLEN error. In this case the len_used of that structure is greater than its len_alloc. Otherwise, it sets the structure prev to reference the subscripts of that prev node, and prev.elemUsed to the number of subscripts.
If the node is the first in the tree, the method returns the NODEEND error making no changes to the structures below prev.
func (*KeyT) SetValST ¶
SetValST is a STAPI method to set the given value into the given node (glvn or SVN).
Matching SetE(), at the referenced local or global variable node, or the intrinsic special variable, SetValST() wraps ydb_set_st() to set the value specified by val.
func (*KeyT) SubNextST ¶
SubNextST is a STAPI method to return the next subscript following the specified node.
Matching SubNextE(), SubNextST() wraps ydb_subscript_next_st() to facilitate breadth-first traversal of a local or global variable sub-tree.
At the level of the last subscript, if there is a next subscript with a node and/or a subtree:
If the length of that next subscript exceeds sub.len_alloc, the method sets sub.len_used to the actual length of that subscript, and returns an INVSTRLEN error. In this case sub.len_used is greater than sub.len_alloc. Otherwise, it copies that subscript to the buffer referenced by sub.buf_addr, and sets sub.len_used to its length.
If there is no next node or subtree at that level of the subtree, the method returns the NODEEND error.
func (*KeyT) SubPrevST ¶
SubPrevST is a STAPI method to return the previous subscript following the specified node.
SubPrevST() wraps ydb_subscript_previous_st() to facilitate reverse breadth-first traversal of a local or global variable sub-tree.
At the level of the last subscript, if there is a previous subscript with a node and/or a subtree:
If the length of that previous subscript exceeds sub.len_alloc, the method sets sub.len_used to the actual length of that subscript, and returns an INVSTRLEN error. In this case sub.len_used is greater than sub.len_alloc. Otherwise, it copies that subscript to the buffer referenced by sub.buf_addr, and sets buf.len_used to its length.
If there is no previous node or subtree at that level of the subtree, the method returns the NODEEND error.
func (*KeyT) ValST ¶
ValST is a STAPI method to fetch the given node returning its value in retval.
Matching ValE(), ValST() wraps ydb_get_st() to return the value at the referenced global or local variable node, or intrinsic special variable, in the buffer referenced by the BufferT structure referenced by retval.
If ydb_get_st() returns an error such as GVUNDEF, INVSVN, LVUNDEF, the method makes no changes to the structures under retval and returns the error. If the length of the data to be returned exceeds retval.getLenAlloc(), the method sets the len_used` of the C.ydb_buffer_t referenced by retval to the required length, and returns an INVSTRLEN error. Otherwise, it copies the data to the buffer referenced by the retval.buf_addr, and sets retval.lenUsed to its length.
type YDBError ¶
type YDBError struct {
// contains filtered or unexported fields
}
YDBError is a structure that defines the error message format which includes both the formated $ZSTATUS type message and the numeric error value.
type YDBHandlerFlag ¶ added in v1.2.0
type YDBHandlerFlag int
YDBHandlerFlag type is the flag type passed to yottadb.RegisterSignalNotify() to indicate when or if the driver should run the YottaDB signal handler.
const ( // NotifyBeforeYDBSigHandler - Request sending notification BEFORE running YDB signal handler NotifyBeforeYDBSigHandler YDBHandlerFlag = iota + 1 // NotifyAfterYDBSigHandler - Request sending notification AFTER running YDB signal handler NotifyAfterYDBSigHandler // NotifyAsyncYDBSigHandler - Notify user and run YDB handler simultaneously (non-fatal signals only) NotifyAsyncYDBSigHandler // NotifyInsteadOfYDBSigHandler - Do the signal notification but do NOT drive the YDB handler NotifyInsteadOfYDBSigHandler )
Use iota to get enum like auto values starting at 1