Test Date: 2026-06-04 16:16:36 UTC Git Commit: 54e9559ae8f507090941f21e6ccd567ddd6f7423 Branch: main Workflow Run: 26964062416
This performance test measures the execution time of all implemented VFB queries organized by functionality:
- Term Info: Comprehensive term information retrieval with preview data
- NeuronsPartHere: Neurons with parts overlapping anatomical regions
- NeuronsSynaptic: Neurons with synapses in a region
- NeuronsPresynapticHere: Neurons with presynaptic terminals in a region
- NeuronsPostsynapticHere: Neurons with postsynaptic terminals in a region
- ComponentsOf: Anatomical components of a structure
- PartsOf: Parts of an anatomical structure
- SubclassesOf: Subclasses of anatomical terms (can be very slow for complex terms)
- NeuronClassesFasciculatingHere: Neurons fasciculating with tracts
- TractsNervesInnervatingHere: Tracts/nerves innervating neuropils
- LineageClonesIn: Lineage clones in neuropils (complex OWL reasoning)
- ImagesNeurons: Neuron images in anatomical regions
- ImagesThatDevelopFrom: Developmental lineage images
- epFrag: Expression pattern fragments
- ListAllAvailableImages: All available images for a term
- NeuronNeuronConnectivity: Neuron-to-neuron connectivity
- NeuronRegionConnectivity: Neuron-to-region connectivity
- NeuronInputsTo: Individual neuron inputs
- SimilarMorphologyTo: NBLAST morphological similarity
- SimilarMorphologyToPartOf: NBLAST to expression patterns (NBLASTexp)
- SimilarMorphologyToPartOfexp: Reverse NBLASTexp
- SimilarMorphologyToNB: NeuronBridge matches
- SimilarMorphologyToNBexp: NeuronBridge for expression patterns
- ExpressionOverlapsHere: Expression patterns overlapping regions
- anatScRNAseqQuery: scRNAseq clusters in anatomy
- clusterExpression: Genes expressed in clusters
- expressionCluster: Clusters expressing genes
- scRNAdatasetData: Cluster data from scRNAseq datasets
- PaintedDomains: Template painted anatomy domains
- DatasetImages: Images in datasets
- AllAlignedImages: Images aligned to templates
- AlignedDatasets: Datasets aligned to templates
- AllDatasets: All available datasets
- TermsForPub: Terms referencing publications
- TransgeneExpressionHere: Transgene expression patterns in regions
- Fast queries: < 1 second (SOLR lookups)
- Medium queries: < 3 seconds (Owlery + SOLR)
- Slow queries: < 10 seconds (Neo4j + complex processing)
- Very Slow queries: < 31 seconds (Complex OWL reasoning - over 30 seconds)
============================= test session starts ==============================
platform linux -- Python 3.10.20, pytest-9.0.3, pluggy-1.6.0 -- /opt/hostedtoolcache/Python/3.10.20/x64/bin/python
cachedir: .pytest_cache
rootdir: /home/runner/work/VFBquery/VFBquery
configfile: pyproject.toml
plugins: xdist-3.8.0
created: 4/4 workers
4 workers [18 items]
scheduling tests via LoadScheduling
src/test/test_query_performance.py::QueryPerformanceTest::test_05_tract_lineage_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_01_term_info_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_03_synaptic_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_06_instance_queries
[gw3] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_06_instance_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_07_connectivity_queries
[gw0] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_01_term_info_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_02_neuron_part_queries
[gw2] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_05_tract_lineage_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_05b_image_queries
[gw0] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_02_neuron_part_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_07b_upstream_class_connectivity
[gw3] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_07_connectivity_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_07b_downstream_class_connectivity
[gw0] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_07b_upstream_class_connectivity
src/test/test_query_performance.py::QueryPerformanceTest::test_08_similarity_queries
[gw3] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_07b_downstream_class_connectivity
src/test/test_query_performance.py::QueryPerformanceTest::test_09_neuron_input_queries
[gw1] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_03_synaptic_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_04_anatomy_hierarchy_queries
[gw0] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_08_similarity_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_10_expression_queries
[gw0] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_10_expression_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_13_dataset_template_queries
[gw1] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_04_anatomy_hierarchy_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_12_nblast_queries
[gw2] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_05b_image_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_07c_cross_dataset_connectivity
[gw3] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_09_neuron_input_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_11_transcriptomics_queries
[gw2] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_07c_cross_dataset_connectivity
[gw1] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_12_nblast_queries
[gw3] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_11_transcriptomics_queries
[gw0] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_13_dataset_template_queries
src/test/test_query_performance.py::QueryPerformanceTest::test_14_publication_transgene_queries
[gw0] PASSED src/test/test_query_performance.py::QueryPerformanceTest::test_14_publication_transgene_queries
============================= 18 passed in 31.52s ==============================
=== LEGACY RETRY ATTEMPT ===
test_term_info_performance (src.test.term_info_queries_test.TermInfoQueriesTest)
Performance test for specific term info queries. ... ok
----------------------------------------------------------------------
Ran 1 test in 3.862s
OK
VFBquery functions patched with caching support
VFBquery: SOLR caching enabled by default (3-month TTL)
Disable with: export VFBQUERY_CACHE_ENABLED=false
==================================================
Performance Test Results:
==================================================
FBbt_00003748 query took: 1.9059 seconds
VFB_00101567 query took: 1.9558 seconds
Total time for both queries: 3.8617 seconds
Performance Level: 🟠 Acceptable (3-6 seconds)
==================================================
Performance test completed successfully!
============================= test session starts ==============================
platform linux -- Python 3.10.20, pytest-9.0.3, pluggy-1.6.0 -- /opt/hostedtoolcache/Python/3.10.20/x64/bin/python
cachedir: .pytest_cache
rootdir: /home/runner/work/VFBquery/VFBquery
configfile: pyproject.toml
plugins: xdist-3.8.0
created: 8/8 workers
8 workers [55 items]
scheduling tests via LoadScheduling
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_returns_results
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_headers_present
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_direction_upstream
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDataFrame::test_returns_dataframe
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDataFrame::test_limit_respected
src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDict::test_headers_present
src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDict::test_returns_results
src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDataFrame::test_returns_dataframe
[gw6] PASSED src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDict::test_headers_present
src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDict::test_limit_respected
[gw1] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_headers_present
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_limit_respected
[gw0] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_returns_results
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_row_has_expected_keys
[gw4] PASSED src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDict::test_returns_results
src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDict::test_row_has_expected_keys
[gw6] PASSED src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDict::test_limit_respected
src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDataFrame::test_limit_respected
[gw1] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_limit_respected
src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivitySchema::test_schema_generation
[gw7] PASSED src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDataFrame::test_returns_dataframe
src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDataFrame::test_dataframe_has_expected_columns
[gw3] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDataFrame::test_returns_dataframe
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDataFrame::test_dataframe_has_expected_columns
[gw5] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDataFrame::test_limit_respected
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivitySchema::test_schema_generation
[gw5] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivitySchema::test_schema_generation
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDataFrame::test_dataframe_has_expected_columns
[gw4] PASSED src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDict::test_row_has_expected_keys
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_row_has_expected_keys
[gw0] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_row_has_expected_keys
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_returns_results
[gw7] PASSED src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDataFrame::test_dataframe_has_expected_columns
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_empty_class_returns_zero
[gw6] PASSED src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivityDataFrame::test_limit_respected
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_headers_present
[gw2] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_direction_upstream
src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_direction_downstream
[gw3] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDataFrame::test_dataframe_has_expected_columns
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDataFrame::test_returns_dataframe
[gw2] PASSED src/test/test_neuron_neuron_connectivity.py::TestNeuronNeuronConnectivityDict::test_direction_downstream
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivitySchema::test_schema_generation
[gw2] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivitySchema::test_schema_generation
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_row_has_expected_keys
[gw7] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_empty_class_returns_zero
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityHierarchyRollup::test_total_n_is_constant_across_rows
[gw1] PASSED src/test/test_neuron_region_connectivity.py::TestNeuronRegionConnectivitySchema::test_schema_generation
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_limit_respected
[gw3] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDataFrame::test_returns_dataframe
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_returns_results
[gw5] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDataFrame::test_dataframe_has_expected_columns
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDataFrame::test_limit_respected
[gw4] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_row_has_expected_keys
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDataFrame::test_empty_class_returns_empty_dataframe
[gw2] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_row_has_expected_keys
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_headers_present
[gw4] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDataFrame::test_empty_class_returns_empty_dataframe
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDataFrame::test_limit_respected
[gw6] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_headers_present
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityHierarchyRollup::test_no_rows_above_neuron_root
[gw0] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_returns_results
src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityHierarchyRollup::test_parent_class_appears_with_sensible_counts
[gw7] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityHierarchyRollup::test_total_n_is_constant_across_rows
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_limit_respected
[gw1] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDict::test_limit_respected
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_empty_class_returns_zero
[gw1] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_empty_class_returns_zero
src/test/test_vfb_connectivity.py::TestListConnectomeDatasets::test_returns_datasets
[gw1] PASSED src/test/test_vfb_connectivity.py::TestListConnectomeDatasets::test_returns_datasets
src/test/test_vfb_connectivity.py::TestListConnectomeDatasets::test_datasets_have_label_and_symbol
[gw1] PASSED src/test/test_vfb_connectivity.py::TestListConnectomeDatasets::test_datasets_have_label_and_symbol
src/test/test_vfb_connectivity.py::TestListConnectomeDatasets::test_hemibrain_present
[gw1] PASSED src/test/test_vfb_connectivity.py::TestListConnectomeDatasets::test_hemibrain_present
src/test/test_vfb_connectivity.py::TestListConnectomeDatasets::test_every_dataset_has_symbol
[gw1] PASSED src/test/test_vfb_connectivity.py::TestListConnectomeDatasets::test_every_dataset_has_symbol
src/test/test_vfb_connectivity.py::TestQueryConnectivityKnown::test_known_connection_both_types
[gw1] PASSED src/test/test_vfb_connectivity.py::TestQueryConnectivityKnown::test_known_connection_both_types
src/test/test_vfb_connectivity.py::TestQueryConnectivityKnown::test_both_types_subset_of_either_alone
[gw1] PASSED src/test/test_vfb_connectivity.py::TestQueryConnectivityKnown::test_both_types_subset_of_either_alone
src/test/test_vfb_connectivity.py::TestQueryConnectivityGroupByClass::test_group_by_class
[gw1] PASSED src/test/test_vfb_connectivity.py::TestQueryConnectivityGroupByClass::test_group_by_class
src/test/test_vfb_connectivity.py::TestQueryConnectivityWeightFiltering::test_higher_weight_fewer_results
[gw1] PASSED src/test/test_vfb_connectivity.py::TestQueryConnectivityWeightFiltering::test_higher_weight_fewer_results
src/test/test_vfb_connectivity.py::TestQueryConnectivityExcludeDbs::test_exclude_all_returns_no_results
[gw1] PASSED src/test/test_vfb_connectivity.py::TestQueryConnectivityExcludeDbs::test_exclude_all_returns_no_results
src/test/test_vfb_connectivity.py::TestQueryConnectivityEdgeCases::test_nonexistent_type_returns_warning
[gw1] PASSED src/test/test_vfb_connectivity.py::TestQueryConnectivityEdgeCases::test_nonexistent_type_returns_warning
src/test/test_vfb_connectivity.py::TestQueryConnectivityEdgeCases::test_no_types_raises_error
[gw1] PASSED src/test/test_vfb_connectivity.py::TestQueryConnectivityEdgeCases::test_no_types_raises_error
[gw3] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_returns_results
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDataFrame::test_returns_dataframe
[gw5] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityDataFrame::test_limit_respected
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDataFrame::test_dataframe_has_expected_columns
[gw2] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_headers_present
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDataFrame::test_empty_class_returns_empty_dataframe
[gw4] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDataFrame::test_limit_respected
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityHierarchyRollup::test_parent_class_appears_with_sensible_counts
[gw2] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDataFrame::test_empty_class_returns_empty_dataframe
[gw0] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityHierarchyRollup::test_parent_class_appears_with_sensible_counts
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityHierarchyRollup::test_no_rows_above_neuron_root
[gw7] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDict::test_limit_respected
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivitySchema::test_schema_generation
[gw7] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivitySchema::test_schema_generation
[gw6] PASSED src/test/test_upstream_class_connectivity.py::TestUpstreamClassConnectivityHierarchyRollup::test_no_rows_above_neuron_root
src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityHierarchyRollup::test_total_n_is_constant_across_rows
[gw5] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDataFrame::test_dataframe_has_expected_columns
[gw3] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityDataFrame::test_returns_dataframe
[gw4] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityHierarchyRollup::test_parent_class_appears_with_sensible_counts
[gw0] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityHierarchyRollup::test_no_rows_above_neuron_root
[gw6] PASSED src/test/test_downstream_class_connectivity.py::TestDownstreamClassConnectivityHierarchyRollup::test_total_n_is_constant_across_rows
======================== 55 passed in 327.92s (0:05:27) ========================
✅ Test Status: Performance tests completed
- Total Tests: 74
- Passed: 74 ✅
- Failed: 0 ❌
- Errors: 0
⚠️
| Query | Duration | Status |
|---|
🎉 Result: All performance thresholds met!
Track performance trends across commits:
Last updated: 2026-06-04 16:16:36 UTC