This question is answered. Helpful answers available: 0. Correct answers available: 1.


Permlink Replies: 36 - Pages: 3 [ Previous | 1 2 3 | Next ] - Last Post: 5 Jun 26, 15:35 Last Post By: davidekholm Threads: [ Previous | Next ]
hmesman

Posts: 23
Registered: 5-Feb-2009
Re: Slow performance
Posted: 31 May 26, 21:26   in response to: davidekholm in response to: davidekholm
 
  Click to reply to this thread Reply
Hello,

I've replaced the file, but I haven't noticed any difference.
The delay appears to be caused bij reading file attributes and, as you mentioned, image metadata.
The actual processing of this data doesn't seem to be affected by any delay.
I've placed both results side by side (see screenshots)
JeffTucker

Posts: 8,338
Registered: 31-Jan-2006
Re: Slow performance
Posted: 31 May 26, 22:06   in response to: hmesman in response to: hmesman
 
  Click to reply to this thread Reply
Thanks for doing that test. I made a similar test, and also didn't see any measurable difference in execution speed, but my images don't have a lot of metadata, so I couldn't be sure about it.

David will have to ask Sparky, his AI bot, what he did, and why.
hmesman

Posts: 23
Registered: 5-Feb-2009
Re: Slow performance
Posted: 1 Jun 26, 22:28   in response to: JeffTucker in response to: JeffTucker
 
  Click to reply to this thread Reply
Note: it's not just the process of creating an album that's extremely slow; scrolling through the photos within jAlbum itself is extremely slow too.
Everything feels sluggish.
For now, I'll stick with version 39.4.
I won't be installing any future updates until this issue has been resolved.
I'm in no rush, so please take your time to find a solution.
Thanks in advance!
davidekholm

Posts: 3,969
Registered: 18-Oct-2002
Re: Slow performance
Posted: 2 Jun 26, 13:27   in response to: hmesman in response to: hmesman
Helpful
  Click to reply to this thread Reply
Can you please provide me a set of those PNG images, cause I fail to be able to reproduce this problem. It's related to the nature of your images. Once I can reproduce the problem, I can likely fix it.
hmesman

Posts: 23
Registered: 5-Feb-2009
Re: Slow performance
Posted: 3 Jun 26, 10:43   in response to: davidekholm in response to: davidekholm
 
  Click to reply to this thread Reply
Hello,

Before I send you the link to the PNG files, I’d like to point out that the issues only occur when reading PNG files, including whilst scrolling through the album in jAlbum itself.

If the same files are replaced with JPGs and added to the album, there are no issues and the processing speed is the same as in the previous version of jAlbum, even with the current metadata settings.

However, if I replace jalbum-core with the jAlbum 38.4 version (which effectively reverts the update), everything works as before and browsing through PNG files in jAlbum itself is once again without any delay, so there seems to be an issue with the built-in PNG reader (if it is even present) in version 39.5.11.

Converting all the files to JPG isn't an option for me, by the way...

Edited by: hmesman on 3 Jun 2026, 10:47

Edited by: hmesman on 3 Jun 2026, 10:48

davidekholm

Posts: 3,969
Registered: 18-Oct-2002
Re: Slow performance
Posted: 3 Jun 26, 13:11   in response to: hmesman in response to: hmesman
 
  Click to reply to this thread Reply
Please pass some of those PNGs so I can reproduce and fix this. We made several changes so without being able to reproduce I'd have to play a guessing game as what changes to make.
hmesman

Posts: 23
Registered: 5-Feb-2009
Re: Slow performance
Posted: 3 Jun 26, 14:15   in response to: davidekholm in response to: davidekholm
 
  Click to reply to this thread Reply
I sent you a message earlier today.
davidekholm

Posts: 3,969
Registered: 18-Oct-2002
Re: Slow performance
Posted: 4 Jun 26, 10:42   in response to: hmesman in response to: hmesman
 
  Click to reply to this thread Reply
Thanks. I've been able to reproduce and fix the issue now. Will post back to the forum. To try out the fix, select Tools->External tools->jAlbum core update.
hmesman

Posts: 23
Registered: 5-Feb-2009
Re: Slow performance
Posted: 4 Jun 26, 11:16   in response to: davidekholm in response to: davidekholm
 
  Click to reply to this thread Reply
Hello,
Unfortunately, the update is causing a Java error.
I therefore uninstalled and reinstalled version 39.5 and ran the update again.
I then started/restarted the programme as an administrator, but the error persists.
jAlbum then froze completely.
RobM

Posts: 3,983
Registered: 4-Aug-2006
Re: Slow performance
Posted: 4 Jun 26, 12:27   in response to: hmesman in response to: hmesman
 
  Click to reply to this thread Reply
Please try to use the copy error message, or copy it from the console and paste it, instead of using a screenshot. It makes it much easier for those who want to help. Use the code tags, shown bottom right of the post window when writing.

Edited by: RobM on 4 Jun 2026, 11:30
 java.lang.NullPointerException:
Cannot invoke "se.datadosen. jalbum.AlbumObject.getParent ()" because "this.currentFolder"
at se.datadosen.explorer.JAlbumExplorer.rememberLastLocation(JAlbumExplorer.java:4247)
at se.datadosen.explorer.JAlbumExplorer.setRootFolder (JAlbumExplorer.java: 4271)
at
se. datadosen. jalbum.JAlbumFrame.initView(JAlbumFrame.java:2432)
at
se. datadosen. jalbum.JAlbumFrame.engine2UI (JAlbumFrame.java:2218)
at
se.datadosen. jalbum.JAlbumFrame.engine2UI (JAlbumFrame.java: 2176)
at
se. datadosen. jalbum.JAlbumFrame.doloadProject (JAlbumFrame.java:1908)
at
se. datadosen. jalbum.JAlbumFrame.loadProject (JAlbumFrame.java: 1831)
at
se.datadosen. jalbum.JAlbumManager$JAlbumButton.lambdasactionPerformed60(JAlbumManager.java:1172)
at
java.desktop/java.awt.event.InvocationEvent.dispatch (Unknown Source)
at
java.desktop/java.awt.EventQueue.dispatchEventImp1 (Unknown Source)
at
java.desktop/java.awt.EventQueuef4.run (Unknown Source)
at
at
at
java.base/Java.security.ProtectionDomain$JavaSecurityAccessImp1.doIntersectionPr1vi1ege(Unknown Source)
at
java.desktop/java.awt.EventQueue.dispatchEvent (Unknown Source)
at
java.desktop/java.awt.EventDispatchThread.pumpOneEventForF11ters (Unknown Source)
at
java.desktop/java.awt.EventDispatchThread.pumpEventsForF11ter (Unknown Source)
at
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy (Unknown Source)
at
java.desktop/java.awt.EventDispatchThread.pumpEvents (Unknown Source)
at
java.desktop/java.awt.EventDispatchThread.pumpEvents (Unknown Source)
hmesman

Posts: 23
Registered: 5-Feb-2009
Re: Slow performance
Posted: 4 Jun 26, 15:11   in response to: RobM in response to: RobM
 
  Click to reply to this thread Reply
For some reason, I can't seem to manage that, but if necessary, I could provide a link to the image.
davidekholm

Posts: 3,969
Registered: 18-Oct-2002
Re: Slow performance
Posted: 4 Jun 26, 15:25   in response to: davidekholm in response to: davidekholm
Helpful
  Click to reply to this thread Reply
It beats me why that error pops up now, but see if this additional fix resolves it. Do another core update now.
JeffTucker

Posts: 8,338
Registered: 31-Jan-2006
Re: Slow performance
Posted: 4 Jun 26, 15:32   in response to: davidekholm in response to: davidekholm
 
  Click to reply to this thread Reply
Disastrously bad. Upon launch I get this error:
jAlbum 39.5.14 system console running Groovy (Groovy Scripting Engine)
This section captures debug prints sent to System.out and System.err
The top section evaluates expressions.
Press Ctrl+E to evaluate an expression. (Evaluates selected text if selection is active)
You have access to the basic jAlbum implicit objects such as engine and window
 
Sample expressions:
4*(3+2); // Basic calculations
engine.getSkin(); // Use of implicit object
for (AlbumObject ao : selectedObjects) println ao; // Iterate over selected objects
window.messageBox("You can interact with any Java object");
Profiler.instance // Print profiling data for last album build
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "se.datadosen.jalbum.AbstractFolderAlbumObject.getInfoEntry(se.datadosen.jalbum.AlbumObject)" because the return value of "se.datadosen.jalbum.AlbumObjectImpl.getParent()" is null
	at se.datadosen.jalbum.AlbumObjectImpl.getInfoEntry(AlbumObjectImpl.java:226)
	at se.datadosen.jalbum.AlbumObjectProperties.getEntry(AlbumObjectProperties.java:555)
	at se.datadosen.jalbum.AlbumObjectProperties.load(AlbumObjectProperties.java:516)
	at se.datadosen.jalbum.AlbumObjectProperties.init(AlbumObjectProperties.java:291)
	at se.datadosen.jalbum.AlbumObjectProperties.<init>(AlbumObjectProperties.java:196)
	at se.datadosen.jalbum.AlbumObjectProperties.getInstance(AlbumObjectProperties.java:176)
	at se.datadosen.jalbum.AlbumObjectImpl.getProperties(AlbumObjectImpl.java:1735)
	at se.datadosen.explorer.JAlbumExplorer.setRootFolder(JAlbumExplorer.java:4283)
	at se.datadosen.jalbum.JAlbumFrame.initView(JAlbumFrame.java:2432)
	at se.datadosen.jalbum.JAlbumFrame.newProject(JAlbumFrame.java:1558)
	at se.datadosen.jalbum.JAlbumFrame.lambda$new$1(JAlbumFrame.java:329)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "se.datadosen.jalbum.AbstractFolderAlbumObject.getInfoEntry(se.datadosen.jalbum.AlbumObject)" because the return value of "se.datadosen.jalbum.AlbumObjectImpl.getParent()" is null
	at se.datadosen.jalbum.AlbumObjectImpl.getInfoEntry(AlbumObjectImpl.java:226)
	at se.datadosen.jalbum.AlbumObjectProperties.getEntry(AlbumObjectProperties.java:555)
	at se.datadosen.jalbum.AlbumObjectProperties.load(AlbumObjectProperties.java:516)
	at se.datadosen.jalbum.AlbumObjectProperties.init(AlbumObjectProperties.java:291)
	at se.datadosen.jalbum.AlbumObjectProperties.<init>(AlbumObjectProperties.java:196)
	at se.datadosen.jalbum.AlbumObjectProperties.getInstance(AlbumObjectProperties.java:176)
	at se.datadosen.jalbum.AlbumObjectImpl.getProperties(AlbumObjectImpl.java:1735)
	at se.datadosen.jalbum.AlbumBean.addGlobals(AlbumBean.java:3071)
	at se.datadosen.jalbum.AlbumBean.prepareMakeAlbum(AlbumBean.java:4124)
	at se.datadosen.jalbum.AlbumBean.prepareMakeAlbum(AlbumBean.java:4072)
	at se.datadosen.jalbum.AlbumBean.init(AlbumBean.java:3748)
	at se.datadosen.jalbum.JAlbumFrame.executeScript(JAlbumFrame.java:1360)
	at se.datadosen.jalbum.JAlbum.lambda$new$0(JAlbum.java:198)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot read field "value" because "item" is null
	at se.datadosen.jalbum.JMainSettingsPanel.lambda$init$3(JMainSettingsPanel.java:737)
	at java.desktop/com.sun.java.swing.plaf.windows.WindowsComboBoxUI.paintCurrentValue(Unknown Source)
	at java.desktop/javax.swing.plaf.basic.BasicComboBoxUI.paint(Unknown Source)
	at java.desktop/com.sun.java.swing.plaf.windows.WindowsComboBoxUI.paint(Unknown Source)
	at java.desktop/javax.swing.plaf.ComponentUI.update(Unknown Source)
	at java.desktop/javax.swing.JComponent.paintComponent(Unknown Source)
	at java.desktop/javax.swing.JComponent.paint(Unknown Source)
	at java.desktop/javax.swing.JComponent.paintToOffscreen(Unknown Source)
	at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedImpl(Unknown Source)
	at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
	at java.desktop/javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
	at java.desktop/javax.swing.RepaintManager.paint(Unknown Source)
	at java.desktop/javax.swing.JComponent._paintImmediately(Unknown Source)
	at java.desktop/javax.swing.JComponent.paintImmediately(Unknown Source)
	at java.desktop/javax.swing.RepaintManager$4.run(Unknown Source)
	at java.desktop/javax.swing.RepaintManager$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
	at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
	at java.desktop/javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
	at java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
And if I try to add images to create a new project, I get no result, and the app freezes - have to force-quit (Windows).

ETA: If I wait long enough, I can eventually close the app in the usual way (but Explore remains empty - the image add doesn't work). But there's no thread dump, even with the watchdog enabled.

ETA: I get a similarly unusable jAlbum on the Mac - same errors, and it goes downhill from there.
hmesman

Posts: 23
Registered: 5-Feb-2009
Re: Slow performance
Posted: 4 Jun 26, 16:16   in response to: davidekholm in response to: davidekholm
 
  Click to reply to this thread Reply
Hello David,

Everything's back to normal for me!
Thanks for all your help!

Kind regards,
Hans Mesman
RobM

Posts: 3,983
Registered: 4-Aug-2006
Re: Slow performance
Posted: 4 Jun 26, 18:31   in response to: hmesman in response to: hmesman
 
  Click to reply to this thread Reply
hmesman wrote:
For some reason, I can't seem to manage that, but if necessary, I could provide a link to the image.
When you get an error like the above you should see something this:
https://jalbum.net/help/en/jAlbum/Welcome#Oops.21

If for any reason you don’t, or you’ve cancelled the error message then you can get the error code from the system console, https://jalbum.net/help/en/jAlbum/SystemConsole
Legend
Forum admins
Helpful Answer
Correct Answer

Point your RSS reader here for a feed of the latest messages in all forums