Comment : Charset=windows-1252
Request : assert attribute,attribute(tuple(attributename(int1)typename(int))tuple(attributename(int2)typename(int))tuple(attributename(int3)typename(int)))
Reply   : 

Request : cmd(assert relvar,relvar(tuple(relvarname(dbcrojoin1a)relvarpredicate(integers int1, int2.))tuple(relvarname(dbcrojoin1b)relvarpredicate(integers int2, int3.))))cmd(assert relvarattribute,relvarattribute(tuple(relvarname(dbcrojoin1a)attributename(int1))tuple(relvarname(dbcrojoin1a)attributename(int2))tuple(relvarname(dbcrojoin1b)attributename(int3))tuple(relvarname(dbcrojoin1b)attributename(int2))))
Reply   : 

Request : cmd(assert dbmsfile,dbmsfile(tuple(filename(dbcrojoin.spdb)pagesize(8192))))cmd(assert storagespace,storagespace(tuple(filename(dbcrojoin.spdb)extentscount(2)pagecount(20)storagespaceid(1))tuple(filename(dbcrojoin.spdb)extentscount(2)pagecount(20)storagespaceid(2))))cmd(assert dataspace,dataspace(tuple(filename(dbcrojoin.spdb)storagespaceid(1)gapcompressionthreshold(5)maximumgaps(9))))cmd(assert multihashingindexspace,multihashingindexspace(tuple(filename(dbcrojoin.spdb)storagespaceid(2)gapcompressionthreshold(5)maximumgaps(9))))
Reply   : 

Request : cmd(assert recordtype,recordtype(tuple(filename(dbcrojoin.spdb)storagespaceid(1)recordtypename(rec)indexname(loc)relvarname(dbcrojoin1a))tuple(filename(dbcrojoin.spdb)storagespaceid(1)recordtypename(rec)indexname(loc)relvarname(dbcrojoin1b))))cmd(assert index,index(tuple(filename(dbcrojoin.spdb)storagespaceid(2)recordtypename(rec)relvarname(dbcrojoin1a)indexname(loc))tuple(filename(dbcrojoin.spdb)storagespaceid(2)recordtypename(rec)relvarname(dbcrojoin1b)indexname(loc))))cmd(assert recordattribute,recordattribute(tuple(recordtypename(rec)relvarname(dbcrojoin1a)attributename(int1)ordinal(10))tuple(recordtypename(rec)relvarname(dbcrojoin1a)attributename(int2)ordinal(20))tuple(recordtypename(rec)relvarname(dbcrojoin1b)attributename(int2)ordinal(10))tuple(recordtypename(rec)relvarname(dbcrojoin1b)attributename(int3)ordinal(20))))cmd(assert indexcomponent,indexcomponent(tuple(relvarname(dbcrojoin1a)indexname(loc)ordinal(10)sp_expression(int2))tuple(relvarname(dbcrojoin1b)indexname(loc)ordinal(10)sp_expression(int2))))
Reply   : 

Comment : tests on the usage of extend in database constraints where interval types are in play

Request : delete dbcrojoin1a,dbcrojoin1a
Reply   : 
Request : delete dbcrojoin1b,dbcrojoin1b
Reply   : 
Request : commit
Reply   : 

Comment : join should be empty
Request : assert databaseconstraint,databaseconstraint(tuple(constraintlabel(just a test case)errorcode(121119)sp_expression( join\(dbcrojoin1a,dbcrojoin1b\) )))
Reply   : 

Comment : should pass
Request : assert dbcrojoin1a,dbcrojoin1a(tuple(int1(1)int2(5)))
Reply   : 

Comment : should fail
Request : assert dbcrojoin1b,dbcrojoin1b(tuple(int2(5)int3(25)))
Reply   : 201806116:121119:Constraint 121119 violated.  Violating tuple attribute values are : INT2=5,INT3=25,INT1=1.  Meaning : (integers 1, 5. AND integers 5, 25.) OR ((integers 1, 5. AND integers 5, 25.,and it is not the case that : integers int2, 25.) OR (integers int2, 25. AND integers 1, int2.,and it is not the case that : integers 1, int2.)).

Comment : should pass
Request : assert dbcrojoin1b,dbcrojoin1b(tuple(int2(1)int3(5)))
Reply   : 

Comment : should fail
Request : assert dbcrojoin1a,dbcrojoin1a(tuple(int1(-1)int2(1)))
Reply   : 201806116:121119:Constraint 121119 violated.  Violating tuple attribute values are : INT2=1,INT3=5,INT1=-1.  Meaning : (integers -1, 1. AND integers 1, 5.) OR ((integers -1, 1. AND integers 1, 5.,and it is not the case that : integers int2, 5.) OR (integers int2, 5. AND integers -1, int2.,and it is not the case that : integers -1, int2.)).

Request : commit
Reply   : 

Comment : move one out of the way - should pass
Request : cmd(update dbcrojoin1a,dbcrojoin1a(tuple(int1(1)int2(5))),(int2(int(4))))cmd(assert dbcrojoin1b,dbcrojoin1b(tuple(int2(5)int3(25))))
Reply   : 
Request : commit
Reply   : 

Request : inquire dbcrojoin1a
Reply   : RELATION(HEADING(INT2(INT)INT1(INT))BODY(TUPLE(INT2(4)INT1(1))))
Request : inquire dbcrojoin1b
Reply   : RELATION(HEADING(INT2(INT)INT3(INT))BODY(TUPLE(INT2(1)INT3(5))TUPLE(INT2(5)INT3(25))))

Comment : move one out of the way - should pass
Request : cmd(update dbcrojoin1b,dbcrojoin1b(tuple(int2(1)int3(5))),(int2(int(3))))cmd(assert dbcrojoin1a,dbcrojoin1a(tuple(int1(-1)int2(1))))
Reply   : 
Request : commit
Reply   : 

Request : inquire dbcrojoin1a
Reply   : RELATION(HEADING(INT2(INT)INT1(INT))BODY(TUPLE(INT2(4)INT1(1))TUPLE(INT2(1)INT1(-1))))
Request : inquire dbcrojoin1b
Reply   : RELATION(HEADING(INT2(INT)INT3(INT))BODY(TUPLE(INT2(3)INT3(5))TUPLE(INT2(5)INT3(25))))

Comment : undo this particular databaseconstraint so the script can be run again and again
Request : unassert databaseconstraint,semijoin(databaseconstraint,relation(heading(errorcode(long))body(tuple(errorcode(121119)))))
Reply   : 

Request : delete dbcrojoin1a,dbcrojoin1a
Reply   : 
Request : delete dbcrojoin1b,dbcrojoin1b
Reply   : 
Request : commit
Reply   : 

Request : cmd(unassert recordtype,recordtype(tuple(filename(dbcrojoin.spdb)storagespaceid(1)recordtypename(rec)indexname(loc)relvarname(dbcrojoin1a))tuple(filename(dbcrojoin.spdb)storagespaceid(1)recordtypename(rec)indexname(loc)relvarname(dbcrojoin1b))))cmd(unassert index,index(tuple(filename(dbcrojoin.spdb)storagespaceid(2)recordtypename(rec)relvarname(dbcrojoin1a)indexname(loc))tuple(filename(dbcrojoin.spdb)storagespaceid(2)recordtypename(rec)relvarname(dbcrojoin1b)indexname(loc))))cmd(unassert recordattribute,recordattribute(tuple(recordtypename(rec)relvarname(dbcrojoin1a)attributename(int1)ordinal(10))tuple(recordtypename(rec)relvarname(dbcrojoin1a)attributename(int2)ordinal(20))tuple(recordtypename(rec)relvarname(dbcrojoin1b)attributename(int2)ordinal(10))tuple(recordtypename(rec)relvarname(dbcrojoin1b)attributename(int3)ordinal(20))))cmd(unassert indexcomponent,indexcomponent(tuple(relvarname(dbcrojoin1a)indexname(loc)ordinal(10)sp_expression(int2))tuple(relvarname(dbcrojoin1b)indexname(loc)ordinal(10)sp_expression(int2))))
Reply   : 

Request : cmd(unassert dbmsfile,dbmsfile(tuple(filename(dbcrojoin.spdb)pagesize(8192))))cmd(unassert storagespace,storagespace(tuple(filename(dbcrojoin.spdb)extentscount(2)pagecount(20)storagespaceid(1))tuple(filename(dbcrojoin.spdb)extentscount(2)pagecount(20)storagespaceid(2))))cmd(unassert dataspace,dataspace(tuple(filename(dbcrojoin.spdb)storagespaceid(1)gapcompressionthreshold(5)maximumgaps(9))))cmd(unassert multihashingindexspace,multihashingindexspace(tuple(filename(dbcrojoin.spdb)storagespaceid(2)gapcompressionthreshold(5)maximumgaps(9))))
Reply   : 

Request : cmd(unassert relvar,relvar(tuple(relvarname(dbcrojoin1a)relvarpredicate(integers int1, int2.))tuple(relvarname(dbcrojoin1b)relvarpredicate(integers int2, int3.))))cmd(unassert relvarattribute,relvarattribute(tuple(relvarname(dbcrojoin1a)attributename(int1))tuple(relvarname(dbcrojoin1a)attributename(int2))tuple(relvarname(dbcrojoin1b)attributename(int2))tuple(relvarname(dbcrojoin1b)attributename(int3))))
Reply   : 

Request : unassert attribute,semiminus(attribute(tuple(attributename(int1)typename(int))tuple(attributename(int2)typename(int))tuple(attributename(int3)typename(int))),relvarattribute)
Reply   : 

END
