Uploaded image for project: 'ModeShape'
  1. ModeShape
  2. MODE-2738

Fix parallel uploading in Amazon S3

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 5.4.1.Final
    • Performance
    • None

      Binary value must be marked as "used" (unused=false) when storing in fileSystemCache (no matter what is value of "markAsUnused"). In following case it can be crucial:

      If couple of threads are trying to add different files in same S3BinaryStore at same time, they will store files in the same fileSystemCache, and when some thread finish, it will delete all files marked as unused from cache (that will be all files stored in cache from another threads), and exception:

      org.modeshape.jcr.value.binary.BinaryStoreException: Unable to find binary value with key "78ed7457b289ba42ff67256f33a88b5bf0ca3012" within binary store at "/tmp/modeshape-binary-store"
      at org.modeshape.jcr.value.binary.S3BinaryStore.storeValue(S3BinaryStore.java:251)
      at org.modeshape.jcr.value.binary.BinaryStoreValueFactory.create(BinaryStoreValueFactory.java:244)
      ... 164 more

      will be thrown in all other threads (with different SHA-1).

              Unassigned Unassigned
              blafond Barry LaFond
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: