Commit 78f6133
authored
Fix data race in InlineStats (elastic#131370)
Although blocks/vectors are immutable and safe to share between threads,
their references are currently not thread-safe, which can lead to data
races. Previously, blocks/vectors were exclusively owned by a single
thread, but this is no longer always the case with InlineJoin. We should
consider switching to AbstractRefCounted, which is thread-safe, and
benchmark it with many-fields use cases to ensure there is no
performance regression. As a temporary solution, this change clones the
values block in InlineJoin until thread-safe blocks/vectors are
available.1 parent 280793d commit 78f6133
File tree
1 file changed
+18
-1
lines changed- x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/operator
1 file changed
+18
-1
lines changedLines changed: 18 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
| |||
44 | 45 | | |
45 | 46 | | |
46 | 47 | | |
47 | | - | |
48 | 48 | | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
49 | 61 | | |
50 | 62 | | |
51 | 63 | | |
| |||
67 | 79 | | |
68 | 80 | | |
69 | 81 | | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
70 | 87 | | |
71 | 88 | | |
72 | 89 | | |
| |||
0 commit comments