Troubleshooting "storage provider returned false on the put operation"

Document created by james.cooper Employee on Apr 12, 2016Last modified by umayal.manivasagam@jivesoftware.com on Mar 6, 2018
Version 5Show Document
  • View in full screen mode

 

Description

 

Users can't upload binary documents/images/avatars/etc.  In the application logs, and sometimes also in the UI, you see the error "storage provider returned false on the put operation"

Common case

 

The most common causes of this error message; check these two before moving on.

  • The binstore directory is not owned by the jive user
  • The mount/disk is out of space

 

jiveID table is out of sync

 

Symptoms

 

Log messages

2011-01-28 15:49:15,017 [http-127.0.0.1-9001-7] [C90B6FAC03035891800D02C1CEF188A4.:jhilliar] INFO com.jivesoftware.eos.fs.FileStorageProvider - File exists '/disk1/techwebfilestorage_copy/jiveSBS/9/6/6/966254egami.bin'. 2011-01-28 15:49:15,017 [http-127.0.0.1-9001-7] [C90B6FAC03035891800D02C1CEF188A4.:jhilliar] ERROR com.jivesoftware.community.impl.DbImage - Unable to store image '2669': storage provider returned false on the put operation com.jivesoftware.base.database.dao.DAOException: Unable to store image '2669': storage provider returned false on the put operation    

followed by a longer exception. The message depends on object type (above is "images").

 

Confirming the problem

  1. If you have access to the storage location, verify that a file already exists at the location where it just failed to place one
  2. Use the jiveobjecttype table to determine the idtype of the affected object ('image' idtype is 111)
  3. Check the jiveid table for the current id for the affected type.
  4. Increment the next id for the affected type by a thousand or so
  5. Clear the application caches via the admin console
  6. Re-test to confirm you are able to upload the object type without problems

 

java.io.IOException: No locks available

Symptoms

 

 

Log messages

 

In addition to the "storage provider returned false on the put operation" message, you also see a message like this:

2012-08-19 21:40:33,183 [http-127.0.0.1-9001-9] [:admin] ERROR com.jivesoftware.eos.fs.FileStorageProvider - Error writing data to filesystem. java.io.IOException: No locks available   at sun.nio.ch.FileChannelImpl.lock0(Native Method)   at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:871)   at java.nio.channels.FileChannel.tryLock(FileChannel.java:962)   at com.jivesoftware.eos.fs.FileStorageProvider.put(FileStorageProvider.java:261)   at com.jivesoftware.eos.spi.storage.CachingStorageProvider.put(CachingStorageProvider.java:103)   at com.jivesoftware.community.impl.DbAttachment.insert(DbAttachment.java:477)   

 

Resolving the issue

 

This is generally caused by a problem with the NFS mount.  Check the following causes:

  • no-lock is enabled on the file system (locking should be enabled)
  • One of the NFS processes is not running, such as nfslock, and needs to be restarted.

Attachments

    Outcomes