Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Cypher function conformance

Every Cypher function the openCypher TCK calls, and every function the engine lists that no TCK scenario calls. The two columns are independent. In the engine is read from the engine, not the TCK: a function is implemented unless the engine refuses the name or says the feature is not supported. TCK scenarios counts the scenarios that call the function, passing / total, with — when none runs. A scenario counts for every function it calls, and a scenario can fail for a reason that is not the function: the name of a result column, or the setup. A low count is not proof the function is wrong. The overall rate is on openCypher conformance.

FunctionIn the engineTCK scenariosNotes
absimplemented3 / 4
atanimplemented—no TCK scenarios
atan2implemented—no TCK scenarios
avgimplemented1 / 6
ceilimplemented0 / 1
coalesceimplemented28 / 30
collectimplemented74 / 962 skipped
containsimplemented—no TCK scenarios
cosimplemented—no TCK scenarios
countimplemented101 / 1833 skipped
dateimplemented153 / 17745 skipped
date.realtimeimplemented1 / 1
date.statementimplemented1 / 1
date.transactionimplemented1 / 1
date.truncateimplemented51 / 51
datetimeimplemented231 / 251169 skipped
datetime.fromepochimplemented1 / 1
datetime.fromepochmillisimplemented1 / 1
datetime.realtimeimplemented1 / 1
datetime.statementimplemented1 / 1
datetime.transactionimplemented1 / 1
datetime.truncateimplemented74 / 7431 skipped
decayimplemented—no TCK scenarios
durationimplemented46 / 7418 skipped
duration.betweenimplemented10 / 1518 skipped
duration.indaysimplemented10 / 1012 skipped
duration.inmonthsimplemented15 / 1512 skipped
duration.insecondsimplemented14 / 1534 skipped
eimplemented—no TCK scenarios
elementidimplemented—no TCK scenarios
endnodeimplemented0 / 1
endswithimplemented—no TCK scenarios
expimplemented—no TCK scenarios
floorimplemented—no TCK scenarios
headimplemented1 / 5
idimplemented—no TCK scenarios
keyimplemented—no TCK scenarios
keysimplemented19 / 28
labelsimplemented6 / 1210 skipped
lastimplemented0 / 1
leftimplemented—no TCK scenarios
lengthimplemented5 / 8
localdatetimeimplemented209 / 23496 skipped
localdatetime.realtimeimplemented1 / 1
localdatetime.statementimplemented1 / 1
localdatetime.transactionimplemented1 / 1
localdatetime.truncateimplemented74 / 74
localtimenot supported—time types are not in 0.10; 144 skipped
localtime.realtimenot supported—time types are not in 0.10; 1 skipped
localtime.statementnot supported—time types are not in 0.10; 1 skipped
localtime.transactionnot supported—time types are not in 0.10; 1 skipped
localtime.truncatenot supported—time types are not in 0.10; 44 skipped
logimplemented—no TCK scenarios
log10implemented—no TCK scenarios
ltrimimplemented—no TCK scenarios
maximplemented22 / 29
minimplemented1 / 9
nodesimplemented3 / 12
percentilecontimplemented6 / 6
percentilediscimplemented6 / 7
piimplemented—no TCK scenarios
propertiesimplemented6 / 7
randimplemented64 / 65
rangeimplemented77 / 932 skipped
relationshipsimplemented2 / 7
replaceimplemented—no TCK scenarios
reverseimplemented63 / 64
rightimplemented—no TCK scenarios
roundimplemented—no TCK scenarios
rtrimimplemented—no TCK scenarios
signimplemented0 / 1
sinimplemented—no TCK scenarios
sizeimplemented132 / 15110 skipped
splitimplemented1 / 2
sqrtimplemented0 / 1
startnodeimplemented0 / 1
startswithimplemented—no TCK scenarios
substringimplemented1 / 1
sumimplemented7 / 31
tailimplemented0 / 9
tanimplemented—no TCK scenarios
textmatchesimplemented—no TCK scenarios
timenot supported—time types are not in 0.10; 149 skipped
time.realtimenot supported—time types are not in 0.10; 1 skipped
time.statementnot supported—time types are not in 0.10; 1 skipped
time.transactionnot supported—time types are not in 0.10; 1 skipped
time.truncatenot supported—time types are not in 0.10; 48 skipped
tobooleanimplemented4 / 10
tobooleanornullimplemented—no TCK scenarios
tofloatimplemented5 / 11
tofloatornullimplemented—no TCK scenarios
tointegerimplemented11 / 18
tointegerornullimplemented—no TCK scenarios
tolowerimplemented1 / 1
tostringimplemented22 / 293 skipped
toupperimplemented—no TCK scenarios
trimimplemented—no TCK scenarios
typeimplemented13 / 161 skipped