<freeStyleBuild _class='hudson.model.FreeStyleBuild'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.TimerTrigger$TimerTriggerCause'><shortDescription>Started by timer</shortDescription></cause></action><action></action><action></action><action></action><action></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>11841230</buildableDurationMillis><buildableTimeMillis>11841230</buildableTimeMillis><buildingDurationMillis>31331570</buildingDurationMillis><executingTimeMillis>31331570</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmain _class='hudson.plugins.git.util.Build'><buildNumber>1758</buildNumber><marked><SHA1>af21fef102425e2c1b8240634f4eec13eae1e627</SHA1><branch><SHA1>af21fef102425e2c1b8240634f4eec13eae1e627</SHA1><name>refs/remotes/origin/main</name></branch></marked><revision><SHA1>af21fef102425e2c1b8240634f4eec13eae1e627</SHA1><branch><SHA1>af21fef102425e2c1b8240634f4eec13eae1e627</SHA1><name>refs/remotes/origin/main</name></branch></revision></refsremotesoriginmain></buildsByBranchName><lastBuiltRevision><SHA1>af21fef102425e2c1b8240634f4eec13eae1e627</SHA1><branch><SHA1>af21fef102425e2c1b8240634f4eec13eae1e627</SHA1><name>refs/remotes/origin/main</name></branch></lastBuiltRevision><remoteUrl>https://gitbox.apache.org/repos/asf/solr.git</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='hudson.plugins.jira.JiraBuildAction'></action><action _class='hudson.tasks.junit.TestResultAction'><failCount>22</failCount><skipCount>2430</skipCount><totalCount>8331</totalCount><urlName>testReport</urlName></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#1758</displayName><duration>31331570</duration><estimatedDuration>15668984</estimatedDuration><executor></executor><fullDisplayName>Solr » Solr-NightlyTests-main #1758</fullDisplayName><id>1758</id><inProgress>true</inProgress><keepLog>false</keepLog><number>1758</number><queueId>8537487</queueId><result>UNSTABLE</result><timestamp>1774811961259</timestamp><url>https://ci-builds.apache.org/job/Solr/job/Solr-NightlyTests-main/1758/</url><builtOn>lucene-solr-4</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>solr/core/src/java/org/apache/solr/metrics/SolrMetricsContext.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/handler/admin/InfoHandler.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/update/MaxSizeAutoCommitTest.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/core/CoreContainer.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/blockcache/Metrics.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/cloud/OverseerTaskProcessor.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/TestSolrCachePerf.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/metrics/SolrMetricProducer.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/TestCaffeineCache.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/cloud/Overseer.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/ThinCache.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/handler/admin/InfoHandlerTest.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/metrics/SolrCoreMetricManager.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/handler/RequestHandlerBase.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/BasicFunctionalityTest.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/update/DirectUpdateHandler2.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/update/UpdateLog.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/core/ZkContainer.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/security/PKIAuthenticationPlugin.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/update/SolrIndexWriter.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/cloud/TestAuthenticationFramework.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/security/MockAuthenticationPlugin.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/handler/component/SuggestComponent.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/util/stats/OtelInstrumentedExecutorService.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/search/stats/StatsCache.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/update/UpdateHandler.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/blockcache/BufferStoreTest.java</affectedPath><affectedPath>solr/modules/jwt-auth/src/java/org/apache/solr/security/jwt/JWTAuthPlugin.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/TestSolrFieldCacheBean.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/search/SolrFieldCacheBean.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/cloud/MissingSegmentRecoveryTest.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/util/stats/OtelInstrumentedExecutorServiceTest.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/SolrInfoBeanTest.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/metrics/otel/instruments/AttributedInstrumentFactory.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/handler/SchemaHandler.java</affectedPath><affectedPath>changelog/unreleased/SOLR-17857-trackSolrMetricsContext.yml</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/core/PluginBag.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/TestThinCache.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/security/AuditLoggerPlugin.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/security/CertAuthPluginTest.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/handler/admin/CoreAdminHandler.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/security/BasicAuthPlugin.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/core/SolrCore.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/handler/component/SearchHandler.java</affectedPath><affectedPath>solr/solrj/src/java/org/apache/solr/common/util/ObjectReleaseTracker.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/security/MultiAuthPlugin.java</affectedPath><affectedPath>solr/core/src/java/org/apache/solr/search/CaffeineCache.java</affectedPath><commitId>4f17248195601f8eeca1651f77de46572d851cdb</commitId><timestamp>1774731508000</timestamp><author><absoluteUrl>https://ci-builds.apache.org/user/github</absoluteUrl><fullName>github</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>SOLR-17857: SolrMetricsContext is now reliably closed (#4226)

SolrMetricsContext is now AutoCloseable; renamed unregister() to close().
Ensure it is closed exactly once, fixing double-close of OTEL metrics
that yielded warnings.  Uses ObjectReleaseTracker.

Key changes:
- PluginBag tracks all plugins (V1, V2, and defaults) in allPlugins,
  ensuring proper cleanup during replacement and shutdown.
- RequestHandlerBase asserts that initializeMetrics() is called before
  handling requests, preventing memory leaks from untracked contexts.
- InfoHandler and SchemaHandler initialize metrics on dynamically-created
  sub-handlers, registering them for cleanup.
- SolrFieldCacheBean: fix recursive close; removed from core metrics.
- HighlightComponent: fix unclosed context due to improper
  default/aliasing in SolrCore.loadSearchComponents.
- CoreContainer.shutdown: shut down coreZkRegister executor early so
  in-progress async reloads (triggered by ZK config watchers) complete
  before cores are closed.
- ObjectReleaseTracker: add a way to inspect contents.  Sadly one test
  needs to ignore certain unclosed contexts: MissingSegmentRecoveryTest


Co-authored-by: Houston Putman &lt;houston@apache.org&gt;
Co-authored-by: Claude Opus 4.6 &lt;noreply@anthropic.com&gt;
</comment><date>2026-03-28 16:58:28 -0400</date><id>4f17248195601f8eeca1651f77de46572d851cdb</id><msg>SOLR-17857: SolrMetricsContext is now reliably closed (#4226)</msg><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/handler/SchemaHandler.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/update/DirectUpdateHandler2.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/ThinCache.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/security/MockAuthenticationPlugin.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/core/ZkContainer.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/handler/admin/InfoHandler.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/TestCaffeineCache.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/core/PluginBag.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/handler/admin/InfoHandlerTest.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/metrics/SolrCoreMetricManager.java</file></path><path><editType>add</editType><file>changelog/unreleased/SOLR-17857-trackSolrMetricsContext.yml</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/util/stats/OtelInstrumentedExecutorService.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/BasicFunctionalityTest.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/security/BasicAuthPlugin.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/update/SolrIndexWriter.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/handler/component/SearchHandler.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/update/UpdateLog.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/SolrInfoBeanTest.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/blockcache/Metrics.java</file></path><path><editType>edit</editType><file>solr/solrj/src/java/org/apache/solr/common/util/ObjectReleaseTracker.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/security/PKIAuthenticationPlugin.java</file></path><path><editType>edit</editType><file>solr/modules/jwt-auth/src/java/org/apache/solr/security/jwt/JWTAuthPlugin.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/TestSolrFieldCacheBean.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/core/SolrCore.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/TestThinCache.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/TestSolrCachePerf.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/metrics/SolrMetricsContext.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/security/MultiAuthPlugin.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/security/AuditLoggerPlugin.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/blockcache/BufferStoreTest.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/search/stats/StatsCache.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/handler/admin/CoreAdminHandler.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/metrics/otel/instruments/AttributedInstrumentFactory.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/update/UpdateHandler.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/handler/RequestHandlerBase.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/security/CertAuthPluginTest.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/cloud/TestAuthenticationFramework.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/cloud/Overseer.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/search/SolrFieldCacheBean.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/search/CaffeineCache.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/handler/component/SuggestComponent.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/update/MaxSizeAutoCommitTest.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/cloud/OverseerTaskProcessor.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/metrics/SolrMetricProducer.java</file></path><path><editType>edit</editType><file>solr/core/src/java/org/apache/solr/core/CoreContainer.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/util/stats/OtelInstrumentedExecutorServiceTest.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/cloud/MissingSegmentRecoveryTest.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>solr/test-framework/src/java/org/apache/solr/cloud/MiniSolrCloudCluster.java</affectedPath><affectedPath>solr/solr-ref-guide/modules/indexing-guide/examples/IndexingNestedDocuments.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/join/TestCloudNestedDocsSort.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/update/DeleteByIdWithRouterFieldTest.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/facet/RangeFacetCloudTest.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/cloud/RecoveryZkTestWithAuth.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/facet/TestCloudJSONFacetSKGEquiv.java</affectedPath><affectedPath>solr/benchmark/src/java/org/apache/solr/bench/SolrBenchState.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/facet/TestCloudJSONFacetJoinDomain.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/cloud/RecoveryStrategyStressTest.java</affectedPath><affectedPath>solr/test-framework/src/java/org/apache/solr/embedded/JettySolrRunner.java</affectedPath><affectedPath>solr/test-framework/src/java/org/apache/solr/SolrBackend.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/search/facet/TestCloudJSONFacetSKG.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/servlet/TestRequestRateLimiter.java</affectedPath><affectedPath>changelog/unreleased/SOLR-18150-SolrBackend.yml</affectedPath><affectedPath>solr/test-framework/src/java/org/apache/solr/cloud/RemoteSolrBackend.java</affectedPath><affectedPath>solr/test-framework/src/java/org/apache/solr/embedded/EmbeddedSolrBackend.java</affectedPath><affectedPath>solr/core/src/test/org/apache/solr/cloud/RecoveryZkTest.java</affectedPath><commitId>af21fef102425e2c1b8240634f4eec13eae1e627</commitId><timestamp>1774797793000</timestamp><author><absoluteUrl>https://ci-builds.apache.org/user/github</absoluteUrl><fullName>github</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>SOLR-18150: Add SolrBackend abstraction for test/benchmark deployments (#4214)

SOLR-18150: Add SolrBackend abstraction for test/benchmark deployments

Created SolrBackend interface to abstract over different Solr deployment
types (embedded, remote, Jetty, MiniSolrCloudCluster) with a unified API
for collection/configSet management, diagnostics, and node URL access.
JettySolrRunner now manages a HttpJettySolrClient instance, get via getSolrClient.

This PR only introduces the abstraction; follow-on PRs will add callers
in benchmarks and tests.

Co-authored-by: Claude Opus 4.6 &lt;noreply@anthropic.com&gt;
</comment><date>2026-03-29 11:23:13 -0400</date><id>af21fef102425e2c1b8240634f4eec13eae1e627</id><msg>SOLR-18150: Add SolrBackend abstraction for test/benchmark deployments (#4214)</msg><path><editType>add</editType><file>solr/test-framework/src/java/org/apache/solr/SolrBackend.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/facet/TestCloudJSONFacetJoinDomain.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/join/TestCloudNestedDocsSort.java</file></path><path><editType>add</editType><file>solr/test-framework/src/java/org/apache/solr/embedded/EmbeddedSolrBackend.java</file></path><path><editType>edit</editType><file>solr/test-framework/src/java/org/apache/solr/embedded/JettySolrRunner.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/cloud/RecoveryStrategyStressTest.java</file></path><path><editType>edit</editType><file>solr/test-framework/src/java/org/apache/solr/cloud/MiniSolrCloudCluster.java</file></path><path><editType>edit</editType><file>solr/solr-ref-guide/modules/indexing-guide/examples/IndexingNestedDocuments.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/update/DeleteByIdWithRouterFieldTest.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/facet/RangeFacetCloudTest.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/facet/TestCloudJSONFacetSKGEquiv.java</file></path><path><editType>edit</editType><file>solr/benchmark/src/java/org/apache/solr/bench/SolrBenchState.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/cloud/RecoveryZkTest.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/servlet/TestRequestRateLimiter.java</file></path><path><editType>add</editType><file>changelog/unreleased/SOLR-18150-SolrBackend.yml</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/search/facet/TestCloudJSONFacetSKG.java</file></path><path><editType>add</editType><file>solr/test-framework/src/java/org/apache/solr/cloud/RemoteSolrBackend.java</file></path><path><editType>edit</editType><file>solr/core/src/test/org/apache/solr/cloud/RecoveryZkTestWithAuth.java</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://ci-builds.apache.org/user/abenedetti</absoluteUrl><fullName>Alessandro Benedetti</fullName></culprit><culprit><absoluteUrl>https://ci-builds.apache.org/user/dsmiley</absoluteUrl><fullName>David Smiley</fullName></culprit><culprit><absoluteUrl>https://ci-builds.apache.org/user/epugh</absoluteUrl><fullName>David Eric Pugh</fullName></culprit><culprit><absoluteUrl>https://ci-builds.apache.org/user/hossman</absoluteUrl><fullName>Chris M. Hostetter</fullName></culprit><culprit><absoluteUrl>https://ci-builds.apache.org/user/anshum</absoluteUrl><fullName>Anshum Gupta</fullName></culprit><culprit><absoluteUrl>https://ci-builds.apache.org/user/houston</absoluteUrl><fullName>Houston Putman</fullName></culprit><culprit><absoluteUrl>https://ci-builds.apache.org/user/gerlowskija</absoluteUrl><fullName>Jason Gerlowski</fullName></culprit><culprit><absoluteUrl>https://ci-builds.apache.org/user/github</absoluteUrl><fullName>github</fullName></culprit><culprit><absoluteUrl>https://ci-builds.apache.org/user/janhoy</absoluteUrl><fullName>Jan Høydahl</fullName></culprit></freeStyleBuild>