Garnet is a remote cache-store from Microsoft Research that offers strong performance (throughput and latency), scalability, storage, recovery, cluster sharding, key migration, and replication features. Garnet can work with existing Redis clients.
This report presents the forensic synthetic code analysis of microsoft/garnet, a C# project with 11,897 GitHub stars. SynthScan v2.0 examined 433,588 lines of code across 1511 source files, recording 1590 pattern matches distributed across 13 syntactic categories. The overall adjusted score of 4.1 places this repository in the Likely human-written band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 1590 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | benchmark/BDN.benchmark/NamespaceTypeOrderer.cs | 1 | // Copyright (c) Microsoft Corporation. | COMMENT |
| LOW | …nchmark/Cluster/ConsistentRead/ConsistentReadParams.cs | 1 | // Copyright (c) Microsoft Corporation. | COMMENT |
| LOW | benchmark/BDN.benchmark/Operations/ScriptOperations.cs | 181 | /// Batch size per method invocation | COMMENT |
| LOW | benchmark/BDN.benchmark/Operations/OperationParams.cs | 1 | // Copyright (c) Microsoft Corporation. | COMMENT |
| LOW | benchmark/BDN.benchmark/Operations/OperationsBase.cs | 61 | COMMENT | |
| LOW | benchmark/BDN.benchmark/Operations/OperationsBase.cs | 101 | { | COMMENT |
| LOW | …chmark/BDN.benchmark/Embedded/EmbeddedNetworkSender.cs | 21 | /// <summary> | COMMENT |
| LOW | benchmark/Resp.benchmark/OfflineBench/RespPerfBench.cs | 261 | swatch.Stop(); | COMMENT |
| LOW | …k/Resp.benchmark/OfflineBench/AOFBench/AofBenchType.cs | 1 | // Copyright (c) Microsoft Corporation. | COMMENT |
| LOW | …k/Resp.benchmark/OfflineBench/AOFBench/AofBenchType.cs | 21 | /// Simulate AOF replay (skipping resp parsing) | COMMENT |
| LOW | ….benchmark/OfflineBench/AOFBench/TsavoriteExtension.cs | 21 | HeaderSizeField = type.GetField("headerSize", flags); | COMMENT |
| LOW | metrics/HdrHistogram/HistogramExtensions.cs | 61 | /// <summary> | COMMENT |
| LOW | metrics/HdrHistogram/HistogramExtensions.cs | 81 | targetHistogram.Reset(); | COMMENT |
| LOW | metrics/HdrHistogram/HistogramExtensions.cs | 101 | public static IEnumerable<HistogramIterationValue> Percentiles(this HistogramBase histogram, int percentileTicks | COMMENT |
| LOW | metrics/HdrHistogram/HistogramExtensions.cs | 121 | /// seconds or other appropriate unit. | COMMENT |
| LOW | metrics/HdrHistogram/HistogramExtensions.cs | 141 | /// { | COMMENT |
| LOW | metrics/HdrHistogram/HistogramExtensions.cs | 161 | /// Records the elapsed time till the returned token is disposed. | COMMENT |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 21 | /// Base class for High Dynamic Range (HDR) Histograms | COMMENT |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 61 | public long HighestTrackableValue { get; } | COMMENT |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 101 | COMMENT | |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 121 | /// </summary> | COMMENT |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 141 | /// </param> | COMMENT |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 161 | /// Construct a histogram given the lowest and highest values to be tracked and a number of significant decimal | COMMENT |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 221 | /// <summary> | COMMENT |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 241 | var subBucketIndex = GetSubBucketIndex(value, bucketIndex); | COMMENT |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 341 | /// Get a value that lies in the middle (rounded up) of the range of values equivalent the given value. | COMMENT |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 481 | COMMENT | |
| LOW | metrics/HdrHistogram/HistogramBase.cs | 501 | COMMENT | |
| LOW | metrics/HdrHistogram/IRecorder.cs | 1 | namespace HdrHistogram | COMMENT |
| LOW | metrics/HdrHistogram/IRecorder.cs | 21 | void RecordValueWithCount(long value, long count); | COMMENT |
| LOW | metrics/HdrHistogram/LongHistogram.cs | 21 | /// over value quantization behavior across the value range and the subsequent value resolution at any given level. | COMMENT |
| LOW | metrics/HdrHistogram/LongHistogram.cs | 41 | /// The histogram will be constructed to implicitly track(distinguish from 0) values as low as 1. | COMMENT |
| LOW | metrics/HdrHistogram/LongHistogram.cs | 61 | /// </param> | COMMENT |
| LOW | metrics/HdrHistogram/LongHistogram.cs | 81 | /// </param> | COMMENT |
| LOW | metrics/HdrHistogram/LongHistogram.cs | 101 | } | COMMENT |
| LOW | metrics/HdrHistogram/LongConcurrentHistogram.cs | 1 | using System; | COMMENT |
| LOW | metrics/HdrHistogram/LongConcurrentHistogram.cs | 21 | { | COMMENT |
| LOW | metrics/HdrHistogram/LongConcurrentHistogram.cs | 41 | : base(lowestTrackableValue, highestTrackableValue, numberOfSignificantValueDigits) | COMMENT |
| LOW | metrics/HdrHistogram/LongConcurrentHistogram.cs | 121 | } | COMMENT |
| LOW | metrics/HdrHistogram/LongConcurrentHistogram.cs | 141 | // Debug.Assert(CountsArrayLength == _inactiveCounts.Length); | COMMENT |
| LOW | metrics/HdrHistogram/Utilities/AtomicLongArray.cs | 61 | // The guarantee that the lazySet provides is that the data will be made visible in the correct order. I.e. | COMMENT |
| LOW | metrics/HdrHistogram/Utilities/AtomicLongArray.cs | 81 | // From http://msdn.microsoft.com/en-us/magazine/jj863136.aspx | COMMENT |
| LOW | metrics/HdrHistogram/Utilities/WriterReaderPhaser.cs | 21 | /// While a<see cref="WriterReaderPhaser"/> can be useful in multiple scenarios, a specific and common use case is t | COMMENT |
| LOW | metrics/HdrHistogram/Utilities/WriterReaderPhaser.cs | 61 | } | COMMENT |
| LOW | metrics/HdrHistogram/Utilities/WriterReaderPhaser.cs | 81 | /// </para> | COMMENT |
| LOW | metrics/HdrHistogram/Utilities/WriterReaderPhaser.cs | 121 | /// Exit from a critical section containing a read operation(relinquishes mutual exclusion against other <see cr | COMMENT |
| LOW | metrics/HdrHistogram/Utilities/WriterReaderPhaser.cs | 201 | /// <para> | COMMENT |
| LOW | …rics/HdrHistogram/Iteration/HistogramIterationValue.cs | 21 | public long ValueIteratedTo { get; private set; } | COMMENT |
| LOW | …rics/HdrHistogram/Iteration/HistogramIterationValue.cs | 41 | public long TotalCountToThisValue { get; private set; } | COMMENT |
| LOW | …er.migrate.rangeindex/ClusterRangeIndexMigrateTests.cs | 661 | COMMENT | |
| LOW | …er.migrate.rangeindex/ClusterRangeIndexMigrateTests.cs | 1341 | primary1, "RI.SET", [riKey, field, value], flags: CommandFlags.NoRedirect); | COMMENT |
| LOW | …eplicationTests/ClusterReplicationDisklessSyncTests.cs | 181 | // Re-attach sync session | COMMENT |
| LOW | …rnet.test.cluster.migrate/RedirectTests/BaseCommand.cs | 41 | public abstract bool ArrayResponse { get; } | COMMENT |
| LOW | …rnet.test.cluster.migrate/RedirectTests/BaseCommand.cs | 81 | /// <summary> | COMMENT |
| LOW | …rnet.test.cluster.migrate/RedirectTests/BaseCommand.cs | 101 | /// <summary> | COMMENT |
| LOW | …/cluster/Garnet.test.cluster/ClusterManagementTests.cs | 641 | // * connected to node 3 (master <-> replica) | COMMENT |
| LOW | …/cluster/Garnet.test.cluster/ClusterManagementTests.cs | 1221 | public async Task PrimaryUnavailableRecoveryAsync(ExceptionInjectionType faultType, bool replicaFailoverBeforeSh | COMMENT |
| LOW | test/cluster/Garnet.test.cluster/ClientClusterConfig.cs | 161 | /// Gets the endpoint of the current node. | COMMENT |
| LOW | test/cluster/Garnet.test.cluster/ClientClusterConfig.cs | 181 | /// <summary> | COMMENT |
| LOW | test/cluster/Garnet.test.cluster/ClientClusterConfig.cs | 301 | // 3. <flags> //TODO: hostname | COMMENT |
| 1325 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …standalone/Garnet.test.vectorset/RespVectorSetTests.cs | 1032 | // ── Section A: compile-time errors ───────────────────────────────── | COMMENT |
| MEDIUM | …standalone/Garnet.test.vectorset/RespVectorSetTests.cs | 1066 | // ── Section B: documented "skip silently" behavior ───────────────── | COMMENT |
| MEDIUM | …standalone/Garnet.test.vectorset/RespVectorSetTests.cs | 1169 | // ── Case 9 specifically: nested .year=2020 must be invisible ────── | COMMENT |
| MEDIUM | …standalone/Garnet.test.vectorset/RespVectorSetTests.cs | 1186 | // ── Case 3: top-level booleans coerce to 1 / 0 ──────────────────── | COMMENT |
| MEDIUM | …standalone/Garnet.test.vectorset/RespVectorSetTests.cs | 1213 | // ── Case 10: top-level string array still works with `in` ───────── | COMMENT |
| MEDIUM | test/docker-tests/validate_docker_images.py | 38 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/docker-tests/validate_docker_images.py | 40 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/docker-tests/validate_docker_images.py | 63 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/docker-tests/validate_docker_images.py | 65 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/docker-tests/validate_docker_images.py | 176 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/docker-tests/validate_docker_images.py | 178 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/docker-tests/validate_docker_images.py | 506 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/docker-tests/validate_docker_images.py | 508 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorManager.cs | 766 | // ── Inline filtered search path ───────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorManager.cs | 941 | // ── Inline-filtered search path ────────────────────────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorFilterExpression.cs | 116 | /// └────┴────┴────┴────────────────────────────┴───────────────────────────────────┘ | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorFilterExpression.cs | 117 | /// ◄─── header (8 bytes) ──────────────────────►◄─── payload (8 bytes) ───────────► | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorFilterExpression.cs | 177 | // ── Union payload at offset 8 (8 bytes) ───────────────────────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorFilterExpression.cs | 194 | // ── Flags helpers ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorFilterExpression.cs | 209 | // ── Discriminator helpers ──────────────────────────────────────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorFilterExpression.cs | 214 | // ── Factory methods ────────────────────────────────────────────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorManager.Filter.cs | 20 | // ── Buffer size constants ──────────────────────────────────────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorManager.Filter.cs | 41 | // ──────────────── ─────── ────── ───────────────────────────────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorManager.Filter.cs | 134 | // ── Compile ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorManager.Filter.cs | 151 | // ── Collect unique selectors ────────────────────────────── | COMMENT |
| MEDIUM | libs/server/Resp/Vector/VectorManager.Filter.cs | 222 | // ── Inline filter callback infrastructure ───── | COMMENT |
| MEDIUM | …/storage/Tsavorite/cs/test/test.hlog/LogRecordTests.cs | 276 | // ── Max inline key/value size limit tests ───────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 86 | // ── KeyLength field (low kKeyLengthBits bits after FillerWords) ───────────── | COMMENT |
| MEDIUM⚡ | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 92 | // ── ValueLength field (low kValueLengthBits bits after KeyLength) ─────────── | COMMENT |
| MEDIUM⚡ | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 102 | // ── Namespace byte (byte 7 of word) ──────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 519 | // ── Key and Value field info ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 53 | // ── Indicator bits (bits 0-5) ────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 68 | // ── FillerWords field (bits 6-13, 8 bits) ────────────────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 136 | // ── Indicator-bit accessors ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 198 | // ── FillerWords accessor ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 218 | // ── Optional/object size helper ──────────────────────────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 242 | // ── Field accessors via ulong word bit manipulation ──────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 333 | // ── RecordLength derivation (no longer stored) ───────────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 397 | // ── Filler helpers ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 556 | // ── Initialize ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 658 | // ── ToString ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …cator/ObjectSerialization/ObjectLogFilePositionInfo.cs | 24 | // ── Flag bits in the top 4 bits of word (bits 60-63) ───────────────────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1046 | // Step 1: Clean up and create source HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1053 | // Step 2: Dump the HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1057 | // Step 3: Corrupt the dump by flipping a bit (avoiding the last 8 bytes which are CRC) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1065 | // Step 6: Verify key was not created | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1081 | // Step 1: Clean up and create source HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1088 | // Step 2: Dump the HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1092 | // Step 3: Zero out the last 8 bytes (CRC64 checksum) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1099 | // Step 6: Verify key was not created | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1115 | // Step 1: Clean up and create sparse HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1122 | // Step 2: Dump and parse the structure | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1126 | // Step 3: Extract and corrupt the HLL value | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1133 | // Step 4: Reconstruct the dump with RDB encoding | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1167 | // Step 1: Clean up and create sparse HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1173 | // Step 2: Dump and parse the structure | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1177 | // Step 3: Extract the HLL value and verify it's sparse | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1181 | // Step 4: Corrupt the sparse stream length (bytes 16-17) to exceed actual size | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1204 | // Step 1: Clean up and create minimal sparse HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1210 | // Step 2: Dump and parse the structure | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1214 | // Step 3: Extract the HLL value and verify it's sparse | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1218 | // Step 4: Corrupt the first RLE opcode (offset 18) to create coverage gap | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1250 | // Step 2: Clean up and create sparse HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1258 | // Step 3: Dump and parse the structure | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1262 | // Step 4: Extract and corrupt the sparse stream length | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1267 | // Step 5: Reconstruct the dump with RDB encoding (CRC will be zeros) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1300 | // Step 1: Create sparse HLL with minimal elements | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1307 | // Step 2: Dump and verify sparse encoding (type byte = 0 at offset 3) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1312 | // Step 3: Create dense HLL by adding elements until sparse->dense conversion | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1328 | // Step 4: Verify dense encoding (type byte = 1 at offset 3) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1332 | // Step 5: Verify dense representation is larger | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1353 | // Step 1: Test 6-bit encoding | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1360 | // Step 2: Test 14-bit encoding | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1368 | // Step 3: Test 32-bit encoding | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1402 | // Step 1: Create valid sparse HLL and test data | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1412 | // Step 2: Dump and corrupt the SparseRLESize field | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1451 | // Step 4: RESTORE should succeed (CRC is valid, basic validation passes) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1455 | // Step 5: Verify operations fail due to structural validation | COMMENT |
| LOW | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1152 | // Step 7: Verify key was not created | COMMENT |
| LOW | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1427 | // Step 3: Reconstruct dump with valid CRC using Garnet.common.Crc64 | COMMENT |
| LOW | website/docs/azure/quickstart.md | 19 | ## Step 1: Create an Azure Cosmos DB Garnet Cache | COMMENT |
| LOW | website/docs/azure/quickstart.md | 43 | ## Step 2: Configure Data Access with RBAC | COMMENT |
| LOW | website/docs/azure/quickstart.md | 106 | ## Step 3: Set Up Network Access | COMMENT |
| LOW | website/docs/azure/quickstart.md | 120 | ## Step 4: Connect and Test | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 719 | ### Step 1: Type discrimination for RangeIndex records | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 766 | ### Step 2: Add RESP commands to the parser | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 836 | ### Step 3: Add command dispatch in `RespServerSession` | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 864 | ### Step 4: Implement RESP command handlers | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 1050 | ### Step 5: Add `IGarnetApi` and `GarnetApi` interface methods | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 1121 | ### Step 6: Implement Storage Session layer (`RangeIndexOps.cs`) | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 1242 | ### Step 7: Implement `RangeIndexManager` (partial class) | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 1504 | ### Step 8: Wire into Main Store RMW callbacks | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 1662 | ### Step 9: Wire into Main Store Read Methods | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 1694 | ### Step 10: Delete handling via `DisposeRecord` | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 1727 | ### Step 11: Build and integrate the native Bf-Tree library | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 2212 | ### Step 12: Add `RangeIndexManager` to `FunctionsState` | COMMENT |
| LOW | website/docs/dev/range-index-resp-api.md | 2243 | ### Step 13: Checkpoint & Recovery | COMMENT |
| LOW | libs/server/AOF/AofProcessor.cs | 224 | /// NOTE: This method is shared between recover replay and replication replay | COMMENT |
| LOW | …ge/Tsavorite/cs/test/test.recovery/LargeObjectTests.cs | 39 | // Step 1: Create and populate store. | COMMENT |
| LOW | …ge/Tsavorite/cs/test/test.recovery/LargeObjectTests.cs | 64 | // Step 1: Create and recover store. | COMMENT |
| LOW | …ge/Tsavorite/cs/test/test.recovery/LargeObjectTests.cs | 127 | // Step 1: Create and populate store. | COMMENT |
| LOW | …ge/Tsavorite/cs/test/test.recovery/LargeObjectTests.cs | 153 | // Step 1: Create and recover store. | COMMENT |
| 19 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | …standalone/Garnet.test.vectorset/RespVectorSetTests.cs | 46 | server.Provider.StoreWrapper.DefaultDatabase.VectorManager.AllocateTestContexts(preAllocatedContexts); | CODE |
| CRITICAL | …ication/PrimaryOps/AofOperations/AofSyncDriverStore.cs | 28 | var truncateUntilAddress = store.clusterProvider.storeWrapper.appendOnlyFile.Log.UnsafeGetReadOnlyAddres | CODE |
| CRITICAL | libs/server/Resp/Parser/RespCommandHashLookup.cs | 315 | var crc = (uint)System.Runtime.Intrinsics.Arm.Crc32.Arm64.ComputeCrc32C(0U, word0); | CODE |
| CRITICAL | libs/server/Resp/Parser/RespCommandHashLookup.cs | 316 | return System.Runtime.Intrinsics.Arm.Crc32.ComputeCrc32C(crc, (uint)length); | CODE |
| CRITICAL | libs/server/Resp/Parser/RespCommandHashLookup.cs | 338 | var crc = (uint)System.Runtime.Intrinsics.Arm.Crc32.Arm64.ComputeCrc32C(0U, word0); | CODE |
| CRITICAL | libs/server/Resp/Parser/RespCommandHashLookup.cs | 339 | return System.Runtime.Intrinsics.Arm.Crc32.ComputeCrc32C(crc, (uint)name.Length); | CODE |
| CRITICAL | libs/server/Servers/MetricsApi.cs | 87 | return provider.StoreWrapper.monitor.GlobalMetrics.globalLatencyMetrics.GetLatencyMetrics(latencyMetricsType | CODE |
| CRITICAL | libs/storage/Tsavorite/cs/test/test.hlog/LogTests.cs | 152 | ClassicAssert.IsTrue(asyncMemoryOwnerIter.Current.entry.Memory.Span.ToArray().Take(expectedData.Leng | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1046 | // Step 1: Clean up and create source HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1053 | // Step 2: Dump the HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1057 | // Step 3: Corrupt the dump by flipping a bit (avoiding the last 8 bytes which are CRC) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1065 | // Step 6: Verify key was not created | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1081 | // Step 1: Clean up and create source HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1088 | // Step 2: Dump the HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1092 | // Step 3: Zero out the last 8 bytes (CRC64 checksum) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1099 | // Step 6: Verify key was not created | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1115 | // Step 1: Clean up and create sparse HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1122 | // Step 2: Dump and parse the structure | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1126 | // Step 3: Extract and corrupt the HLL value | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1133 | // Step 4: Reconstruct the dump with RDB encoding | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1167 | // Step 1: Clean up and create sparse HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1173 | // Step 2: Dump and parse the structure | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1177 | // Step 3: Extract the HLL value and verify it's sparse | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1181 | // Step 4: Corrupt the sparse stream length (bytes 16-17) to exceed actual size | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1204 | // Step 1: Clean up and create minimal sparse HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1210 | // Step 2: Dump and parse the structure | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1214 | // Step 3: Extract the HLL value and verify it's sparse | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1218 | // Step 4: Corrupt the first RLE opcode (offset 18) to create coverage gap | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1250 | // Step 2: Clean up and create sparse HLL | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1258 | // Step 3: Dump and parse the structure | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1262 | // Step 4: Extract and corrupt the sparse stream length | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1267 | // Step 5: Reconstruct the dump with RDB encoding (CRC will be zeros) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1300 | // Step 1: Create sparse HLL with minimal elements | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1307 | // Step 2: Dump and verify sparse encoding (type byte = 0 at offset 3) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1312 | // Step 3: Create dense HLL by adding elements until sparse->dense conversion | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1328 | // Step 4: Verify dense encoding (type byte = 1 at offset 3) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1332 | // Step 5: Verify dense representation is larger | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1353 | // Step 1: Test 6-bit encoding | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1360 | // Step 2: Test 14-bit encoding | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1368 | // Step 3: Test 32-bit encoding | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1402 | // Step 1: Create valid sparse HLL and test data | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1412 | // Step 2: Dump and corrupt the SparseRLESize field | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1451 | // Step 4: RESTORE should succeed (CRC is valid, basic validation passes) | COMMENT |
| LOW⚡ | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1455 | // Step 5: Verify operations fail due to structural validation | COMMENT |
| LOW | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1152 | // Step 7: Verify key was not created | COMMENT |
| LOW | …andalone/Garnet.test.complexstring/HyperLogLogTests.cs | 1427 | // Step 3: Reconstruct dump with valid CRC using Garnet.common.Crc64 | COMMENT |
| LOW | …ge/Tsavorite/cs/test/test.recovery/LargeObjectTests.cs | 39 | // Step 1: Create and populate store. | COMMENT |
| LOW | …ge/Tsavorite/cs/test/test.recovery/LargeObjectTests.cs | 64 | // Step 1: Create and recover store. | COMMENT |
| LOW | …ge/Tsavorite/cs/test/test.recovery/LargeObjectTests.cs | 127 | // Step 1: Create and populate store. | COMMENT |
| LOW | …ge/Tsavorite/cs/test/test.recovery/LargeObjectTests.cs | 153 | // Step 1: Create and recover store. | COMMENT |
| LOW⚡ | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 494 | // Step 1: Write the new record's RecordInfo (Invalid set) FIRST. | COMMENT |
| LOW⚡ | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 499 | // Step 2: Build and write the new record's RDH (inline keys/values, no optionals, KeyLength=0, ValueLength | COMMENT |
| LOW⚡ | …ge/Tsavorite/cs/src/core/Allocator/RecordDataHeader.cs | 515 | // Step 3: Caller writes RecordSplitRetainFillerWords into this record's FillerWords (atomic update of the o | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/cluster/Garnet.test.cluster/ClusterTestUtils.cs | 899 | public const string certPassword = "placeholder"; | CODE |
| LOW | test/standalone/Garnet.test/TestUtils.cs | 146 | public const string certPassword = "placeholder"; | CODE |
| LOW | test/standalone/Garnet.test/GarnetServerConfigTests.cs | 266 | ClassicAssert.AreEqual("placeholder", options.CertPassword); | CODE |
| LOW | test/standalone/Garnet.test/GarnetServerConfigTests.cs | 285 | ClassicAssert.AreEqual("placeholder", options.CertPassword); | CODE |
| LOW | …/Garnet.test.acl/Resp/ACL/AclConfigurationFileTests.cs | 342 | var updatePass = "placeholder"; | CODE |
| LOW | playground/GarnetClientStress/StressTestUtil.cs | 41 | ClientCertificates = [GetClientCertificate("testcert.pfx", "placeholder")], | CODE |
| LOW | samples/GarnetClientSample/GarnetClientSamples.cs | 265 | ClientCertificates = [GetClientCertificate("testcert.pfx", "placeholder")], | CODE |
| LOW | samples/ETag/Caching.cs | 182 | const string loremIpsum = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incidi | CODE |
| LOW | samples/ETag/Caching.cs | 182 | const string loremIpsum = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incidi | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | libs/cluster/Server/Failover/ReplicaFailoverSession.cs | 338 | //TODO: implement voting | COMMENT |
| LOW | libs/server/Resp/Vector/RespServerSessionVectors.cs | 1442 | // TODO: implement! | COMMENT |
| LOW | libs/server/Resp/Vector/RespServerSessionVectors.cs | 1609 | // TODO: implement! | COMMENT |
| LOW | libs/server/Resp/Vector/RespServerSessionVectors.cs | 1625 | // TODO: implement! | COMMENT |
| LOW | libs/server/Resp/Vector/RespServerSessionVectors.cs | 1641 | // TODO: implement! | COMMENT |
| LOW | libs/server/Resp/Vector/RespServerSessionVectors.cs | 1688 | // TODO: implement! | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | metrics/HdrHistogram/Utilities/AtomicLongArray.cs | 15 | /// This is a basic implementation/port, of just the methods that are required internally. | COMMENT |
| MEDIUM | .github/workflows/codeql.yml | 51 | # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how | COMMENT |
| LOW | .azure/pipelines/azure-pipelines-mirror.yml | 43 | # Push the updated main branch to Azure DevOps - make sure to get the config files each push so compliant with sec | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test/standalone/Garnet.test/RespGetLowMemoryTests.cs | 139 | [TestCase(3_000)] // Definitely completes async | CODE |
| MEDIUM | libs/server/Objects/SortedSetGeo/GeoHash.cs | 185 | // check we can (as of .NET 8) to allow largest possible set of CPUs to utilize accelerated PDEP and PEXT co | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/docker-tests/validate_docker_images.py | 124 | CODE | |
| LOW | test/docker-tests/validate_docker_images.py | 201 | CODE | |
| LOW | test/docker-tests/validate_docker_images.py | 237 | CODE | |
| LOW | test/docker-tests/validate_docker_images.py | 286 | CODE | |
| LOW | test/docker-tests/validate_docker_images.py | 351 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/docker-tests/validate_docker_images.py | 233 | except Exception as e: | CODE |
| LOW | test/docker-tests/validate_docker_images.py | 282 | except Exception as e: | CODE |
| LOW | test/docker-tests/validate_docker_images.py | 345 | except Exception as e: | CODE |
| LOW | test/docker-tests/validate_docker_images.py | 411 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …age/Tsavorite/cs/benchmark/Device.benchmark/Program.cs | 14 | /// Example usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/docker-tests/validate_docker_images.py | 34 | CODE |