github.com/voedger/voedger@v0.0.0-20240520144910-273e84102129/pkg/sys/sqlquery/consts.go (about)

     1  /*
     2   * Copyright (c) 2022-present unTill Pro, Ltd.
     3   */
     4  
     5  package sqlquery
     6  
     7  import (
     8  	"regexp"
     9  
    10  	"github.com/voedger/voedger/pkg/appdef"
    11  	"github.com/voedger/voedger/pkg/istructs"
    12  )
    13  
    14  const (
    15  	base          = 10
    16  	bitSize64     = 64
    17  	DefaultLimit  = 100
    18  	DefaultOffset = istructs.FirstOffset
    19  	field_Query   = "Query"
    20  )
    21  
    22  var (
    23  	plog    = appdef.NewQName(appdef.SysPackage, "plog")
    24  	plogDef = map[string]bool{
    25  		"PlogOffset":     true,
    26  		"QName":          true,
    27  		"ArgumentObject": true,
    28  		"CUDs":           true,
    29  		"RegisteredAt":   true,
    30  		"Synced":         true,
    31  		"DeviceID":       true,
    32  		"SyncedAt":       true,
    33  		"Error":          true,
    34  		"Workspace":      true,
    35  		"WLogOffset":     true,
    36  	}
    37  	wlog    = appdef.NewQName(appdef.SysPackage, "wlog")
    38  	wlogDef = map[string]bool{
    39  		"WlogOffset":     true,
    40  		"QName":          true,
    41  		"ArgumentObject": true,
    42  		"CUDs":           true,
    43  		"RegisteredAt":   true,
    44  		"Synced":         true,
    45  		"DeviceID":       true,
    46  		"SyncedAt":       true,
    47  		"Error":          true,
    48  	}
    49  )
    50  
    51  const selectQueryExpression = `^` +
    52  	`(?P<select>.*\s+from\s+)` + // select * from (+ trailing spaces)
    53  	`(?P<app>\w+\.\w+\.)?` + // appOwner.appName (+ trailing dot)
    54  	`(?P<ws>\d+\.)?` + // wsid (+ trailing dot)
    55  	`(?P<table>\w+\.\w+)` + // table qualified name (clean)
    56  	`(?P<pars>\s+.*)?` + // (leading spaces +) params
    57  	`$`
    58  
    59  var selectQueryExp = regexp.MustCompile(selectQueryExpression)