1. 08 Aug, 2013 6 commits
    • Arnaud Fontaine's avatar
      ZODB Components: Fix deadlock on import lock. · 7874888a
      Arnaud Fontaine authored
      Since a29456bc, only import lock is used instead of aq_method_lock, dynamic
      modules locks and import lock. However, it was creating another deadlock:
      
      when the import lock is held in one thread (for instance when trying to
      perform migration to Portal Type as Classes and ZODB Property Sheets), and an
      object is loaded from ZODB, a request is sent to ZEO, and this blocks until
      another thread (asyncore) gets the ZEO reply and sends it back to the first
      thread.
      
      However, if the asyncore thread receives an Exception, it will tries to import
      its module and thus create a deadlock as the import lock is still held by the
      first thread.
      7874888a
    • Arnaud Fontaine's avatar
      ZODB Components: No need to migrate Component Tool, only exist since Portal... · 35ad08a2
      Arnaud Fontaine authored
      ZODB Components: No need to migrate Component Tool, only exist since Portal Type as Classes and ZODB Property Sheets.
      35ad08a2
    • Arnaud Fontaine's avatar
      Make sure that objects created on bootstrap are committed before trying to load them from ZODB. · 09e025bd
      Arnaud Fontaine authored
      Because of recently added Component Tool, POSKeyError exception was raised
      when trying to load it from ZODB during migration of Portal Type classes and
      ZODB Property Sheets (PickleUpdater() in ERP5Site.migrateToPortalTypeClass),
      so make sure that there is a commit before loading anything from ZODB.
      09e025bd
    • Arnaud Fontaine's avatar
      Add save button to Ace Editor to save source code while staying on the same page. · 98107d18
      Arnaud Fontaine authored
      This has several benefits:
      
      * No need to exit maximize/fullscreen modes to save.
      * The cursor position in the editor does not change.
      
      This implementation is hackish because it is too Component-specific, but until
      RenderJS is being used, there is no probably no better way.
      98107d18
    • Tatuya Kamada's avatar
      BusinessTemplate: Fix a unindex/reindex catalog problem when upgraiding broken objects. · b241968f
      Tatuya Kamada authored
      How it happened while upgrading PathTemplateItem:
        1. Tries to remove the existing broken object and succeeds removing
        2. However it is a broken object so self.unindexCatalog() is
           never called and the old catalog is remaining
        3. Add new object of PathTemplateItem and tries to reindex the object
        4. Since old catalog is remaining, the catalog uid and object uid is
           different so catalogObjectList fails with FATAL error.
      
      The test is tests/BusinessTemplate.py#test_UpgradeBrokenObject.
      b241968f
    • Yusei Tahara's avatar
      Workaround fix for translated_simulation_state_title. Use... · 4cf8311f
      Yusei Tahara authored
      Workaround fix for translated_simulation_state_title. Use translated_simulation_state_title__ column when translated_simulation_state_title is sorted because translated_simulation_state_title is a scriptable key and it is not sortable.
      4cf8311f
  2. 12 Jul, 2013 34 commits