Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Large Feed (40K) removed - cleanup crashes #64

Closed
SethBodine opened this issue Aug 7, 2019 · 7 comments
Closed

Large Feed (40K) removed - cleanup crashes #64

SethBodine opened this issue Aug 7, 2019 · 7 comments

Comments

@SethBodine
Copy link

I removed a 40K unread items feed, when it tries to optimise search and feeds it crashes -i've tried to configure additional ram, but no luck. Any ideas on how I can clean this feed up using db4o browser tools?

@Xyrio
Copy link
Owner

Xyrio commented Aug 7, 2019

whats the error? whats written in the log?
%userprofile%\.rssowlnix-beta\.metadata\.log
there is the objectmanager 7.2 java that might help if you know what you are doing.
http://www.softsea.com/review/db4o-Object-Manager.html

@SethBodine
Copy link
Author

rssowlnix.ini (changes made - i've also tried 2GB as well.)

-Xms1G
-Xmx1G 

starting Rssowlnix error on either Improving Search or Application Performance (both crash individually)
RSSOwlnix is unable to start properly.

As it's optimising, it slows at feed 475, and crashes at 476 of 686 total feeds.

I tried to use the Object Manager (as indicated)
FROM 'org.rssowl.core.internal.persist.Feed'
returns
Error executing query! 151

.log file crash information

!SESSION 2019-08-08 21:29:00.523 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.8.0_221
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_NZ
Command-line arguments:  -os win32 -ws win32 -arch x86_64

!ENTRY org.rssowl.ui 1 0 2019-08-08 21:29:15.976
!MESSAGE RSSOwlnix Starting Up (RSSOwlnix/2.7.0.201902091357 (Windows; U; en))

!ENTRY org.rssowl.core 1 0 2019-08-08 21:29:16.454
!MESSAGE Start: Database Defragmentation

!ENTRY org.rssowl.ui 4 4 2019-08-08 21:29:41.795
!MESSAGE 
!STACK 0
java.lang.NullPointerException
	at org.rssowl.core.internal.persist.Feed.getNewsCount(Feed.java:171)
	at org.rssowl.core.internal.persist.service.DBManager.addNewsCounterItem(DBManager.java:1344)
	at org.rssowl.core.internal.persist.service.DBManager.internalCopyDatabase(DBManager.java:1144)
	at org.rssowl.core.internal.persist.service.DBManager.copyDatabase(DBManager.java:1012)
	at org.rssowl.core.internal.persist.service.DBManager.defragment(DBManager.java:943)
	at org.rssowl.core.internal.persist.service.DBManager.defragmentIfNecessary(DBManager.java:896)
	at org.rssowl.core.internal.persist.service.DBManager.createDatabase(DBManager.java:255)
	at org.rssowl.core.internal.persist.service.DBManager.startup(DBManager.java:208)
	at org.rssowl.core.internal.persist.service.PersistenceServiceImpl.startup(PersistenceServiceImpl.java:60)
	at org.rssowl.core.internal.InternalOwl.startup(InternalOwl.java:144)
	at org.rssowl.core.Owl.startup(Owl.java:208)
	at org.rssowl.ui.internal.Activator$5.run(Activator.java:251)
	at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:440)
	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:356)
	at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:474)
	at org.rssowl.ui.internal.Activator.startCore(Activator.java:264)
	at org.rssowl.ui.internal.Activator.access$2(Activator.java:192)
	at org.rssowl.ui.internal.Activator$3.run(Activator.java:160)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
	at org.rssowl.ui.internal.Activator.start(Activator.java:157)
	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:782)
	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:775)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:732)
	at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1005)
	at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:357)
	at org.eclipse.osgi.container.Module.doStart(Module.java:584)
	at org.eclipse.osgi.container.Module.start(Module.java:452)
	at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:471)
	at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:117)
	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:557)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:331)
	at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:395)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:473)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:414)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:153)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:612)
	at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:180)
	at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:934)
	at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:246)
	at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:63)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:391)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:246)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1501)

!ENTRY org.rssowl.ui 1 0 2019-08-08 21:29:41.825
!MESSAGE Opening Fatal Error Wizard (offering restore options)

!ENTRY org.rssowl.ui 1 0 2019-08-08 21:31:43.195
!MESSAGE Crash Report Exported

!ENTRY org.rssowl.core 1 0 2019-08-08 21:32:22.232
!MESSAGE RSSOwlnix Shutting Down (normal)


!ENTRY org.eclipse.core.jobs 2 2 2019-08-08 21:32:22.472
!MESSAGE Job found still running after platform shutdown.  Jobs should be canceled by the plugin that scheduled them during shutdown: org.rssowl.ui.internal.ApplicationServer$1
!SESSION 2019-08-08 21:32:22.679 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.8.0_221
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_NZ
Command-line arguments:  -os win32 -ws win32 -arch x86_64

!ENTRY org.rssowl.ui 1 0 2019-08-08 21:32:31.809
!MESSAGE RSSOwlnix Starting Up (RSSOwlnix/2.7.0.201902091357 (Windows; U; en))

!ENTRY org.rssowl.core 1 0 2019-08-08 21:32:34.970
!MESSAGE Start: Search Clean-Up

!ENTRY org.rssowl.core 1 0 2019-08-08 21:32:45.732
!MESSAGE Finished: Search Clean-Up

!ENTRY org.rssowl.core 4 2 2019-08-08 21:33:37.379
!MESSAGE Problems occurred when invoking code from plug-in: "org.rssowl.core".
!STACK 0
java.lang.NullPointerException
	at org.rssowl.core.internal.persist.Feed.findNews(Feed.java:138)
	at org.rssowl.core.internal.persist.Feed.mergeNews(Feed.java:873)
	at org.rssowl.core.internal.persist.Feed.merge(Feed.java:744)
	at org.rssowl.core.internal.persist.Feed.mergeAndCleanUp(Feed.java:736)
	at org.rssowl.core.internal.ApplicationServiceImpl.handleFeedReload(ApplicationServiceImpl.java:280)
	at org.rssowl.ui.internal.Controller$3.run(Controller.java:872)
	at org.rssowl.core.util.JobQueue$2$1.run(JobQueue.java:330)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
	at org.rssowl.core.util.JobQueue$2.run(JobQueue.java:326)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)

!ENTRY org.rssowl.core 1 0 2019-08-08 21:35:36.698
!MESSAGE RSSOwlnix Shutting Down (normal)

Note: I closed, and then re-opened rssowlnix (and then closed it again)

@SethBodine
Copy link
Author

I did run a defragment using the Object Manager Tool - no change though

@Xyrio
Copy link
Owner

Xyrio commented Aug 8, 2019

here is a build that attempts to fix the problem in the log. try it and if it does not work paste the new log parts.

https://xyrio.github.io/RSSOwlnix-site/tmp/RSSOwlnix-2-7-1-win32.win32.x86_64.zip

@SethBodine
Copy link
Author

No luck

!SESSION 2019-08-09 18:54:16.550 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.8.0_221
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_NZ
Command-line arguments: -os win32 -ws win32 -arch x86_64

!ENTRY org.rssowl.ui 1 0 2019-08-09 18:54:17.508
!MESSAGE RSSOwlnix Starting Up (RSSOwlnix/2.7.1.201908081922 (Windows; U; en))

!ENTRY org.rssowl.core 1 0 2019-08-09 18:54:17.901
!MESSAGE Start: Database Defragmentation

!ENTRY org.rssowl.ui 4 4 2019-08-09 18:54:52.788
!MESSAGE Uncaught Exception. db4o engine closed.
!STACK 0
java.lang.RuntimeException: Uncaught Exception. db4o engine closed.
at com.db4o.internal.PartialObjectContainer.fatalException(Unknown Source)
at com.db4o.internal.PartialObjectContainer.fatalException(Unknown Source)
at com.db4o.internal.IoAdaptedObjectContainer.close2(Unknown Source)
at com.db4o.internal.PartialObjectContainer.close1(Unknown Source)
at com.db4o.internal.PartialObjectContainer.close(Unknown Source)
at org.rssowl.core.internal.persist.service.DBManager.copyDatabase(DBManager.java:1015)
at org.rssowl.core.internal.persist.service.DBManager.defragment(DBManager.java:943)
at org.rssowl.core.internal.persist.service.DBManager.defragmentIfNecessary(DBManager.java:896)
at org.rssowl.core.internal.persist.service.DBManager.createDatabase(DBManager.java:255)
at org.rssowl.core.internal.persist.service.DBManager.startup(DBManager.java:208)
at org.rssowl.core.internal.persist.service.PersistenceServiceImpl.startup(PersistenceServiceImpl.java:60)
at org.rssowl.core.internal.InternalOwl.startup(InternalOwl.java:144)
at org.rssowl.core.Owl.startup(Owl.java:208)
at org.rssowl.ui.internal.Activator$5.run(Activator.java:251)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:440)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:356)
at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:474)
at org.rssowl.ui.internal.Activator.startCore(Activator.java:264)
at org.rssowl.ui.internal.Activator.access$2(Activator.java:192)
at org.rssowl.ui.internal.Activator$3.run(Activator.java:160)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.rssowl.ui.internal.Activator.start(Activator.java:157)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:782)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:775)
at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:732)
at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1005)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:357)
at org.eclipse.osgi.container.Module.doStart(Module.java:584)
at org.eclipse.osgi.container.Module.start(Module.java:452)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:471)
at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:117)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:557)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:331)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:395)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:473)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:414)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:153)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:612)
at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:180)
at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:934)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:246)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:63)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:391)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:246)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595)
at org.eclipse.equinox.launcher.Main.run(Main.java:1501)

!ENTRY org.rssowl.ui 1 0 2019-08-09 18:54:53.414
!MESSAGE Opening Fatal Error Wizard (offering restore options)

!ENTRY org.rssowl.ui 4 4 2019-08-09 18:54:59.354
!MESSAGE [db4o 6.1.501 2019-08-09 18:54:52]
Uncaught Exception. Engine closed.
[db4o 6.1.501 2019-08-09 18:54:52]
Please mail the following to [email protected]:
<db4o 6.1.501 stacktrace>
java.lang.OutOfMemoryError: Java heap space
</db4o 6.1.501 stacktrace>

!ENTRY org.rssowl.ui 1 0 2019-08-09 18:54:59.355
!MESSAGE Crash Report Exported

@Xyrio
Copy link
Owner

Xyrio commented Aug 9, 2019

java.lang.OutOfMemoryError: Java heap space
this time it is not enough memory set it to 4G for both. as long as it is not more memory than what is currently free. (if you go above it will cache to harddisk and become very slow).

how big is your rssowl.db file?

@SethBodine
Copy link
Author

forgot that i'd over-written the ini file. Allocating additional ram resolved the issue!

FYI the db is was about 550MB, after I ran a defrag in the db4o Object Manager tool it dropped to about 250mb.

Currently after running the full clean-up i'm down to 200mb

I really appreciate your help

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants