Fix compile warnings generated by gcc 4.4.1
[awesomized/libmemcached] / docs / memcached_set.pod
old mode 100755 (executable)
new mode 100644 (file)
index 5e7ac18..dadb9d2
@@ -1,6 +1,6 @@
 =head1 NAME
 
-memcached_set, memcached_add, memcached_replace
+memcached_set, memcached_add, memcached_replace - Store value on server
 
 =head1 LIBRARY
 
@@ -143,6 +143,24 @@ objects to particular servers.
 If you are looking for performance, memcached_set() with non-blocking IO is 
 the fastest way to store data on the server.
 
+All of the above functions are supported with the C<MEMCACHED_BEHAVIOR_USE_UDP>
+behavior enabled. But when using these operations with this behavior on, there 
+are limits to the size of the payload being sent to the server.  The reason for 
+these limits is that the Memcahed Server does not allow multi-datagram requests
+and the current server implementation sets a datagram size to 1400 bytes. Due 
+to protocol overhead, the actual limit of the user supplied data is less than 
+1400 bytes and depends on the protocol in use as well as the operation being 
+executed. When running with the binary protocol, C< MEMCACHED_BEHAVIOR_BINARY_PROTOCOL>, 
+the size of the key,value, flags and expiry combined may not exceed 1368 bytes. 
+When running with the ASCII protocol, the exact limit fluctuates depending on 
+which function is being executed and whether the function is a cas operation 
+or not. For non-cas ASCII set operations, there are at least 1335 bytes available 
+to split among the key, key_prefix, and value; for cas ASCII operations there are 
+at least 1318 bytes available to split among the key, key_prefix and value. If the
+total size of the command, including overhead, exceeds 1400 bytes, a C<MEMCACHED_WRITE_FAILURE>
+will be returned.
+
+
 =head1 RETURN
 
 All methods return a value of type C<memcached_return>.