@Philip Durbin Anyone @Don Sizemore
upgraded to V6.6, but after re-index (index in place), newly created dataset was not showing up in UI. Could get to it via direct link.
So, did index "clear"
curl http://localhost:8080/api/admin/index/clear
and am now doing....
curl http://localhost:8080/api/admin/index
Nothing is showing up in UI:
http://dataverse.lib.virginia.edu
But of course all data is there:
https://dataverse.lib.virginia.edu/dataset.xhtml?persistentId=doi:10.18130/V3/ZNR96G
Indexing individual file is working. And I finally see two unpublished datasets (as dataverseAdmin). But that's all.
Hi Sherry, what shows up in the Payara server.log during re-index? (Have you re-traced your steps through the Solr installation?)
Hmm, I see four datasets at https://dataverse.lib.virginia.edu/dataverse/uva and they're all published.
I agree with Don that seeing server.log will probably help.
We have a local metadata block....
AND our solr is on another box..... that we MUST put through github and terraform???? or teamcity???
I didn't do that part....
I downloaded both solrconfig.xml and schema.xml.
I ran update-fields.sh (command from the installation instructions) on the downloaded schema.xml.
Then I had to put both solrconfig.xml and schema.xml in version control and over to github... where my sysadmin (Tim), picked up.
He did all that part in addition to the updated solr version.
Here are the most recent SEVERE errors:
[2025-06-02T19:31:43.545+0000] [Payara 6.2025.2] [SEVERE] [] [jakarta.enterprise.resource.webcontainer.faces.context] [tid: _ThreadID=93 _ThreadName=http-thread-pool::jk-connector(4)] [timeMillis: 1748892703545] [levelValue: 1000] [[
jakarta.faces.view.facelets.TagAttributeException: /dataset.xhtml @75,75 test="#{empty DatasetPage.croissant}" /dataset.xhtml @75,75 test="#{empty DatasetPage.croissant}": java.lang.NullPointerException: Cannot invoke "edu.harvard.iq.dataverse.DatasetVersion.isPublished()" because "this.workingVersion" is null
jakarta.faces.view.facelets.TagAttributeException: /dataset.xhtml @75,75 test="#{empty DatasetPage.croissant}" /dataset.xhtml @75,75 test="#{empty DatasetPage.croissant}": java.lang.NullPointerException: Cannot invoke "edu.harvard.iq.dataverse.DatasetVersion.isPublished()" because "this.workingVersion" is null
at com.sun.faces.facelets.tag.TagAttributeImpl.getObject(TagAttributeImpl.java:291)
at com.sun.faces.facelets.tag.TagAttributeImpl.getBoolean(TagAttributeImpl.java:107)
at com.sun.faces.facelets.tag.jstl.core.ChooseWhenHandler.isTestTrue(ChooseWhenHandler.java:46)
at com.sun.faces.facelets.tag.jstl.core.ChooseHandler.apply(ChooseHandler.java:63)
at jakarta.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:57)
at jakarta.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:163)
at com.sun.faces.facelets.tag.faces.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:177)
at jakarta.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:139)
at com.sun.faces.facelets.tag.ui.DefineHandler.applyDefinition(DefineHandler.java:63)
at com.sun.faces.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:161)
at com.sun.faces.facelets.impl.DefaultFaceletContext$TemplateManager.apply(DefaultFaceletContext.java:358)
at com.sun.faces.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:329)
at com.sun.faces.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:69)
at jakarta.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:57)
at com.sun.faces.facelets.tag.faces.core.FacetHandler.apply(FacetHandler.java:61)
at jakarta.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:57)
at jakarta.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:163)
at com.sun.faces.facelets.tag.faces.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:177)
at jakarta.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:139)
at jakarta.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:57)
at com.sun.faces.facelets.tag.faces.core.ViewHandler.apply(ViewHandler.java:172)
at jakarta.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:57)
at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:52)
at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:46)
at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:265)
at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:318)
at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:301)
at com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:154)
at com.sun.faces.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:129)
at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:52)
at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:46)
at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:132)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:331)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.restoreView(FaceletViewHandlingStrategy.java:252)
at com.sun.faces.application.view.MultiViewHandler.restoreView(MultiViewHandler.java:126)
at jakarta.faces.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:96)
at jakarta.faces.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:96)
at jakarta.faces.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:96)
at org.omnifaces.viewhandler.OmniViewHandler.restoreView(OmniViewHandler.java:113)
at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:162)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:72)
at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:96)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:131)
at jakarta.faces.webapp.FacesServlet.executeLifecyle(FacesServlet.java:691)
at jakarta.faces.webapp.FacesServlet.service(FacesServlet.java:449)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1554)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:331)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:211)
at org.glassfish.tyrus.servlet.TyrusServletFilter.doFilter(TyrusServletFilter.java:83)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:253)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:211)
at org.ocpsoft.rewrite.servlet.RewriteFilter.doFilter(RewriteFilter.java:226)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:253)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:211)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:166)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:757)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:577)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:158)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:757)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:577)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:369)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:239)
at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:520)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:217)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:174)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:153)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:196)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:88)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:246)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:178)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:118)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:96)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:51)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:510)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:82)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:83)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:101)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:535)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:515)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: jakarta.el.ELException: /dataset.xhtml @75,75 test="#{empty DatasetPage.croissant}": java.lang.NullPointerException: Cannot invoke "edu.harvard.iq.dataverse.DatasetVersion.isPublished()" because "this.workingVersion" is null
at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:77)
at com.sun.faces.facelets.tag.TagAttributeImpl.getObject(TagAttributeImpl.java:289)
... 81 more
Caused by: jakarta.el.ELException: java.lang.NullPointerException: Cannot invoke "edu.harvard.iq.dataverse.DatasetVersion.isPublished()" because "this.workingVersion" is null
at jakarta.el.BeanELResolver.getValue(BeanELResolver.java:351)
at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:139)
at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:164)
at org.glassfish.expressly.parser.AstValue.getValue(AstValue.java:302)
at org.glassfish.expressly.parser.AstValue.getValue(AstValue.java:144)
at org.glassfish.expressly.parser.AstEmpty.getValue(AstEmpty.java:44)
at org.glassfish.expressly.ValueExpressionImpl.getValue(ValueExpressionImpl.java:138)
at org.jboss.weld.module.web.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:73)
... 82 more
Caused by: java.lang.NullPointerException: Cannot invoke "edu.harvard.iq.dataverse.DatasetVersion.isPublished()" because "this.workingVersion" is null
at edu.harvard.iq.dataverse.DatasetPage.isThisLatestReleasedVersion(DatasetPage.java:5964)
at edu.harvard.iq.dataverse.DatasetPage.getCroissant(DatasetPage.java:5984)
at jdk.internal.reflect.GeneratedMethodAccessor1211.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at jakarta.el.BeanELResolver.getValue(BeanELResolver.java:346)
... 90 more
]]
That Croissant bug will be fixed by PR #11476 in 6.7
I just ran the index continue... and it said that only "2" datasets were to be indexed?
curl http://localhost:8080/api/admin/index/continue
I know that these are rather LARGE datasets - in number of files (over 6,000). These are the only two messages in my log when I ran the above command.
[2025-06-02T19:42:53.501+0000] [Payara 6.2025.2] [INFO] [] [edu.harvard.iq.dataverse.search.IndexBatchServiceBean] [tid: _ThreadID=216 _ThreadName=__ejb-thread-pool4] [timeMillis: 1748893373501] [levelValue: 800] [[
indexing dataset 1 of 2 (id=81905)]]
[2025-06-02T19:43:06.510+0000] [Payara 6.2025.2] [INFO] [] [edu.harvard.iq.dataverse.search.IndexBatchServiceBean] [tid: _ThreadID=216 _ThreadName=__ejb-thread-pool4] [timeMillis: 1748893386510] [levelValue: 800] [[
indexing dataset 2 of 2 (id=36552)]]
@Philip Durbin so that croissant bug isn't the problem?
I need to look for another error?
Or Can I just run the index command again?
This one: curl http://localhost:8080/api/admin/index
Did you upgrade to Solr 9.8.0? That's part of the 6.6 release notes.
Yes, 9.8.
Another large dataset showed up (14,814 files).
Ok, so the index is empty to start with. And now you're trying to do the initial indexing?
Yes, I ran.
curl http://localhost:8080/api/admin/index/clear
Then the index command:
curl http://localhost:8080/api/admin/index
Reason why I cleared, is because after the upgrade, I created a dataset (draft), but it did not show up in the collection. It was there, I got to it by the URL, but it didn't display in dataset listing.... so I thought the solr index needed re-indexing....
I wonder if you should clear the index timestamps... https://guides.dataverse.org/en/6.6/admin/solr-search-index.html#clear-index-timestamps
To be honest, I haven't done this in quite a while.
You're saying curl http://localhost:8080/api/admin/index only showed "indexing dataset 1 of 2"? That doesn't sound right.
The "continue" endpoint:
curl http://localhost:8080/api/admin/index/continue
Ok, that might make sense.
Anything else in server.log after you do /clear and /index?
Such as a complaint about a field Solr doesn't know about?
has Tim verified that the updated solrconfig.xml and schema.xml show up in place on the Solr box (and does Terraform or other restart Solr on a conf file update?)
@Don Sizemore I'll ask.
But I can see the solr mount point and checked that the solrconfig.xml there matches (diff) what I downloaded from the V6.6 installation instructions.
And the schema.xml there does have my local metadata block fields.
Before I started the "clear", Tim restarted the "core".... I assume solr.
The problem I was trying to solve was.... a new dataset (created after upgrade) was not showing in the listing.
Right, I think you hit #11442 which is fixed by #11476. If you're seeing this a lot you could disable the Croissant exporter until the fix ships in 6.7.
That new dataset... what if you index it? Does it show up in the listing?
Or you could edit its metadata to force indexing of just that dataset.
Ok, editing that newly creating dataset.... now it shows up - to me - it's draft.
But I still don't see the other datasets (except the 5 that have appeared "slowly").
Ok, so you're having two problems:
Let's just get my dataset listings back:
Should I remove the timestamps?
https://guides.dataverse.org/en/6.6/admin/solr-search-index.html#clear-index-timestamps
And try to re-run index OR just re-run index?
curl http://localhost:8080/api/admin/index
Then I'll see what is in my log file. Nothing happening now in my log file.
I guess I'd suggest
curl http://localhost:8080/api/admin/index/clear
followed by
curl http://localhost:8080/api/admin/index
Because you're starting from basically zero anyway (only 5 datasets indexed).
It is taking a long time to clear:
curl http://localhost:8080/api/admin/index/clear
[2025-06-02T20:29:45.734+0000] [Payara 6.2025.2] [INFO] [] [edu.harvard.iq.dataverse.search.SolrIndexServiceBean] [tid: _ThreadID=75 _ThreadName=http-thread-pool::http-listener-1(3)] [timeMillis: 1748896185734] [levelValue: 800] [[
attempting to delete all Solr documents before a complete re-index]]
Nothing else in the log... and prompt has not come back.
Ok.... now these.... but is this my "clear index" or something else:
[2025-06-02T20:34:45.686+0000] [Payara 6.2025.2] [INFO] [] [edu.harvard.iq.dataverse.search.SearchServiceBean] [tid: _ThreadID=92 _ThreadName=http-thread-pool::jk-connector(3)] [timeMillis: 1748896485686] [levelValue: 800] [[
Things are back......
I think one LARGE dataset got stuck.
This last one came through the log 20 min. ago, which was the end of indexing after the upgrade (only took 4 hours!!!!).
[2025-06-02T20:44:31.092+0000] [Payara 6.2025.2] [INFO] [] [edu.harvard.iq.dataverse.search.IndexBatchServiceBean] [tid: _ThreadID=228 _ThreadName=__ejb-thread-pool16] [timeMillis: 1748897071092] [levelValue: 800] [[
indexing dataset 835 of 835 (id=36552)]]
[2025-06-02T20:44:47.659+0000] [Payara 6.2025.2] [INFO] [] [edu.harvard.iq.dataverse.search.IndexBatchServiceBean] [tid: _ThreadID=228 _ThreadName=__ejb-thread-pool16] [timeMillis: 1748897087659] [levelValue: 800] [[
done iterating through all datasets]]
[2025-06-02T20:44:47.659+0000] [Payara 6.2025.2] [INFO] [] [edu.harvard.iq.dataverse.search.IndexBatchServiceBean] [tid: _ThreadID=228 _ThreadName=__ejb-thread-pool16] [timeMillis: 1748897087659] [levelValue: 800] [[
index all took 8056724 milliseconds]]
(deleted)
we are back!
I would like to suggest that an index clear be recommended before a re index - in the installation notes.
The reindex was “quick” after clearing the index versus just reindexing in place. An hour compared to 4+ hours.
Thanks for the advice.
@Sherry Lake I'm glad you're back! Good job.
Sherry Lake has marked this topic as resolved.
Last updated: Oct 30 2025 at 06:21 UTC