Database: berlintest Restore : No Operator : bbox Number : 1 Signature: rtree -> rect Example : query bbox(strassen_geoData) Result : (rect (-10836.00000001 33575.00000001 -6686.00000001 28095.00000001)) Operator : bulkloadrtree Number : 1 Signature: stream (tuple (x1 t1)...(xn tn) (id tid))) xi) -> (rtree (tuple ((x1 t1)...(xn tn))) ti false), (id tid)(low int)(high int))) xi) -> (rtree (tuple ((x1 t1)...(xn tn))) ti true) (id tid)(low int)(high int))) xi) -> (rtree (tuple ((x1 t1)...(xn tn))) ti true) Example : query Landstrassen feed projectextend[ ; TID: tupleid(.), MBR: bbox(.geoData)] sortby[MBR asc] bulkloadrtree[MBR] Result : file_platform Operator : creatertree Number : 1 Signature: ((rel (tuple (x1 t1)...(xn tn)))) xi) -> (rtree (tuple ((x1 t1)...(xn tn))) ti false) Example : query strassen creatertree[geoData] Result : file_platform Operator : creatertree Number : 2 Signature: ((rel (tuple (x1 t1)...(xn tn)))) xi) -> (rtree (tuple ((x1 t1)...(xn tn))) ti false) Example : query strassen creatertree[geoData] windowintersectsS[tiergarten] count Result : 79 Operator : gettuples Number : 1 Signature: (stream (tuple ((id tid) (x1 t1)...(xn tn)))) x (rel (tuple ((y1 t1)...(yn tn)))) -> (stream (tuple ((x1 t1)...(xn tn) (y1 t1)...(yn tn)))) Example : query unitTrains_Line exactmatchS[1] UnitTrains gettuples count Result : 6554 Operator : gettuples2 Number : 1 Signature: (stream (tuple ((id tid) (x1 t1)...(xn tn)))) x (rel (tuple ((y1 t1)...(yn tn)))) -> (stream (tuple ((x1 t1)...(xn tn) (y1 t1)...(yn tn)))) Example : query unitTrains_Line exactmatchS[1] UnitTrains gettuples2[id] count Result : 6554 Operator : gettuples2 Number : 2 Signature: (stream (tuple ((id tid) (x1 t1)...(xn tn)))) x (rel (tuple ((y1 t1)...(yn tn)))) -> (stream (tuple ((x1 t1)...(xn tn) (y1 t1)...(yn tn)))) Example : query unitTrains_Line exactmatchS[1] {S} extend[id2: .id_S] UnitTrains gettuples2[id2] count Result : 6554 Operator : gettuples2 Number : 3 Signature: (stream (tuple ((id tid) (x1 t1)...(xn tn)))) x (rel (tuple ((y1 t1)...(yn tn)))) x id -> (stream (tuple ((x1 t1)...(xn tn) (y1 t1)...(yn tn)))) Example : query ten feed extend[tenid: tupleid(.)] unitTrains_Line exactmatchS[1] {S} product UnitTrains gettuples2[id_S] count Result : 65540 Operator : gettuplesdbl Number : 1 Signature: (stream (tuple ((id tid) (x1 t1)...(xn tn)))) x (rel (tuple ((y1 t1)...(yn tn)))) x yk -> (stream (tuple ((x1 t1)...(xn tn) (y1 t1)...(yn tn)))) Example : query (Trains feed {X} filter[.Id_X < 3] filter[.Up_X = TRUE] addid extend[low: 2 , high: 3] project[TID, low, high]) Trains gettuplesdbl[Trip] consume Result : ((rel (tuple ((Id int)(Line int)(Up bool)(Trip mpoint))))((1 1 TRUE ((("2003-11-20-06:04:08.127" "2003-11-20-06:04:15.658" TRUE FALSE)(13287.0 10675.0 13244.0 10635.0))(("2003-11-20-06:04:15.658" "2003-11-20-06:04:22.886" TRUE FALSE)(13244.0 10635.0 13193.0 10611.0))))(2 1 TRUE ((("2003-11-20-06:11:08.127" "2003-11-20-06:11:15.658" TRUE FALSE)(13287.0 10675.0 13244.0 10635.0))(("2003-11-20-06:11:15.658" "2003-11-20-06:11:22.886" TRUE FALSE)(13244.0 10635.0 13193.0 10611.0)))))) Operator : nodes Number : 1 Signature: rtree (tuple ((x1 t1)...(xn tn))) ti false) -> stream(tuple((level int) (nodeId int) (MBR rect) (fatherId int) (isLeaf bool) (minEntries int) (maxEntries int) (countEntries int))) Example : query nodes(strassen_geoData) filter[.level = 1] consume Result : file_platform Operator : no_entries Number : 1 Signature: rtree -> int Example : query no_entries(strassen_geoData) Result : 3212 Operator : no_nodes Number : 1 Signature: rtree -> int Example : query no_nodes(strassen_geoData) Result : (platform (linux (int 55)) (win32 (int 65)) (linux64 (int 80))(mac_osx (int 55))) Operator : treeheight Number : 1 Signature: rtree -> int Example : query treeheight(strassen_geoData) Result : (platform (linux (int 1)) (win32 (int 1)) (linux64 (int 2))(mac_osx (int 1))) Operator : windowintersects Number : 1 Signature: ((rtree (tuple ((x1 t1)...(xn tn))) ti)(rel (tuple ((x1 t1)...(xn tn)))) T) -> (stream (tuple ((x1 t1)...(xn tn)))), where T = ti in {rect} U SPATIAL2D U SPATIAL3D U SPATIAL4D U SPATIAL8D Example : query strassen_geoData strassen windowintersects[ bbox(thecenter) ] count Result : 1266 Operator : windowintersectsS Number : 1 Signature: ((rtree (tuple ((x1 t1)...(xn tn))) ti) T -> (stream (tuple ((id tid)))), where T = ti in {rect} U SPATIAL2D U SPATIAL3D U SPATIAL4D U SPATIAL8D Example : query strassen_geoData windowintersectsS[ bbox(thecenter) ] count Result : 1266 Operator : entries Number : 1 Signature: rtree (tuple ((x1 t1)...(xn tn))) ti false) -> stream(tuple((nodeId int) (MBR rect) (Tid tupleid))) Example : query entries(strassen_geoData_rtree) filter[.Nodeid = getRootNode(strassen_geoData_rtree)] tconsume count; Result : 3212 Operator : getFileInfo Number : 1 Signature: rtree (tuple ((x1 t1)...(xn tn))) ti bool) -> text Example : query isdefined(getFileInfo(strassen_geoData_rtree)) Result : TRUE Operator : getRootNode Number : 1 Signature: rtree -> int Example : query getRootNode(strassen_geoData_rtree) > 0 Result : TRUE Operator : getNodeInfo Number : 1 Signature: rtree (tuple ((x1 t1)...(xn tn))) ti false) x int -> stream(tuple((nodeId int) (MBR rect) (IsLeafNode bool) (IsRootNode bool) (MBRsize real) (MBRdead real) (MBRoverlapSize real) (MBRoverlapsNo int) (MBRdensity real))) Example : query getNodeInfo(strassen_geoData_rtree, 2) count Result : 1 Operator : getNodeSons Number : 1 Signature: rtree (tuple ((x1 t1)...(xn tn))) ti false) x int -> stream(tuple((NodeId int) (SonId int) (SonMBR rect))) Example : query getNodeSons(strassen_geoData_rtree, 2) count Result : 54 Operator : getLeafEntries Number : 1 Signature: rtree (tuple ((x1 t1)...(xn tn))) ti false) x int -> stream(tuple((NodeId int) (TupleID tid) (EntryMBR rect))) Example : query getLeafEntries(strassen_geoData_rtree, 3) count Result : 49 Operator : updatebulkloadrtree Number : 1 Signature: (rtree (tuple ((x1 t1)...(xn tn))) ti false) stream (tuple (x1 t1)...(xn tn) (id tid))) xi) -> (rtree (tuple ((x1 t1)...(xn tn))) ti false), (id tid)(low int)(high int))) xi) -> (rtree (tuple ((x1 t1)...(xn tn))) ti true) (id tid)(low int)(high int))) xi) -> (rtree (tuple ((x1 t1)...(xn tn))) ti true) Example : query strassen_geoData_rtree strassen feed extend[TID : tupleid(.)] sortby[geoData asc] updatebulkloadrtree[geoData]; Result : crashes Remark : After that query the berkeley db is in a unnormal state Operator : cyclicbulkload Number : 1 Signature: "((stream (tuple([a1:d1, ..., {aj:mpoint, aj:upoint}, ..., an:dn, id:tid]))) x rect x int int x aj) -> rtree3" Example : query dataMtrip feed extend[TID : tupleid(.)] cyclicbulkload[[const rect value (0.0 1000.0 0.0 1000.0)], 4096, 5000, Trip] Result : file_platform