questdb
questdb copied to clipboard
feat(core): nanosecond timestamp
This is a work in progress
- [x] core nanos arithmetic
- [x] core nanos parser/formatter
- [x] core nanos arithmetic tests
- [x] core nanos parser/formatter tests
- [ ] timestamp driver extraction
- [ ] SQL to chose timestamp resolution and hence the driver
- [ ] table metadata to carry the resolution value
Design considerations
- TIMSTAMP data type will be the carrier of the resolution, similar to GEOHASH data types
partitionBymust be accompanied by thetimestampTypeinteger.ColumnType.tagOf(timestampType)will always beTIMESTAMP- the source of the timestamp type is always the metadata, e.g. table metadata or table structure
- in the migration code and legacy code, such as parallel CSV import timestamp type is hardcoded to default - micros
- partition purge table needs extra work to pass-thru timestamp type
Notes
- changed the logic of extracting the year from micros. Old logic was going to overflow for nanos, the new logic works uniformly for both
- moved few methods around to reduce code duplication
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
4 out of 5 committers have signed the CLA.
:white_check_mark: kafka1991
:white_check_mark: bluestreak01
:white_check_mark: puzpuzpuz
:white_check_mark: mtopolnik
:x: GitHub Actions - Rebuild Native Libraries
GitHub Actions - Rebuild Native Libraries seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.
[!IMPORTANT]
Review skipped
Auto reviews are disabled on this repository.
Please check the settings in the CodeRabbit UI or the
.coderabbit.yamlfile in this repository. To trigger a single review, invoke the@coderabbitai reviewcommand.You can disable this status message by setting the
reviews.review_statustofalsein the CodeRabbit configuration file.
✨ Finishing touches
🧪 Generate unit tests
- [ ] Create PR with unit tests
- [ ] Post copyable unit tests in a comment
- [ ] Commit unit tests in branch
vi_nano
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
Comment @coderabbitai help to get the list of available commands and usage tips.
a CI hiccup due to npm:
2025-08-26T10:07:51.8910172Z starting nodejs tests with the pg driver
2025-08-26T10:07:51.8911005Z /home/runner/work/questdb/questdb/compat/src/test/nodejs-pg
2025-08-26T10:09:03.7415581Z npm error code E429
2025-08-26T10:09:03.7418054Z npm error 429 Too Many Requests - GET https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz
2025-08-26T10:09:03.7427961Z npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2025-08-26T10_07_51_942Z-debug-0.log
@coderabbit review
✅ Actions performed
Review triggered.
Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.
i have this data:
however, when i try to filter the results on timestamp - no bueno:
however, when i try to filter the results on timestamp - no bueno
This is reproducible on master, so probably an existing bug:
explain trades where timestamp in '2022-03-08T18:03:57.71';
gives
intervals: [("2022-03-08T18:03:57.710000Z","2022-03-08T18:03:57.710000Z")]
Notice equal boundaries - we search for exactly 2022-03-08T18:03:57.710000Z
[PR Coverage check]
:heart_eyes: pass : 7587 / 8137 (93.24%)
file detail
| path | covered line | new line | coverage | |
|---|---|---|---|---|
| :large_blue_circle: | io/questdb/cairo/PartitionOverwriteControl.java | 0 | 1 | 00.00% |
| :large_blue_circle: | io/questdb/cairo/wal/seq/SequencerMetadataService.java | 0 | 1 | 00.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/ToPgDateFunctionFactory.java | 0 | 1 | 00.00% |
| :large_blue_circle: | io/questdb/cutlass/line/LineUdpSender.java | 0 | 3 | 00.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/IsLeapYearFunctionFactory.java | 0 | 2 | 00.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/window/LastValueTimestampWindowFunctionFactory.java | 0 | 15 | 00.00% |
| :large_blue_circle: | io/questdb/cutlass/pgwire/DefaultPGConfiguration.java | 0 | 1 | 00.00% |
| :large_blue_circle: | io/questdb/cairo/DebugUtils.java | 0 | 4 | 00.00% |
| :large_blue_circle: | io/questdb/griffin/SqlException.java | 0 | 1 | 00.00% |
| :large_blue_circle: | io/questdb/std/BytecodeAssembler.java | 0 | 3 | 00.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/window/AbstractWindowFunctionFactory.java | 0 | 1 | 00.00% |
| :large_blue_circle: | io/questdb/cutlass/http/DefaultHttpServerConfiguration.java | 0 | 2 | 00.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/SumDateVectorAggregateFunction.java | 0 | 6 | 00.00% |
| :large_blue_circle: | io/questdb/cairo/ColumnVersionWriter.java | 0 | 1 | 00.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/window/FirstValueTimestampWindowFunctionFactory.java | 1 | 11 | 09.09% |
| :large_blue_circle: | io/questdb/cutlass/http/processors/TextQueryProcessor.java | 1 | 4 | 25.00% |
| :large_blue_circle: | io/questdb/cutlass/http/processors/LineHttpProcessorImpl.java | 2 | 7 | 28.57% |
| :large_blue_circle: | io/questdb/cairo/wal/WalPurgeJob.java | 3 | 9 | 33.33% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MaxDateVectorAggregateFunction.java | 2 | 6 | 33.33% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MinDateVectorAggregateFunction.java | 2 | 6 | 33.33% |
| :large_blue_circle: | io/questdb/griffin/model/QueryModel.java | 8 | 17 | 47.06% |
| :large_blue_circle: | io/questdb/log/LogFactory.java | 1 | 2 | 50.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/SimpleTimestampSampler.java | 5 | 10 | 50.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/PgPostmasterStartTimeFunctionFactory.java | 1 | 2 | 50.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/DefaultLineTcpReceiverConfiguration.java | 1 | 2 | 50.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/constants/IntervalConstant.java | 6 | 11 | 54.55% |
| :large_blue_circle: | parquet_write/schema.rs | 14 | 25 | 56.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/WeekTimestampMicrosSampler.java | 11 | 19 | 57.89% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/WeekTimestampNanosSampler.java | 11 | 19 | 57.89% |
| :large_blue_circle: | io/questdb/griffin/engine/ops/AlterOperation.java | 4 | 7 | 57.14% |
| :large_blue_circle: | io/questdb/std/datetime/microtime/TimeZoneRulesMicros.java | 5 | 8 | 62.50% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/bind/BindVariableServiceImpl.java | 55 | 86 | 63.95% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/AvgDoubleVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/DayOfWeekSundayFirstFunctionFactory.java | 2 | 3 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MaxDoubleVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MinIntVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/SumDoubleVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/std/datetime/nanotime/TimeZoneRulesNanos.java | 6 | 9 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/SumLong256VectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MaxIntVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/NSumDoubleVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/std/Interval.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/SumIntVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/AvgIntVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MinDoubleVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastIntervalToStrFunctionFactory.java | 2 | 3 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/KSumDoubleVectorAggregateFunction.java | 4 | 6 | 66.67% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/DaysPerMonthFunctionFactory.java | 2 | 3 | 66.67% |
| :large_blue_circle: | io/questdb/cairo/wal/WalWriter.java | 5 | 7 | 71.43% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MinTimestampVectorAggregateFunction.java | 5 | 7 | 71.43% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MaxTimestampVectorAggregateFunction.java | 5 | 7 | 71.43% |
| :large_blue_circle: | io/questdb/griffin/InsertRowImpl.java | 10 | 14 | 71.43% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/MillisOfSecondFunctionFactory.java | 3 | 4 | 75.00% |
| :large_blue_circle: | io/questdb/cutlass/line/AbstractLineTcpSender.java | 16 | 20 | 80.00% |
| :large_blue_circle: | io/questdb/griffin/ConvertOperatorImpl.java | 4 | 5 | 80.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/GenerateSeriesTimestampStringRecordCursorFactory.java | 24 | 29 | 82.76% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/MonthTimestampNanosSampler.java | 48 | 58 | 82.76% |
| :large_blue_circle: | io/questdb/cairo/mv/MatViewRefreshJob.java | 43 | 52 | 82.69% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/YearTimestampNanosSampler.java | 37 | 45 | 82.22% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/eq/EqIntervalFunctionFactory.java | 5 | 6 | 83.33% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/columns/IntervalColumn.java | 5 | 6 | 83.33% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/bool/InTimestampTimestampFunctionFactory.java | 56 | 67 | 83.58% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/VarcharToNanoTimestampVCFunctionFactory.java | 10 | 12 | 83.33% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/window/LagTimestampFunctionFactory.java | 16 | 19 | 84.21% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/bool/BetweenTimestampFunctionFactory.java | 54 | 64 | 84.38% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampSequenceFunctionFactory.java | 6 | 7 | 85.71% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/VarcharToTimestampVCFunctionFactory.java | 6 | 7 | 85.71% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/MonthTimestampMicrosSampler.java | 19 | 22 | 86.36% |
| :large_blue_circle: | io/questdb/griffin/FunctionParser.java | 46 | 53 | 86.79% |
| :large_blue_circle: | io/questdb/std/datetime/CommonUtils.java | 86 | 99 | 86.87% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/YearTimestampMicrosSampler.java | 21 | 24 | 87.50% |
| :large_blue_circle: | io/questdb/std/datetime/millitime/GenericDateFormat.java | 8 | 9 | 88.89% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/AbstractDayIntervalWithTimezoneFunction.java | 15 | 17 | 88.24% |
| :large_blue_circle: | io/questdb/cairo/NanosTimestampDriver.java | 621 | 699 | 88.84% |
| :large_blue_circle: | io/questdb/std/datetime/nanotime/NanosFormatUtils.java | 156 | 174 | 89.66% |
| :large_blue_circle: | io/questdb/griffin/WhereClauseParser.java | 119 | 133 | 89.47% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/SampleByInterpolateRecordCursorFactory.java | 10 | 11 | 90.91% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/conditional/CoalesceFunctionFactory.java | 10 | 11 | 90.91% |
| :large_blue_circle: | io/questdb/cairo/TableWriter.java | 90 | 100 | 90.00% |
| :large_blue_circle: | io/questdb/cutlass/text/types/TypeManager.java | 21 | 23 | 91.30% |
| :large_blue_circle: | io/questdb/std/datetime/nanotime/Nanos.java | 410 | 449 | 91.31% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampFloorFunctions.java | 13 | 14 | 92.86% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampShuffleFunctionFactory.java | 12 | 13 | 92.31% |
| :large_blue_circle: | io/questdb/cairo/O3PartitionJob.java | 39 | 42 | 92.86% |
| :large_blue_circle: | io/questdb/cairo/TimestampDriver.java | 57 | 61 | 93.44% |
| :large_blue_circle: | io/questdb/griffin/engine/ops/CreateMatViewOperationImpl.java | 15 | 16 | 93.75% |
| :large_blue_circle: | io/questdb/griffin/model/RuntimeIntervalModelBuilder.java | 31 | 33 | 93.94% |
| :large_blue_circle: | io/questdb/std/datetime/microtime/Micros.java | 144 | 153 | 94.12% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/conditional/SwitchFunctionFactory.java | 21 | 22 | 95.45% |
| :large_blue_circle: | io/questdb/cairo/ColumnType.java | 39 | 41 | 95.12% |
| :large_blue_circle: | io/questdb/griffin/model/IntervalUtils.java | 95 | 99 | 95.96% |
| :large_blue_circle: | io/questdb/griffin/SqlExecutionContextImpl.java | 22 | 23 | 95.65% |
| :large_blue_circle: | io/questdb/cairo/MicrosTimestampDriver.java | 671 | 704 | 95.31% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/lt/LtTimestampFunctionFactory.java | 41 | 43 | 95.35% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/math/LeastNumericFunctionFactory.java | 40 | 41 | 97.56% |
| :large_blue_circle: | io/questdb/std/datetime/microtime/MicrosFormatUtils.java | 43 | 44 | 97.73% |
| :large_blue_circle: | io/questdb/cairo/mv/MatViewTimerJob.java | 41 | 42 | 97.62% |
| :large_blue_circle: | io/questdb/griffin/SqlParser.java | 42 | 43 | 97.67% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/math/GreatestNumericFunctionFactory.java | 36 | 37 | 97.30% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/IntervalFunctionFactory.java | 46 | 47 | 97.87% |
| :large_blue_circle: | io/questdb/griffin/SqlCodeGenerator.java | 110 | 113 | 97.35% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampFloorFromOffsetFunctionFactory.java | 70 | 71 | 98.59% |
| :large_blue_circle: | io/questdb/std/datetime/nanotime/GenericNanosFormat.java | 358 | 364 | 98.35% |
| :large_blue_circle: | io/questdb/griffin/SqlCompilerImpl.java | 72 | 73 | 98.63% |
| :large_blue_circle: | io/questdb/std/datetime/nanotime/NanosFormatCompiler.java | 1011 | 1019 | 99.21% |
| :large_blue_circle: | io/questdb/std/datetime/microtime/GenericMicrosFormat.java | 362 | 363 | 99.72% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TomorrowWithTimezoneFunctionFactory.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/IndexBuilder.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/AsOfJoinLightNoKeyRecordCursorFactory.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/GenerateSeriesTimestampStringFunctionFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/LineTcpParser.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/VarcharToNanoTimestampFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/MaxTimestampGroupByFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/MetadataCache.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/TableConverter.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/array/IntIntervalRightOpenFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/RecoverVarIndex.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/GenerateSeriesTimestampRecordCursorFactory.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/wal/WalTxnDetails.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/table/TableStorageRecordCursorFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/bind/VarcharBindVariable.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/mv/TimeZoneIntervalIterator.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/table/ReaderPoolRecordCursorFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/TxWriter.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/catalogue/MatViewsFunctionFactory.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/eq/EqSymTimestampFunctionFactory.java | 13 | 13 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/IntervalBwdPartitionFrameCursor.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/catalogue/PgRolesFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/AbstractCastToTimestampFunction.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/DateFunction.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/LineWalAppender.java | 16 | 16 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastTimestampToDateFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/AsOfJoinRecordCursorFactory.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/LineTcpMeasurementScheduler.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/DatabaseCheckpointAgent.java | 14 | 14 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/TableReader.java | 17 | 17 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/types/TimestampUtf8Adapter.java | 1 | 1 | 100.00% |
| :large_blue_circle: | parquet_read/column_sink/fixed.rs | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/http/AbstractLineHttpSender.java | 20 | 20 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/VacuumColumnVersions.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/CountVectorAggregateFunction.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/ops/AlterOperationBuilder.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/PropServerConfiguration.java | 23 | 23 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/DefaultColumnTypes.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/FirstTimestampGroupByFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/log/TemplateParser.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/AbstractDayIntervalFunction.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/frm/file/FrameImpl.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/http/HttpHeaderParser.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/http/processors/LineHttpProcessorState.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/SampleByFillNullNotKeyedRecordCursorFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/udp/LineUdpParserSupport.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/SampleByFillValueNotKeyedRecordCursorFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/AddLongToTimestampFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/orderby/LongSortedLightRecordCursorFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/DefaultTextConfiguration.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/TableReaderMetadata.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/TableUpdateDetails.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastVarcharToTimestampFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastDoubleToTimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/VarcharToTimestampFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/std/str/CharSink.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/CairoTextWriter.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/MicrosOfMillsFunctionFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MaxLongVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/log/AbstractLogRecord.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/log/LogRollingFileWriter.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/WeekOfYearFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/table/LatestByRecordCursorFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/jit/CompiledFilterIRSerializer.java | 67 | 67 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/FirstNotNullTimestampGroupByFunction.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastBooleanToTimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/AvgShortVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampFloorFromFunctionFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/nanotime/NanosFormatFactory.java | 8 | 8 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/activity/QueryActivityFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/eq/EqTimestampCursorFunctionFactory.java | 32 | 32 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/GenerateSeriesTimestampLongFunctionFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/IntervalEndFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/NowFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/O3CopyJob.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/MinTimestampGroupByFunction.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/catalogue/CheckpointStatusFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/window/LeadTimestampFunctionFactory.java | 15 | 15 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/model/WindowColumn.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/LineTcpReceiverConfigurationWrapper.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/TableUtils.java | 10 | 10 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/mig/Mig620.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/http/HttpConnectionContext.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/AsOfJoinNoKeyFastRecordCursorFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/rnd/RndIntervalFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/AbstractAsOfJoinFastRecordCursor.java | 20 | 20 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/eq/EqTimestampFunctionFactory.java | 53 | 53 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/millitime/Dates.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/array/ArrayCreateFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/conditional/CaseCommon.java | 32 | 32 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/AbstractSymbolWrapOverCursor.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/pool/TableReaderMetadataTenantImpl.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/pgwire/PGPipelineEntry.java | 26 | 26 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/AttachDetachStatus.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/TimestampSamplerFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/SymbolCache.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/AbstractVirtualRecordSampleByCursor.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/wal/OperationExecutor.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/udp/DefaultLineUdpReceiverConfiguration.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/IntervalFwdPartitionFrameCursor.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TodayWithTimezoneFunctionFactory.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/wal/CheckWalTransactionsJob.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/LastNotNullTimestampGroupByFunction.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/mv/MatViewState.java | 12 | 12 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/ToNanoTimestampVCFunctionFactory.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/RecordSinkFactory.java | 11 | 11 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/model/IntrinsicModel.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/table/WriterPoolRecordCursorFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/HourOfDayFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/IntervalFunction.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/FunctionFactoryDescriptor.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/YearFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/types/OtherToTimestampAdapter.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/AbstractSampleByFillRecordCursor.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/ExpressionParser.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/str/ConcatFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/VarcharToPgDateFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/sql/RecordMetadata.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/CountDoubleVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/PurgingOperator.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/TxReader.java | 25 | 25 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/LineTcpConnectionContext.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/table/LatestByLightRecordCursorFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/arr/FunctionArray.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/math/SubTimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/DefaultCairoConfiguration.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastSymbolToTimestampFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/SumShortVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/ExtractFromTimestampFunctionFactory.java | 47 | 47 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/SumLongVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/DayOfWeekFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/catalogue/WalTransactionsFunctionFactory.java | 15 | 15 | 100.00% |
| :large_blue_circle: | io/questdb/mp/WorkerPoolUtils.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampAddWithTimezoneFunctionFactory.java | 15 | 15 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/BasePlanSink.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/tasks/O3PartitionPurgeTask.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/ops/CreateTableOperationImpl.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/constants/Constants.java | 30 | 30 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/lt/LtTimestampCursorFunctionFactory.java | 30 | 30 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/bind/StrBindVariable.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/CountIntVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/types/BadTimestampAdapter.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/CursorPrinter.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/CountLongVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/AvgLongVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/LtJoinNoKeyFastRecordCursorFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | parquet_read/meta.rs | 10 | 10 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/PartitionBy.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/StrFunction.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/ToTimestampVCFunctionFactory.java | 10 | 10 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/LastTimestampGroupByFunction.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/catalogue/TypeOfFunctionFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/O3OpenColumnJob.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/ColumnVersionReader.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TomorrowFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/constants/IntervalTypeConstant.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastShortToTimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/window/MaxTimestampWindowFunctionFactory.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/memoization/TimestampFunctionMemoizer.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/ToTimestampFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/LtJoinNoKeyRecordCursorFactory.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/SampleByFillNoneNotKeyedRecordCursorFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastLongToTimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/array/IntIntervalFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/table/TimeFrameRecordCursorImpl.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/ParquetTimestampFinder.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/types/InputFormatConfiguration.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/MaxTimestampGroupByFunction.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/table/ShowPartitionsRecordCursorFactory.java | 30 | 30 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/FillRangeRecordCursorFactory.java | 13 | 13 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/ToUTCTimestampFunctionFactory.java | 17 | 17 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/SampleByFirstLastRecordCursorFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/O3PartitionPurgeJob.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/MonthOfYearFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastStrToTimestampFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/millitime/DateFormatCompiler.java | 18 | 18 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/mv/MatViewStateReader.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MaxShortVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/DefaultTelemetryConfiguration.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampDiffFunctionFactory.java | 31 | 31 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/CsvFileIndexer.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/GroupByUtils.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/PropertyKey.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/AsOfJoinFastRecordCursorFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/bool/InTimestampIntervalFunctionFactory.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/microtime/MicrosFormatFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampCeilFunctionFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/ToNanoTimestampFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/ParallelCsvFileImporter.java | 12 | 12 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/UpdateOperatorImpl.java | 11 | 11 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/wal/ApplyWal2TableJob.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/IntervalStartFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/constants/TimestampConstant.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/catalogue/WalTableListFunctionFactory.java | 8 | 8 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/FirstTimestampGroupByFunction.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/LtJoinRecordCursorFactory.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/types/DateAdapter.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/MinuteOfHourFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/lt/GtTimestampCursorFunctionFactory.java | 30 | 30 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampFloorFunctionFactory.java | 15 | 15 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/SystimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/FilteredAsOfJoinNoKeyFastRecordCursorFactory.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/SpliceJoinLightRecordCursorFactory.java | 8 | 8 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/NanosOfMicrosFunctionFactory.java | 11 | 11 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/ToStrTimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MinLongVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampFloorOffsetFunction.java | 18 | 18 | 100.00% |
| :large_blue_circle: | io/questdb/TelemetryConfigLogger.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/test/TestTimestampCounterFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/DateTruncFunctionFactory.java | 20 | 20 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/AbstractNoRecordSampleByCursor.java | 11 | 11 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/ColumnPurgeJob.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/mp/Worker.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TimestampAddFunctionFactory.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastCharToTimestampFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/TodayFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/window/WindowContextImpl.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/SampleByFillValueNotKeyedRecordCursor.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastTimestampToStrFunctionFactory.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/LastNotNullTimestampGroupByFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/AbstractUnaryTimestampFunction.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/model/RuntimeIntervalModel.java | 24 | 24 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/udp/LineUdpParserImpl.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastFloatToTimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/SymbolFunction.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/MinTimestampGroupByFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/constants/TimestampTypeConstant.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/FilteredAsOfJoinFastRecordCursorFactory.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/ColumnTypeConverter.java | 37 | 37 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastByteToTimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/catalogue/PgLocksFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/nanotime/NanosecondClockImpl.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/tasks/ColumnPurgeTask.java | 8 | 8 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastDateToTimestampFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/DateLocaleFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastIntToTimestampFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/conditional/TimestampCaseFunction.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/CairoTable.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/vect/MinShortVectorAggregateFunction.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/ops/CreateMatViewOperationBuilderImpl.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/mv/MatViewDefinition.java | 22 | 22 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/LastTimestampGroupByFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastTimestampToTimestampFunctionFactory.java | 12 | 12 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/LineProtocolException.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/rnd/RndTimestampFunctionFactory.java | 11 | 11 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/groupby/FirstNotNullTimestampGroupByFunctionFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/types/TimestampAdapter.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/std/Numbers.java | 18 | 18 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/TimeZoneRuleFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/mig/Mig506.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/ToTimezoneTimestampFunctionFactory.java | 18 | 18 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/TableStructureAdapter.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/SecondOfMinuteFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/SqlOptimiser.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/columns/TimestampColumn.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/constants/NullConstant.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/table/TablePartitionsFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/AbstractSampleByCursor.java | 10 | 10 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/YesterdayWithTimezoneFunctionFactory.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/mv/MatViewRefreshSqlExecutionContext.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/json/JsonExtractTypedFunctionFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/RebuildColumnBase.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/VarcharFunction.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/TextMetadataParser.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/std/str/Utf8Sink.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/http/processors/JsonQueryProcessorState.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/DropIndexOperator.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/SqlKeywords.java | 36 | 36 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/RecordToRowCopierUtils.java | 24 | 24 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/ColumnPurgeOperator.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/wal/WalEventCursor.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/line/tcp/LineTcpMeasurementEvent.java | 12 | 12 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/SampleByFillValueRecordCursorFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/CopyTask.java | 9 | 9 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/TimestampFunction.java | 10 | 10 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/YesterdayFunctionFactory.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/OffsetTimestampFunction.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/SysNanotimestampFunctionFactory.java | 6 | 6 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/json/JsonExtractFunction.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/cutlass/text/TextLoader.java | 5 | 5 | 100.00% |
| :large_blue_circle: | io/questdb/log/NullLogRecord.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/millitime/DateFormatUtils.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/LtJoinLightRecordCursorFactory.java | 10 | 10 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/cast/CastTimestampToVarcharFunctionFactory.java | 7 | 7 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/microtime/MicrosFormatCompiler.java | 58 | 58 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/date/DayOfMonthFunctionFactory.java | 4 | 4 | 100.00% |
| :large_blue_circle: | io/questdb/cairo/CairoException.java | 3 | 3 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/SqlUtil.java | 25 | 25 | 100.00% |
| :large_blue_circle: | io/questdb/metrics/QueryTracingJob.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/table/ShowCreateMatViewRecordCursorFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/groupby/SampleByFillNullRecordCursorFactory.java | 1 | 1 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/functions/bind/TimestampBindVariable.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/std/datetime/millitime/DateFormatFactory.java | 2 | 2 | 100.00% |
| :large_blue_circle: | io/questdb/griffin/engine/join/AsOfJoinLightRecordCursorFactory.java | 11 | 11 | 100.00% |