Commit 3fd4662
Optimize ClinicalAttributeMapper sample ID queries for ClickHouse JDBC performance (#11703)
Apply ArrayTypeHandler optimization strategy to whereSample include, following
the same approach used in PatientMapper (commit 2e2ec22). This significantly
improves performance with ClickHouse JDBC connections by reducing parameter overhead.
Changes:
- Replace foreach loops in whereSample with ArrayTypeHandler for both single-study
and multi-study queries
- Use SqlUtils.combineStudyAndPatientIds() for multi-study scenarios with
CONCAT-based unique key matching
- Optimize getClinicalAttributeCountsBySampleIds query performance through
updated whereSample include
This reduces prepared statement parameters from potentially thousands to single
array parameters, maintaining security through proper parameter binding.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Claude <[email protected]>1 parent c284181 commit 3fd4662
File tree
1 file changed
+7
-4
lines changed- src/main/resources/org/cbioportal/legacy/persistence/mybatis
1 file changed
+7
-4
lines changedLines changed: 7 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
40 | | - | |
41 | | - | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
42 | 43 | | |
43 | 44 | | |
44 | | - | |
45 | | - | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
46 | 49 | | |
47 | 50 | | |
48 | 51 | | |
| |||
0 commit comments