- 22 1月, 2016 4 次提交
-
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
[Docs] Fixed single dash in service command examples.
-
由 Enrico Giordani 提交于
-
- 18 12月, 2015 2 次提交
- 17 12月, 2015 1 次提交
-
-
由 antirez 提交于
In issue #2948 a crash was reported in processCommand(). Later Oran Agra (@oranagra) traced the bug (in private chat) in the following sequence of events: 1. Some maxmemory is set. 2. The slave is the currently active client and is executing PING or REPLCONF or whatever a slave can send to its master. 3. freeMemoryIfNeeded() is called since maxmemory is set. 4. flushSlavesOutputBuffers() is called by freeMemoryIfNeeded(). 5. During slaves buffers flush, a write error could be encoutered in writeToClient() or sendReplyToClient() depending on the version of Redis. This will trigger freeClient() against the currently active client, so a segmentation fault will likely happen in processCommand() immediately after the call to freeMemoryIfNeeded(). There are different possible fixes: 1. Add flags to writeToClient() (recent versions code base) so that we can ignore the write errors, and use this flag in flushSlavesOutputBuffers(). However this is not simple to do in older versions of Redis. 2. Use freeClientAsync() during write errors. This works but changes the current behavior of releasing clients ASAP when possible. Normally we write to clients during the normal event loop processing, in the writable client, where there is no active client, so no care must be taken. 3. The fix of this commit: to detect that the current client is no longer valid. This fix is a bit "ad-hoc", but works across all the versions and has the advantage of not changing the remaining behavior. Only alters what happens during this race condition, hopefully.
-
- 16 12月, 2015 1 次提交
-
-
由 antirez 提交于
-
- 15 12月, 2015 1 次提交
-
-
由 Sun He 提交于
Fix issue #2855
-
- 12 12月, 2015 2 次提交
-
-
由 Enrico Giordani 提交于
-
由 Kevin Moore 提交于
Add notice to install VS2013 Update 5 to make sure it compiles properly.
-
- 11 12月, 2015 3 次提交
-
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
QForkStartup was called for both the parent and the child cases, but it didn't have any common code for the two cases. Moved the QForkStartup code to QForkParentInit and QForkChildRun accordingly and removed the QForkParentInit call from QForkStartup since it can be called directly by main() leaving QForkStartup to handle the child case only.
-
由 Enrico Giordani 提交于
-
- 07 12月, 2015 5 次提交
-
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
When the QFork architecture and the memory mapped file are not required (i.e. when the sentinel mode is on or the persistence is off) use dlmalloc instead of switching to the default runtime allocator. Using dlmalloc when persistence is off improves significantly the performance in some cases as described in issue #295. For the sentinel mode it shouldn't make any significant difference, the reason to use dlmalloc is for semplicity.
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
- 03 12月, 2015 14 次提交
-
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
[Setup] Updated the help text for setting the chocolatey apikey. [Setup] Updated the nuget description.
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
Replication (including diskless replication) requires persistence to be available. This fix prevents a crash and returns "ERR unknown command" to the slave.
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
Formatting, comments, removed unused counters.
-
由 Enrico Giordani 提交于
-
由 Hawkeyes Wind 提交于
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
Replaced QForkControl->heapBlockSize since it's a global constant. Removed the std:: namespace prefix.
-
由 Enrico Giordani 提交于
-
- 14 11月, 2015 2 次提交
-
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
- 13 11月, 2015 5 次提交
-
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-
由 Enrico Giordani 提交于
-