Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-3959

JdbcBinaryStore's expiration locks buckets indefinitely

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 6.0.2.Final, 7.0.0.Alpha4
    • Fix Version/s: 7.0.0.Alpha5, 7.0.0.Final
    • Component/s: None
    • Labels:
      None

      Description

      The buckets are locked in eviction thread (in the main purge method), while unlocked in BucketPurger.call() which is executed in persistence thread. The unlock fails and the buckets stay locked indefinitely.

      Another error is that the Bucket class is not serializable.

      This is also a bug in BaseStoreTest as this uses WithinThreadExecutor as the executor for purging while usually this is done in different thread. Moreover, as the purge method is actually not obliged to purge anything, the test does not test the purging itself, but rather a check for expired entry when it is loaded (contains operation). The purging should be enforced by purge listener (calling the purge method until all entries are purged).

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                rvansa Radim Vansa
                Reporter:
                rvansa Radim Vansa
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: