#
#   Create stream with statics
#
testqql
CREATE DURABLE STREAM "custom" 'custom name' (
    CLASS "class1" (
        STATIC "static_float_null" 'static_float' FLOAT = NULL 
            COMMENT 'Test static field comment',
        STATIC "static_float_not_null" FLOAT = 2.0,
        STATIC "static_float_c_32" 'Non-nullable FLOAT:IEEE32' FLOAT NOT NULL BINARY (32) = 3.0,
        STATIC "static_float_n_32" 'Nullable FLOAT:IEEE32' FLOAT BINARY (32) = 3.1,
        STATIC "static_float_c_64" 'Non-nullable FLOAT:IEEE64' FLOAT NOT NULL = 4.0,
        STATIC "static_float_n_64" 'Nullable FLOAT:IEEE64' FLOAT = 4.1,
        STATIC "static_float_c_dec" 'Non-nullable FLOAT:DECIMAL' FLOAT NOT NULL DECIMAL = 5.0,
        STATIC "static_float_n_dec" 'Nullable FLOAT:IEEE32' FLOAT DECIMAL = 5.1,
        STATIC "static_float_c_dec2" 'Non-nullable FLOAT:DECIMAL(2)' FLOAT NOT NULL DECIMAL (2) = 6.0,
        STATIC "static_float_n_dec2" 'Nullable FLOAT:DECIMAL(2)' FLOAT DECIMAL (2) = 6.1,
        "nonstatic_float_ieee64" FLOAT,
        "nonstatic_float_ieee32" FLOAT NOT NULL BINARY (32),
        "nonstatic_float_decimal" FLOAT DECIMAL,
        "nonstatic_float_decimal_10" FLOAT DECIMAL (10)
    ) AUXILIARY;
    CLASS "class2" UNDER "class1" (
        STATIC "static_boolean_true" BOOLEAN = true,
        STATIC "static_boolean_false" BOOLEAN NOT NULL = false TAGS ("adjustmentType":"Size","displayIdentifier":"true"),
        STATIC "static_boolean_null" BOOLEAN = false,
        STATIC "static_char_null" 'static_char' CHAR = NULL TAGS ("displayIdentifier":"true"),
        STATIC "static_char_notnull" CHAR NOT NULL = 's'C,
        STATIC "static_timestamp_null" 'static' TIMESTAMP = NULL,
        STATIC "static_timestamp_notnull" TIMESTAMP = '2012-01-01 04:03:01.1'D,
        STATIC "static_integer_null" 'static' INTEGER = NULL,
        STATIC "static_integer_notnull" INTEGER = -5,
        STATIC "static_int_c_8" 'Non-nullable INTEGER:INT8' INTEGER NOT NULL SIGNED (8) = -55,
        STATIC "static_int_n_8" 'Nullable INTEGER:INT8' INTEGER SIGNED (8) = 33,
        STATIC "static_int_c_16" 'Non-nullable INTEGER:INT16' INTEGER NOT NULL SIGNED (16) = 444,
        STATIC "static_int_n_16" 'Nullable INTEGER:INT16' INTEGER SIGNED (16) = 555,
        STATIC "static_int_c_32" 'Non-nullable INTEGER:INT32' INTEGER NOT NULL SIGNED (32) = 66666,
        STATIC "static_int_n_32" 'Nullable INTEGER:INT32' INTEGER SIGNED (32) = 777777,
        STATIC "static_int_c_64" 'Non-nullable INTEGER:INT64' INTEGER NOT NULL = 888888,
        STATIC "static_int_n_64" 'Nullable INTEGER:INT64' INTEGER = 999999,
        STATIC "static_puint_c_30" 'Non-nullable INTEGER:PUINT30' INTEGER NOT NULL UNSIGNED (30) = 111,
        STATIC "static_puint_n_30" 'Nullable INTEGER:PUINT30' INTEGER UNSIGNED (30) = 222,
        STATIC "static_puint_c_61" 'Non-nullable INTEGER:PUINT61' INTEGER NOT NULL UNSIGNED (61) = 333,
        STATIC "static_puint_n_61" 'Nullable INTEGER:PUINT61' INTEGER UNSIGNED (61) = 444,
        STATIC "static_varchar_null" VARCHAR = NULL,
        STATIC "static_varchar_notnull" VARCHAR = 'static varchar ~!@#$%^&*()_+-=',
        STATIC "static_varchar_notnull" VARCHAR ALPHANUMERIC (10) = 'ASDF',
        STATIC "static_timeofday_null" TIMEOFDAY = NULL,
        STATIC "static_timeofday_notnull" TIMEOFDAY = '08:00:00'T,
        STATIC "static_binary_null" BINARY = NULL,
        STATIC "static_binary_notnull" BINARY = ''X
    ) NOT INSTANTIABLE;
    CLASS "class3" UNDER "class2" (
        "nonstatic_boolean_nullable" 'nonstatic' BOOLEAN,
        "nonstatic_boolean_notnullable" BOOLEAN NOT NULL,
        "nonstatic_char_nullable" CHAR,
        "nonstatic_char_notnullable" CHAR NOT NULL,
        "nonstatic_timestamp_nullable" TIMESTAMP,
        "nonstatic_timestamp_notnullable" TIMESTAMP NOT NULL,
        "nonstatic_integer_64_nullable" INTEGER,
        "nonstatic_integer_8_nullable" INTEGER NOT NULL SIGNED (8),
        "nonstatic_integer_16_nullable" INTEGER SIGNED (16),
        "nonstatic_integer_32_nullable" INTEGER SIGNED (32),
        "nonstatic_integer_48_nullable" INTEGER SIGNED (48),
        "nonstatic_integer_punit30_nullable" INTEGER UNSIGNED (30),
        "nonstatic_integer_punit61_nullable" INTEGER UNSIGNED (61),
        "nonstatic_integer_pinterval_nullable" 'nonstatic_integer_pinterval' INTEGER INTERVAL BETWEEN 2 AND 100,
        "nonstatic_varchar_utf8_nullable_multiline" VARCHAR MULTILINE,
        "nonstatic_varchar_alphanimeric_nullable_multiline" VARCHAR ALPHANUMERIC (10),
        "nonstatic_timeofday_nullable" TIMEOFDAY,
        "nonstatic_binary_nullable" BINARY,
        "nonstatic_integer_64_notnullable" INTEGER NOT NULL,
        "nonstatic_integer_8_notnullable" INTEGER NOT NULL,
        "nonstatic_integer_16_notnullable" INTEGER SIGNED (16),
        "nonstatic_integer_32_notnullable" INTEGER SIGNED (32),
        "nonstatic_integer_48_notnullable" INTEGER SIGNED (48),
        "nonstatic_integer_punit30_notnullable" INTEGER UNSIGNED (30),
        "nonstatic_integer_punit61_notnullable" INTEGER UNSIGNED (61),        
        "nonstatic_varchar_utf8_notnullable_notmultiline" VARCHAR NOT NULL,
        "nonstatic_varchar_alphanimeric_notnullable_notmultiline" VARCHAR NOT NULL ALPHANUMERIC (10),
        "nonstatic_timeofday_notnullable" TIMEOFDAY NOT NULL,
        "nonstatic_binary_notnullable" BINARY NOT NULL
    );
)
COMMENT 'custom description'
/
>com.epam.deltix.timebase.messages.service.ErrorMessage,TIMESTAMP,SYMBOL,TYPE,details,errorType,level,messageText,seqNum
!shellmatch
0,*,,_,SUCCESS,INFO,Stream created,0
!end
#
#   Describe
#
testdesc custom
DURABLE STREAM "custom" 'custom name' (
    CLASS "class1" (
        STATIC "static_float_null" 'static_float' FLOAT = NULL COMMENT 'Test static field comment',
        STATIC "static_float_not_null" FLOAT = 2.0,
        STATIC "static_float_c_32" 'Non-nullable FLOAT:IEEE32' FLOAT NOT NULL BINARY (32) = 3.0,
        STATIC "static_float_n_32" 'Nullable FLOAT:IEEE32' FLOAT BINARY (32) = 3.1,
        STATIC "static_float_c_64" 'Non-nullable FLOAT:IEEE64' FLOAT NOT NULL = 4.0,
        STATIC "static_float_n_64" 'Nullable FLOAT:IEEE64' FLOAT = 4.1,
        STATIC "static_float_c_dec" 'Non-nullable FLOAT:DECIMAL' FLOAT NOT NULL DECIMAL = 5.0,
        STATIC "static_float_n_dec" 'Nullable FLOAT:IEEE32' FLOAT DECIMAL = 5.1,
        STATIC "static_float_c_dec2" 'Non-nullable FLOAT:DECIMAL(2)' FLOAT NOT NULL DECIMAL (2) = 6.0,
        STATIC "static_float_n_dec2" 'Nullable FLOAT:DECIMAL(2)' FLOAT DECIMAL (2) = 6.1,
        "nonstatic_float_ieee64" FLOAT,
        "nonstatic_float_ieee32" FLOAT NOT NULL BINARY (32),
        "nonstatic_float_decimal" FLOAT DECIMAL,
        "nonstatic_float_decimal_10" FLOAT DECIMAL (10)
    )
        AUXILIARY;
    CLASS "class2" UNDER "class1" (
        STATIC "static_boolean_true" BOOLEAN = true,
        STATIC "static_boolean_false" BOOLEAN NOT NULL = false,
        STATIC "static_boolean_null" BOOLEAN = false,
        STATIC "static_char_null" 'static_char' CHAR = NULL,
        STATIC "static_char_notnull" CHAR NOT NULL = 's'C,
        STATIC "static_timestamp_null" 'static' TIMESTAMP = NULL,
        STATIC "static_timestamp_notnull" TIMESTAMP = '2012-01-01 04:03:01.100'D,
        STATIC "static_integer_null" 'static' INTEGER = NULL,
        STATIC "static_integer_notnull" INTEGER = -5,
        STATIC "static_int_c_8" 'Non-nullable INTEGER:INT8' INTEGER NOT NULL SIGNED (8) = -55,
        STATIC "static_int_n_8" 'Nullable INTEGER:INT8' INTEGER SIGNED (8) = 33,
        STATIC "static_int_c_16" 'Non-nullable INTEGER:INT16' INTEGER NOT NULL SIGNED (16) = 444,
        STATIC "static_int_n_16" 'Nullable INTEGER:INT16' INTEGER SIGNED (16) = 555,
        STATIC "static_int_c_32" 'Non-nullable INTEGER:INT32' INTEGER NOT NULL SIGNED (32) = 66666,
        STATIC "static_int_n_32" 'Nullable INTEGER:INT32' INTEGER SIGNED (32) = 777777,
        STATIC "static_int_c_64" 'Non-nullable INTEGER:INT64' INTEGER NOT NULL = 888888,
        STATIC "static_int_n_64" 'Nullable INTEGER:INT64' INTEGER = 999999,
        STATIC "static_puint_c_30" 'Non-nullable INTEGER:PUINT30' INTEGER NOT NULL UNSIGNED (30) = 111,
        STATIC "static_puint_n_30" 'Nullable INTEGER:PUINT30' INTEGER UNSIGNED (30) = 222,
        STATIC "static_puint_c_61" 'Non-nullable INTEGER:PUINT61' INTEGER NOT NULL UNSIGNED (61) = 333,
        STATIC "static_puint_n_61" 'Nullable INTEGER:PUINT61' INTEGER UNSIGNED (61) = 444,
        STATIC "static_varchar_null" VARCHAR = NULL,
        STATIC "static_varchar_notnull" VARCHAR = 'static varchar ~!@#$%^&*()_+-=',
        STATIC "static_varchar_notnull" VARCHAR ALPHANUMERIC (10) = 'ASDF',
        STATIC "static_timeofday_null" TIMEOFDAY = NULL,
        STATIC "static_timeofday_notnull" TIMEOFDAY = '08:00'T,
        STATIC "static_binary_null" BINARY = NULL,
        STATIC "static_binary_notnull" BINARY = ''X
    ) 
        AUXILIARY
        NOT INSTANTIABLE;
    CLASS "class3" UNDER "class2" (
        "nonstatic_boolean_nullable" 'nonstatic' BOOLEAN,
        "nonstatic_boolean_notnullable" BOOLEAN NOT NULL,
        "nonstatic_char_nullable" CHAR,
        "nonstatic_char_notnullable" CHAR NOT NULL,
        "nonstatic_timestamp_nullable" TIMESTAMP,
        "nonstatic_timestamp_notnullable" TIMESTAMP NOT NULL,
        "nonstatic_integer_64_nullable" INTEGER,
        "nonstatic_integer_8_nullable" INTEGER NOT NULL SIGNED (8),
        "nonstatic_integer_16_nullable" INTEGER SIGNED (16),
        "nonstatic_integer_32_nullable" INTEGER SIGNED (32),
        "nonstatic_integer_48_nullable" INTEGER SIGNED (48),
        "nonstatic_integer_punit30_nullable" INTEGER UNSIGNED (30),
        "nonstatic_integer_punit61_nullable" INTEGER UNSIGNED (61),
        "nonstatic_integer_pinterval_nullable" 'nonstatic_integer_pinterval' INTEGER INTERVAL BETWEEN 2 AND 100,
        "nonstatic_varchar_utf8_nullable_multiline" VARCHAR MULTILINE,
        "nonstatic_varchar_alphanimeric_nullable_multiline" VARCHAR ALPHANUMERIC (10),
        "nonstatic_timeofday_nullable" TIMEOFDAY,
        "nonstatic_binary_nullable" BINARY,
        "nonstatic_integer_64_notnullable" INTEGER NOT NULL,
        "nonstatic_integer_8_notnullable" INTEGER NOT NULL,
        "nonstatic_integer_16_notnullable" INTEGER SIGNED (16),
        "nonstatic_integer_32_notnullable" INTEGER SIGNED (32),
        "nonstatic_integer_48_notnullable" INTEGER SIGNED (48),
        "nonstatic_integer_punit30_notnullable" INTEGER UNSIGNED (30),
        "nonstatic_integer_punit61_notnullable" INTEGER UNSIGNED (61),
        "nonstatic_varchar_utf8_notnullable_notmultiline" VARCHAR NOT NULL,
        "nonstatic_varchar_alphanimeric_notnullable_notmultiline" VARCHAR NOT NULL ALPHANUMERIC (10),
        "nonstatic_timeofday_notnullable" TIMEOFDAY NOT NULL,
        "nonstatic_binary_notnullable" BINARY NOT NULL
    );
)
OPTIONS (POLYMORPHIC; PERIODICITY = 'IRREGULAR'; HIGHAVAILABILITY = FALSE; UNIQUE = FALSE; STORAGEVERSION = '5')
COMMENT 'custom description'
!end
#
#   Drop stream via qql
#
test drop stream custom
>com.epam.deltix.timebase.messages.service.ErrorMessage,TIMESTAMP,SYMBOL,TYPE,details,errorType,level,messageText,seqNum
!shellmatch
0,*,,_,SUCCESS,INFO,Stream dropped,0
!end
