Ticket #1068 (closed defect: fixed)

Opened 13 years ago

Last modified 13 years ago

IOError when updating = interlaced PNG:s?

Reported by: jukka Owned by: anonymous
Priority: blocker Milestone:
Component: generic Version:
Keywords: Cc:
Time planned: Time remaining: 0h
Time spent:

Description (last modified by jukka) (diff)

Updating archetype objects currently fails with mysterious IOError in some object. I found this in lemill.net:s error log (not the error caused by update, but some user-created failure):

Module Products.LeMill.Piece, line 105, in setFile
Module Products.Archetypes.Field, line 2103, in set
Module Products.Archetypes.Field, line 2225, in createScales
__traceback_info__: (<Field image(image:rw)>, <Piece at /lemill-server/content/piece.2007-01-05.7091016285 used for /lemill-server/content/content>, 'image_small', 120, 120)
Module Products.Archetypes.Field, line 2269, in scale
Module PIL.Image, line 1422, in thumbnail
Module PIL.ImageFile, line 155, in load
Module PIL.PngImagePlugin, line 337, in load_prepare
IOError: cannot read interlaced PNG files

It could be because we have bad PNG:s, as PIL doesn't support them, see discussion: http://dev.plone.org/plone/ticket/5238

Does anyone know if interlaced PNG:s are common, how big of a problem it is?

Change History

comment:1 Changed 13 years ago by jukka

  • Description modified (diff)

comment:2 Changed 13 years ago by tarmo

  • Priority changed from minor to blocker

I suggest you just put a try-except around the code and do some sane action if this fails. We can only support whatever PIL supports.

comment:3 Changed 13 years ago by jukka

Currently my upgrades end at TypeError?: 'can't pickle instancemethod objects'. I'm trying to find which object causes this.

I've noticed that archetype update already puts some try-except around all of its method calls and is silent about them. Only way to catch errors there is to have them appear inside our own try-excepts. Because of this silent failing we have lots of disfigured data in content-folder: order them by modification date and most of them are modified in our last upgrade, but some are modified earlier: archetype update has failed with them in those dates. These objects are size 1kb and trying to view them gives error.

comment:4 Changed 13 years ago by jukka

False alarm about those broken objects: they're redirector-objects, just their manage-page is broken. Something still gives IOError when running upgrade-scripts..

comment:5 Changed 13 years ago by jukka

  • Status changed from new to closed
  • Resolution set to fixed
  • Time remaining set to 0h

(In [1262]) Fixed #1068. Did nothing with interlaced PNG:s, updating archetypes seems to work now and final remaining IOError was just cleanAfterSchemaUpdate-call returning empty page. Upgrading should be safe now!

Note: See TracTickets for help on using tickets.